Supla Button 2.0 i kolejne wersje...

Awatar użytkownika
Duch__
Posty: 1772
Rejestracja: śr sie 24, 2016 7:26 pm
Lokalizacja: Opole

Klikasz na:
IMG_20180527_085218.png
IMG_20180527_085218.png (10.97 KiB) Przejrzano 3213 razy
Pojawi Ci się kopiuj i klikasz i nastepnie wklejasz np. do Notatnika.
Obrazek
Awatar użytkownika
byniom
Posty: 633
Rejestracja: sob sty 07, 2017 1:17 pm

dzięki :)
Awatar użytkownika
wojtas567
Posty: 2209
Rejestracja: ndz kwie 03, 2016 7:16 pm
Lokalizacja: Olsztyn

Duch__ pisze: ndz maja 27, 2018 3:27 am firmware do Supli trzyma cały czas połączenie z serwerem, trwale uniemożliwiając wykonanie innych połączeń. Jest to kwestia raczej nie do obejścia.
Moja wiedza w tej materii nie jest zbyt duża ale mi udało się dołożyć kawałek kodu który potrafi wysyłać regularnie parametry z DHT do domoticza :)
Ale wczoraj próbowałem połączyć to i faktycznie bezskutecznie, nie uruchamia się pętla obsługi przycisku przynajmniej tak widać na terminalu.

Tak naprawdę to i tak ten przekaźnik musiałby być wysterowany sceną bo w przeciwnym razie to każde kliknięcie powodowałoby przełączanie go.
Pozdrawiam
Wojtek
cdxa
Posty: 65
Rejestracja: pn maja 14, 2018 10:08 pm
Lokalizacja: Poznań

wojtas567 pisze: ndz maja 27, 2018 7:59 am Ale wczoraj próbowałem połączyć to i faktycznie bezskutecznie, nie uruchamia się pętla obsługi przycisku przynajmniej tak widać na terminalu.
Pętla się być może sie uruchamia, ale np. czasy które są w tym programie w rzeczywistości pewnie nie odpowiadają tym zadeklowanym 1ms, bo to tylko licznik, który liczy przejścia, a nie odnosi się do faktycznego czasu. Więc jeżeli dalej w pętli pojawiają się kolejne opóźnienia (czyli elementy odpowiadające za obsługę DHT i domoticza) to czasy będą "rozciągnięte" i w rzeczywistości będzie to więcej niż 1ms.

Wstaw sobie w od linii 145 do 153 takie coś, wtedy będziesz miał podany faktyczny czas trwania jednej pętli w ms oraz stan licznika klawisza, to co dodałem jest w kolorze czerwonym. Być może namierzysz problem.

int ost_czas;
void Obsluga_przycisku()
{
button = digitalRead(0);
if (button == 0 ) {
++button_time;
Serial.print("czas w ms: ");Serial.print(millis() - ost_czas);Serial.print(" licznik button_time: ");Serial.println(button_time);
ost_czas = millis();

}
Awatar użytkownika
byniom
Posty: 633
Rejestracja: sob sty 07, 2017 1:17 pm

Nie działa u mnie to całkiem. Zaprogramowałem podałem dane i kody , niby moduł działa bo po naciśnięciu mrugnie że wykonuje zadanie ale nie chce wykonać sceny. Może problemem jest to że mam własny serwer na malinie ?
cdxa
Posty: 65
Rejestracja: pn maja 14, 2018 10:08 pm
Lokalizacja: Poznań

A co pokazuje na konsoli?
Awatar użytkownika
Duch__
Posty: 1772
Rejestracja: śr sie 24, 2016 7:26 pm
Lokalizacja: Opole

byniom pisze: ndz maja 27, 2018 9:27 pm Nie działa u mnie to całkiem. Zaprogramowałem podałem dane i kody , niby moduł działa bo po naciśnięciu mrugnie że wykonuje zadanie ale nie chce wykonać sceny. Może problemem jest to że mam własny serwer na malinie ?
Jak mrugnie to znaczy że jest jakiś błąd.
Obrazek
Awatar użytkownika
byniom
Posty: 633
Rejestracja: sob sty 07, 2017 1:17 pm

Pisałem że mrugnie jak wciskam przyciskiem , tak jak by sygnalizował zadziałanie ale nie działa . W konsoli podaje np. "naciśnięto przycisk 2 razy " i potem te dane które wpisywałem czyli token i inne . Jeszcze takie pytanie bo się nie dopatrzyłem nigdzie , token to mam wpisać razem z cudzysłowem ? czy bez niego ?
Awatar użytkownika
wojtas567
Posty: 2209
Rejestracja: ndz kwie 03, 2016 7:16 pm
Lokalizacja: Olsztyn

Ja wpisuję bez.
Pozdrawiam
Wojtek
Awatar użytkownika
Duch__
Posty: 1772
Rejestracja: śr sie 24, 2016 7:26 pm
Lokalizacja: Opole

Bez cudzysłowów.
  • obsługę błędów za pomocą diody LED - jedno mignięcie po wykonaniu sceny = błąd np. brak odpowiedzi ze strony serwera -> patrz terminal, dwa mignięcia = przerwanie sceny przyciskiem
Jakoś sobie nie przypominam bym dawał mrugnięcie przy wykonaniu prawidłowym sceny.

Ktory firmware wgrałeś?
Obrazek
ODPOWIEDZ

Wróć do „Projekty użytkowników”