[tutorial] RPiZeroW + odczyt z LYWSD03MMC przez BLE + Supla-Device

User avatar
lesny8
Posts: 2841
Joined: Mon Dec 11, 2017 9:43 pm

Post

Gang wrote: Mon Oct 30, 2023 6:44 pm Panowie, żeby rzadziej wysyłal czujnik dane to trzeba zmienic advertising interval z 2500 np na 10000 tak?


I teraz jak zwiększyć moc nadawania? Rf tx power? Cz to trochę wyżej LE LONG RANGE?
Tak, częstotliwość rozgłaszania zmieniasz w Advertising interwal.
Moc nadawania zwiekszasz zmieniając RF TX Power.
Czekam na kolejne Supla Offline Party 👍
User avatar
wojtas567
Posts: 2216
Joined: Sun Apr 03, 2016 7:16 pm
Location: Olsztyn

Post

Nie wiem czy ktoś już to podsyłał ale taka ciekawostka https://github.com/devbis/z03mmc?fbclid ... mmc-sensor :)
Pozdrawiam
Wojtek
User avatar
Lector
Posts: 1428
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań

Post

Ale z czym połączy się po ZigBee?
Tuya to obsłuży czy system Xiaomi Home?

EDIT
dodało mi do Tuya :)
Ale już nie widać po bluetooth :(
Nie pokazuj stanu baterii.
Screenshot_20231031-081258.png
You do not have the required permissions to view the files attached to this post.
Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
User avatar
shimano73
Posts: 1995
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

lesny8 wrote: Mon Oct 30, 2023 11:19 am Sprawdź czy masz jakieś błędy

Code: Select all

supervisorctl tail -1000 stderr 
Po wykonaniu komendy

Code: Select all

 supervisorctl tail -1000 mi-listener
pojawia sie komunikat

Code: Select all

unix:///var/run/supervisor.sock no such file
taki sam komunikat pojawia sie przy komendzie

Code: Select all

supervisorctl status
dopiero gdy wykonam komendę

Code: Select all

 supervisorctl restart
 
wynikiem jest

Code: Select all

dariusz@raspberrypi:/etc/supervisor/conf.d $ supervisorctl status
mi-listener                      RUNNING   pid 3938, uptime 0:00:10

oraz gdy wykonam

Code: Select all

dariusz@raspberrypi:/etc/supervisor/conf.d $ supervisorctl tail -1000 mi-listener
age: 2.566 V
RSSI: -65 dBm
Battery: 35 %

BLE packet - ATC1441: A4:C1:38:BA:DA:44 00 1110161a18a4c138bada4400f82b400aee76 -77
Temperature:  24.8
Humidity:  43
Battery voltage: 2.798 V
RSSI: -77 dBm
Battery: 64 %

/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:6F:70:41 24.4 46 2.761 60 1698737170
/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:CD:0D:24 24.6 60 2.566 35 1698737171
/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:BA:DA:44 24.8 43 2.798 64 1698737171
BLE packet - ATC1441: A4:C1:38:3F:9C:2C 00 1110161a18a4c1383f9c2c00f22d320a70a2 -90
Temperature:  24.2
Humidity:  45
Battery voltage: 2.672 V
RSSI: -90 dBm
Battery: 50 %

/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:3F:9C:2C 24.2 45 2.672 50 1698737180

Na moje oko wygląda jak po restarcie zasilania lub systemu , nie był uruchamiany skrypt mi-listener przez supervisor, uruchamia się dopiero po jego restarcie
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
User avatar
Gang
Posts: 625
Joined: Fri Nov 09, 2018 12:44 pm

Post

Lesny8 jeszcze raz wielkie dzięki!
rpiW zamontowane w kotłowni na szczycie domu na parterze, termometry rozsiane po całym domu i nawet piętro łapie, został 1 czy 2 których nie ma, ale zwiększę tam moc i pewnie będzie git.
Dziękuję!
Zamel: MEW-01, ROW-02, THW-01, RNW-01, SLW-02, ROW-07, mROW-02, PNW-01. DIY: Supla Device RPI + 10 xiaomi mija2, Sonoff: basic + 7 DS18B20, basic x2, touch, mini x3, - Nodemcu x2, - ElectroDragon ESP8266 - Gosund SP111 x3
User avatar
lesny8
Posts: 2841
Joined: Mon Dec 11, 2017 9:43 pm

Post

👍
Nie ma za co ;)
Czekam na kolejne Supla Offline Party 👍
User avatar
lesny8
Posts: 2841
Joined: Mon Dec 11, 2017 9:43 pm

Post

shimano73 wrote: Tue Oct 31, 2023 7:56 am
lesny8 wrote: Mon Oct 30, 2023 11:19 am Sprawdź czy masz jakieś błędy
Po wykonaniu komendy

Code: Select all

 supervisorctl tail -1000 mi-listener
pojawia sie komunikat

Code: Select all

unix:///var/run/supervisor.sock no such file
taki sam komunikat pojawia sie przy komendzie

Code: Select all

supervisorctl status
dopiero gdy wykonam komendę

Code: Select all

 supervisorctl restart
 
wynikiem jest

Code: Select all

dariusz@raspberrypi:/etc/supervisor/conf.d $ supervisorctl status
mi-listener                      RUNNING   pid 3938, uptime 0:00:10

oraz gdy wykonam

Code: Select all

dariusz@raspberrypi:/etc/supervisor/conf.d $ supervisorctl tail -1000 mi-listener
age: 2.566 V
RSSI: -65 dBm
Battery: 35 %

BLE packet - ATC1441: A4:C1:38:BA:DA:44 00 1110161a18a4c138bada4400f82b400aee76 -77
Temperature:  24.8
Humidity:  43
Battery voltage: 2.798 V
RSSI: -77 dBm
Battery: 64 %

/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:6F:70:41 24.4 46 2.761 60 1698737170
/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:CD:0D:24 24.6 60 2.566 35 1698737171
/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:BA:DA:44 24.8 43 2.798 64 1698737171
BLE packet - ATC1441: A4:C1:38:3F:9C:2C 00 1110161a18a4c1383f9c2c00f22d320a70a2 -90
Temperature:  24.2
Humidity:  45
Battery voltage: 2.672 V
RSSI: -90 dBm
Battery: 50 %

/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:3F:9C:2C 24.2 45 2.672 50 1698737180

Na moje oko wygląda jak po restarcie zasilania lub systemu , nie był uruchamiany skrypt mi-listener przez supervisor, uruchamia się dopiero po jego restarcie
Pisalem z głowy i zapomniałem podać nazwy procesu, powinno być

Code: Select all

supervisorctl tail -1000 mi-listener stderr
bo jak nie dodasz, że chcesz logi ze standardowego strumienia błędów, to lecą ze standardowego wyjścia.

To tak wygląda jakby po reboocie maliny supervisor nie startował, dlatego nie uruchamia procesu mi-listener.
Restartując supervisora, tak naprawdę go startujesz 🤔
Czekam na kolejne Supla Offline Party 👍
User avatar
shimano73
Posts: 1995
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

lesny8 wrote: Tue Oct 31, 2023 8:56 pm
shimano73 wrote: Tue Oct 31, 2023 7:56 am
lesny8 wrote: Mon Oct 30, 2023 11:19 am Sprawdź czy masz jakieś błędy
Po wykonaniu komendy

Code: Select all

 supervisorctl tail -1000 mi-listener
pojawia sie komunikat

Code: Select all

unix:///var/run/supervisor.sock no such file
taki sam komunikat pojawia sie przy komendzie

Code: Select all

supervisorctl status
Mi to wygląda tak, jakby problem był w uruchamianiem zbyt wolnym bluetooth'a . W chwili gdy supervisor uruchamia skrypt pythona to wywala bład. Gdy ja restartuję supervisor , to bluetooth jest już gotowy i działa.
Czy jest możliwe wstawienie gdzieś opóźnienia w uruchomieniu tego skryptu ? A może w samym skrypcie jakiś "delay = 2s" ?


dopiero gdy wykonam komendę

Code: Select all

 supervisorctl restart
 
wynikiem jest

Code: Select all

dariusz@raspberrypi:/etc/supervisor/conf.d $ supervisorctl status
mi-listener                      RUNNING   pid 3938, uptime 0:00:10

oraz gdy wykonam

Code: Select all

dariusz@raspberrypi:/etc/supervisor/conf.d $ supervisorctl tail -1000 mi-listener
age: 2.566 V
RSSI: -65 dBm
Battery: 35 %

BLE packet - ATC1441: A4:C1:38:BA:DA:44 00 1110161a18a4c138bada4400f82b400aee76 -77
Temperature:  24.8
Humidity:  43
Battery voltage: 2.798 V
RSSI: -77 dBm
Battery: 64 %

/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:6F:70:41 24.4 46 2.761 60 1698737170
/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:CD:0D:24 24.6 60 2.566 35 1698737171
/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:BA:DA:44 24.8 43 2.798 64 1698737171
BLE packet - ATC1441: A4:C1:38:3F:9C:2C 00 1110161a18a4c1383f9c2c00f22d320a70a2 -90
Temperature:  24.2
Humidity:  45
Battery voltage: 2.672 V
RSSI: -90 dBm
Battery: 50 %

/home/dariusz/MiTemperature2/save-to-file.sh sensorname,temperature,humidity,voltage,batteryLevel,timestamp A4:C1:38:3F:9C:2C 24.2 45 2.672 50 1698737180

Na moje oko wygląda jak po restarcie zasilania lub systemu , nie był uruchamiany skrypt mi-listener przez supervisor, uruchamia się dopiero po jego restarcie
Pisalem z głowy i zapomniałem podać nazwy procesu, powinno być

Code: Select all

supervisorctl tail -1000 mi-listener stderr
bo jak nie dodasz, że chcesz logi ze standardowego strumienia błędów, to lecą ze standardowego wyjścia.

To tak wygląda jakby po reboocie maliny supervisor nie startował, dlatego nie uruchamia procesu mi-listener.
Restartując supervisora, tak naprawdę go startujesz 🤔
Mi to wygląda na nie gotowy bluetooth, a po moim restarcie już jest gotowy .
Może da sie zrobić jakiś delay w uruchomieniu ?

Code: Select all

dariusz@attic:~/MiTemperature2 $ supervisorctl tail -1000 mi-listener stderr
Traceback (most recent call last):
  File "/home/dariusz/MiTemperature2/./LYWSD03MMC.py", line 601, in <module>
    toggle_device(dev_id, True)
  File "/home/dariusz/MiTemperature2/bluetooth_utils.py", line 122, in toggle_device
    fcntl.ioctl(hci_sock.fileno(),
OSError: [Errno 19] No such device


W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)
mmiikk
Posts: 451
Joined: Mon Aug 06, 2018 1:27 pm

Post

Najwcześniejsi użytkownicy nowego sposobu odczytywania czujników (pasywne BLE) maja sprzęt działający tą metoda 10 miesięcy (tyle ma ten wątek) , powiecie mi jak często z tym nowym sposobem wymienialiście baterie w termometrach?
Ja jadę ciągle na SVD i BT z odczytem co 4 do 6 minut i wymieniam baterie w praktyce średnio co 6-9 miesięcy w zależności od konkretnego czujnika, jest jakiś zysk pod kątem wymiany baterii?
User avatar
shimano73
Posts: 1995
Joined: Sun Feb 28, 2016 12:27 pm
Location: Orzesze

Post

No i w końcu się udało, dodałem opóźnienie tu :

Code: Select all

#!/bin/bash
sleep 10
./LYWSD03MMC.py -p --atc --battery --round --debounce --callback save-to-file.sh
i teraz po restarcie malinki wszystko wstaje 8-)
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie

Wezmę udział w Supla Offline Party 2024 :)

Return to “FAQ / Jak to zrobić”