Decydując się na oprogramowanie do moich sonoff'ów wybrałem tasmotę ze względu na to, że istnieje możliwość wykorzystania przycisku na 2 sposoby. Krótkie przyciśnięcie - uruchamia funkcję 1/długie przyciśnięcie - uruchamia funkcję 2 (np uruchamia innego sonoff'a za pomocą zadanej sceny). Jeśli dobrze zrozumiałem, to w jakiś sposób trzeba to teraz skonfigurować. Teraz pytanie w jaki sposób to zrobić najlepiej/najprościej? Czy takie funkcje konfiguruje się bezpośrednio w sonoff'ie czy to scena ustawiana za pomocą serwera (np: Domoticz)?
Raczej scenami i wszystkimi zaawansowanymi funkcjami ma się zajmować właśnie oprogramowanie sterujące całą automatyką czyli np. Domoticz, openHAB itd.
Sonoff ma być tylko urządzeniem końcowym wykonawczym i sam w sobie ma najmniej robić. I dlatego też @adrian autor AFE Firmware nie daje do sonoff-a takich zaawansowanych rzeczy. Później jak potrzeba coś przekonfigurować to logujesz się do jednego systemu automatyki i wszystko jest w jednym miejscu powiązane. A tak to do każdego sonoffa trzeba się oddzielnie logować i konfigurować a ja mam ich dopiero tylko 9 sztuk i jak zmieniałem serwer i IP to jest co robić 🙂
Wiadome, coś za coś, ale mimo wszystko chciałbym skorzystać z takiej funkcji. U mnie nie ma tych urządzeń bardzo dużo, ale chciałbym na ścianie mieć jednego podwójnego T1, który obsługuje 2 zestawy świateł na suficie, a przy długim przytrzymaniu przycisku chciałbym, żeby uruchamiała mi się taśma led, która będzie obsługiwana przez sonoff basic albo kontroler H801.
Jeśli zarządza tym już serwer to skąd T1 wie, że po długim naciśnięciu nie ma zaświecić światła, które jest bezpośrednio pod T1 tylko wywołać scenę?
Znaczy żeby można było w ogóle to obsłużyć w jakimkolwiek systemie to oczywiście sam włącznik musi wysłać taką informację. Ja używam softu AFE Firmware i on takiej funkcji nie ma. Tasmoty nie znam ale jeśli taką funkcję ma to najlepiej było by w logu np. domoticza zobaczyć czym się różni komunikat wysyłany z tasmoty przy krótkim i przy długim wciśnięciu. Albo jeśli wykorzystujesz komunikację mqtt to w samym mqtt można to zobaczyć za pomocą polecenia mosquitto_sub -v -h localhost -p 1883 -t '#'
tasmota przy jednym wcisnieciu wysyła MQTT message:
- cmnd/<topic>/POWER ON|OFF
przy długim
- cmnd/<topic>/POWER HOLD
wszystko do przeczytania w dokumentacji
@adrian dzięki za pomoc. Tylko teraz u mnie w sumie nawet jak ręcznie w konsoli sonoff'a wpisuję komendę POWER HOLD to się nic nie dzieje. Przy przytrzymaniu przycisku na T1 po ok 5 sekundach słychać "beep", ale komenda i tak jest wysyłana POWER ON/OFF.
Hey, nie znam Tasmota, ale co obserwowałbym to wysyłane przez urządzenie wiadomości MQTT to Brokera MQTT
Masz taki broker w ogóle zainstalowany (np. Mosquitto) ?
Do brokera powinny być wysyłane wiadomości z informacjami o zdarzeniach i te możesz przechwytywać i coś z nimi robić.
Tak, zainstalowałem Mosquitto. Z tego co czytałem w tej dokumentacji, do której link mi podałeś, to piszą tam, że powinno się zmienić czas reakcji przycisku, który standardowo jest ustawiony na 4 sekundy. Chyba że coś źle zrozumiałem? Dodatkowo z tej tabeli wychodzą do ustawienia jakieś SetOption1 i 11. Gdzie to ustawić?
Wszystko ustawiasz pod konsolą urządzenia T0/T1.
SetOption32 50
ustawi ci czas 5s zwłoki
Możesz wkleić output konsoli po długim naciśnięciu przycisku? Zobaczymy jaki komunikat właściwie wysyła do MQTT albo najlepiej złapać w logach MQTT. Możesz sie zapisać na brokera do wszystkich tematów komendą:
mosquitto_sub -v -h IP_brokera -p 1883 -t '#'
a co masz po stronie "inteligentnej"? Chętnie pomogę jeśli to OpenHAB.
Witam to mój pierwszy post na tym forum, ale do rzeczy. Długo szukałem informacji, albo raczej instrukcji łopatologicznej jak ustawić i wykorzystać funkcję długiego przytrzymania przycisku w tasmocie w HA, i niestety nie znalazłem nic w sieci więc zabrałem się sam za rozgryzienie tego tematu i oto rezultaty:
Użyłem włącznika q-touch dwu przyciskowego.
Pomijam konfigurację samego przycisku w Tasmocie, natomiast trzeba było wprowadzić pewne ustawienia:
W konsoli w Tasmocie:
1. Setoption73 0
2. setoption13 0 - ustawia mulipress
( niestety włącznik z taką funkcją wolno reaguje ale multipress musi być włączone do podwójnej funkcji przycisku, coś za coś )
3. wklei to do konsoli -
Backlog ButtonTopic 0; SetOption1 1; SetOption11 0; SetOption32 10
( SetOption32 10 10 - to czas długiego naciśnięcia mi pasuje 10 - 1 sek, ale można ustawić dłuższe )
4. następnie w konsoli trzeba dodać regułę:
Rule1 ON button2#state=3 DO publish stat/tasmota_D8DD73/POWER2 1 ENDON
( gdzie "stat/tasmota_D8DD73/POWER2" = 1 będzie wysyłanym tematem i stanem "= 1" w mqtt, ale najpierw przed utworzeniem reguły trzeba zobaczyć w konsoli co wysyła twoja tasmota po zwykłym naciśnięciu i zmodyfikować, w tym miejscu wklejając to co wysłała tasmota ,i zastępujemy "stat/tasmota_D8DD73/POWER2" ( bez = off lub on ) tym co u ciebie wysłała tasmota ale tylko do znaku =. Dodaliśmy właśnie wyślij stan = 1 po długim przyciśnięciu)
5. i oczywiście
rule1 1
( uruchamiamy regułę )
Następnie w HA utworzyłem w confirguration.yaml czujnik binarny - reagujący na długie przyciśnięcie
u mnie to wyglądało tak:
binary_sensor:
# Hold button - wyl swiatel - to tyko moje komentarze żeby nie pogubić się w konfiguracji
- platform: mqtt
name: "sw_all_off"
state_topic: 'stat/tasmota_D8DD73/POWER2' # tu wstawiam oczywiście wasz temat wiadomości mqtt
payload_on: '1' # tu wpisujemy wartość jaką ustawiliśmy w regule
payload_off: '1off' # ponieważ wykorzystujemy tylko jeden stan, to trzeba jakoś wyzerować stan czujunika
off_delay: 1 # tu ustawiamy czas kasowania się czujnika
( oczywiście nazwa czujnika do wyboru - u mnie odpowiada on za wyłączenia oświetlenia w całym domu - włącznik jest przy drzwiach więc to dość wygodne rozwiązanie - wychodząc z domu, jednym wyłącznikiem mogę wyłączyć/ wyłączyć światło w wejściu lub wyłączyć całe oświetlenie w domu. )
I teraz możemy utworzyć regułę która wywoła żądaną akcję po długim przytrzymaniu przycisku z wykorzystaniem właśnie utworzonego czujnika binarnego "sw_all_off", u mnie jak wspomniałem wcześniej, jest wyłączenia oświetlenia w całym domu.
Chętnie bym usłyszał propozycję do czego jeszcze można wykorzystać funkcję długiego przyciśnięcia.
Pozdrawiam
@nites007 , możesz mi powiedzieć dlaczego w consoli dostaje to :
22:42:17 MQT: stat/tasmota_865BB6/BUTTON1T = {"TRIG":"HOLD"}
Lub ktoś inny z forum może mi odpowiedzieć na to pytanie.
Prawidłowo dodałeś reguły ? bez dodania reguł nie będzie działać. pamiętaj aby podmienić nazwę twojego włącznika ( a nie mojego )
Co ci wysyła konsola po zwykłym włączeniu ?
Pozdrawiam
PS.
U mnie po długim naciśnięciu pojawia dokładnie coś takiego:
12:32:21 MQT: stat/tasmota_D8DD73/POWER2 = 1
12:32:21 MQT: stat/tasmota_D8DD73/BUTTON2T = {"TRIG":"HOLD"}
@nites007 , reguły dodane poprawnie, poniżej masz to co wypluwa consola.
22:22:59 MQT: stat/tasmota_C961B0/RESULT = {"POWER":"OFF"} 22:22:59 MQT: stat/tasmota_C961B0/POWER = OFF 22:23:30 MQT: stat/tasmota_C961B0/BUTTON1T = {"TRIG":"HOLD"}
A co to za włącznik ? u mnie to jest touch z dwoma przyciskami. może u ciebie inaczej trzeba ponumerować przycisk w regułach.
Nie wiem czy to już zostało powiedziane, ale funkcja przytrzymania HOLD lub włączenie podwójnego kliknięcia w przycisk nie uruchamiają przekaźnika w przełącznika. To tylko dodaje dodatkowy event MQTT który możesz sobie podczepić pod jakąś akcję w Domoticz/OH/HA .
czyli w sonoff touch 1gang mozesz podpiac 3 akcje:
- fizyczne on/off + komende MQTT
- HOLD - przytrzymanie generujace MQTT
- podwojne tapnięcie - generujące jeszcze inne MQTT
@iot wiem że podwójne kliknięcie nie uruchamia przekaźnika. Może w tasmocie jest wszystko ok, tylko problem jest w HA. Mam dodana cała konfigurację w pliku configuration.yaml dokładnie taką samą jak podał @nites007, z zmieniana nazwa tasmoty.
O to jak u mnie to wygląda. Może ktoś czegoś się dopatrzy
Jak widac na foto encja binary_sensor.off_all_light jest cały czas niedostępna
Witam, podepnę się pod temat bo dzisiaj poczułem potrzebę zastosowania długiego przyciśnięcia przycisku (przytrzymania) - posiadam Sonoff Touch TX3C 3Ch, jeden kanał steruje mi Shelly Dimmer 2, niestety na oryginalnym sofcie nie ma czegoś takiego jak długie przyciśnięcie, mogę ustawić tylko impuls. W Shelly włączenie/wyłączenie jest realizowane poprzez podanie sygnału (w moim przypadku L 230V) na wejście SW1 natomiast ściemnianie polega na przytrzymaniu przycisku. Mogę włączać i wyłączać albo jak normalnym wyłącznikiem bistabilnym albo tak jak dzwonkowym w zależności jak skonfiguruję oba urządzenia. Nie wiem jak to sensownie ogarnąć żeby dało się również ściemniać/rozjaśniać. Nie bardzo chce mieć tylko opcję ustawienia jasności przez aplikację Shelly bądź Google Assistanta. Może któryś soft oferuję taką opcję. Niby mógłbym bawić się z MQTT ale chciałem to zrobić prosto. Z góry dzięki za odpowiedzi. Pozdrawiam. Sławek.
Nie podoba mi się w konfiguracji czujnika binarnego temat mqtt sprawdź w konsoli tasmoty włącznika jaki temat jest wysyłany po długim naciśnięciu. i oczywiście wyprowadź sobie gdzieś widoczny czujnik binarny na lovelance tak żebyś widział czy się status zmienia
Pozdrawiam