Za każdym razem, gdy Internet znika lub zapisać zmiany w supla cloud, przestaje wysyłać mi dane. Z DHT11 i analogiem wszystko idzie dobrze.
Wartość spada do zera. co może się zdarzyć? czy jestem jedyny?
DS18B20 arduino esp8266
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
U mnie na Wemos D1 odczyt jest cały czas i nie znika przy tych operacjach.
Rozumiem, że u Ciebie pojawia się wartość "0" na kanale czujnika DS18B20. Ta wartość jest dość nietypowa, bo z tego co pamiętam, DS przy błędzie zwraca -127, a kod przykładów pod Arduino ma ustawione -275 na inne błędne sytuacje.
Wkleisz kod swojej apliakacji? Co aplikacja wysyła na Serial?
Rozumiem, że u Ciebie pojawia się wartość "0" na kanale czujnika DS18B20. Ta wartość jest dość nietypowa, bo z tego co pamiętam, DS przy błędzie zwraca -127, a kod przykładów pod Arduino ma ustawione -275 na inne błędne sytuacje.
Wkleisz kod swojej apliakacji? Co aplikacja wysyła na Serial?
Najlepsze suple dla Twojego domu 
-
Patryk
- Posts: 2944
- Joined: Mon Jan 07, 2019 7:51 pm
- Location: Rybnik
Nie wiem, czy o to chodziło @alvaroboven,klew wrote: Thu Nov 28, 2019 9:41 pm U mnie na Wemos D1 odczyt jest cały czas i nie znika przy tych operacjach.
Rozumiem, że u Ciebie pojawia się wartość "0" na kanale czujnika DS18B20. Ta wartość jest dość nietypowa, bo z tego co pamiętam, DS przy błędzie zwraca -127, a kod przykładów pod Arduino ma ustawione -275 na inne błędne sytuacje.
Wkleisz kod swojej apliakacji? Co aplikacja wysyła na Serial?
ale taki problem występuje na "oryginalnej" bibliotece SuplaDevice 1.6.1, jeżeli jest podpięte więcej niż 2 ds-y do jednego esp.
Problem rozwiązuje:
viewtopic.php?p=33218#p33218
Natomiast w softach pisanych pod linuxem (IOT SDK), dodanie w piku build.sh ostatniej linijki ( z cyfrą 4 lub 8, w zależności od ilości ds-ów):
Code: Select all
FLASH_SIZE="2048"
FOTA=1
EXTRA_CCFLAGS="-DSRPC_QUEUE_SIZE=8 -DSRPC_QUEUE_MIN_ALLOC_COUNT=8
Za co z góry przepraszam.
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
Na boku dostałem informację, że alvaroboven korzysta z aktualnie rozwijanej wersji bibliteki na Arduino. Tam ten problem wielu urządzeń już został usunięty. Choć możliwe, że kompilacje robił na jakiejś starszej wersji, więc jest szansa, że to ten problem.Patryk wrote: Thu Nov 28, 2019 10:42 pm Nie wiem, czy o to chodziło @alvaroboven,
ale taki problem występuje na "oryginalnej" bibliotece SuplaDevice 1.6.1, jeżeli jest podpięte więcej niż 2 ds-y do jednego esp.
Problem rozwiązuje:
viewtopic.php?p=33218#p33218
Najlepsze suple dla Twojego domu 
-
alvaroboven
- Posts: 12
- Joined: Wed Nov 06, 2019 8:33 am
Jaka jest najnowsza i najbardziej stabilna wersja? Ponieważ ostatni spowodował problemy z kompilacjąklew wrote: Thu Nov 28, 2019 10:47 pm
Na boku dostałem informację, że alvaroboven korzysta z aktualnie rozwijanej wersji bibliteki na Arduino. Tam ten problem wielu urządzeń już został usunięty. Choć możliwe, że kompilacje robił na jakiejś starszej wersji, więc jest szansa, że to ten problem.
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
Ta wersja na https://github.com/SUPLA/arduino/tree/develop jest "stabilna". Jest to wersja rozwojowa, więc może tam się coś wydarzyć, ale u siebie cały czas mam coś na niej włączone i chodzi bez problemów.alvaroboven wrote: Thu Nov 28, 2019 10:58 pmJaka jest najnowsza i najbardziej stabilna wersja? Ponieważ ostatni spowodował problemy z kompilacjąklew wrote: Thu Nov 28, 2019 10:47 pm
Na boku dostałem informację, że alvaroboven korzysta z aktualnie rozwijanej wersji bibliteki na Arduino. Tam ten problem wielu urządzeń już został usunięty. Choć możliwe, że kompilacje robił na jakiejś starszej wersji, więc jest szansa, że to ten problem.
Natomiast projekty w Arduino wymagają aktualizacji i zmian pod nową bibliotekę (dlatego masz u siebie błędy kompilacji).
Na chwilę obencą należy wywalić metody/callbacki związane z obsługą wifi z pliku ino, dodać:
Code: Select all
#include <supla/network/esp_wifi.h>
Supla::ESPWifi wifi("your_wifi_ssid", "your_wifi_password");Z tym, że w tej bibliotece niewiele było zmieniane pod kątem obsługi sensorów/termometrów. Jedyna poprawka, która mogłaby tutaj mieć wpływ, to ta, która poprawia zachowanie przy kilku czujnikach.
Wydaje mi się, że poniższa wersja zawiera tą poprawkę oraz powinna jeszcze działać na starych programach do arduino bez zmian w kodzie:
https://github.com/SUPLA/arduino/tree/a ... uplaDevice
Najlepsze suple dla Twojego domu 
-
alvaroboven
- Posts: 12
- Joined: Wed Nov 06, 2019 8:33 am
Nie mogę zainstalować żadnej zalecanej biblioteki. Gdy robię to ręcznie, kompilacja kończy się niepowodzeniem.klew wrote: Thu Nov 28, 2019 11:16 pmTa wersja na https://github.com/SUPLA/arduino/tree/develop jest "stabilna". Jest to wersja rozwojowa, więc może tam się coś wydarzyć, ale u siebie cały czas mam coś na niej włączone i chodzi bez problemów.alvaroboven wrote: Thu Nov 28, 2019 10:58 pmJaka jest najnowsza i najbardziej stabilna wersja? Ponieważ ostatni spowodował problemy z kompilacjąklew wrote: Thu Nov 28, 2019 10:47 pm
Na boku dostałem informację, że alvaroboven korzysta z aktualnie rozwijanej wersji bibliteki na Arduino. Tam ten problem wielu urządzeń już został usunięty. Choć możliwe, że kompilacje robił na jakiejś starszej wersji, więc jest szansa, że to ten problem.
Natomiast projekty w Arduino wymagają aktualizacji i zmian pod nową bibliotekę (dlatego masz u siebie błędy kompilacji).
Na chwilę obencą należy wywalić metody/callbacki związane z obsługą wifi z pliku ino, dodać:Oraz wywalić parametr "mac" przekazywany do SuplaDevice.begin(...)Code: Select all
#include <supla/network/esp_wifi.h> Supla::ESPWifi wifi("your_wifi_ssid", "your_wifi_password");
Z tym, że w tej bibliotece niewiele było zmieniane pod kątem obsługi sensorów/termometrów. Jedyna poprawka, która mogłaby tutaj mieć wpływ, to ta, która poprawia zachowanie przy kilku czujnikach.
Wydaje mi się, że poniższa wersja zawiera tą poprawkę oraz powinna jeszcze działać na starych programach do arduino bez zmian w kodzie:
https://github.com/SUPLA/arduino/tree/a ... uplaDevice
Nie mam czujników podłączonych bezpośrednio do ESP8266, ale do mega arduino. Poprzez protokół I2C wysyłam je do esp8266, tam otrzymuję informacje poprawnie i dopóki nie zmienię czegoś w Supla Cloud lub utracę sygnał Wi-Fi, działa idealnie. Również gdy jest włączony przez długi czas, czasami wartość DS18B20 spada do zera, podczas gdy DHT22 idzie idealnie.
-
alvaroboven
- Posts: 12
- Joined: Wed Nov 06, 2019 8:33 am
Tak, idealnie. Błąd polega na „po prostu” wysłaniu go.
-
alvaroboven
- Posts: 12
- Joined: Wed Nov 06, 2019 8:33 am
Odkryłem, że jeśli przypiszę stałą do zmiennych globalnych, problem DS18B20 zostanie rozwiązany. Ale jeśli wstawię tę wartość do void loop (); problem pojawi się ponownie, tymczasem otrzymuję obie wartości dht w pętli void ();
