Dzisiaj zaprezentuję dość nietypowy czujnik otwarcia drzwi/okna Tuya który odróżnia się od omawianych już wcześniej produktów tym, że posiada na pokładzie również buzzer, co pozwala na na uruchomienie natychmiastowego (choć dość cichego) alarmu, nawet zanim urządzenie podłączy się do WiFi po wybudzeniu z głębokiego snu. Standardowo zmienię mu firmware i uwolnię go od chmury, by uzyskać niezależność od serwerów producenta i pełną prywatność użytkowania.
Zakup czujnika
Czujnik podrzucił mi czytelnik, abym mógł mu zmienić firmware na OpenBeken. Sam produkt został kupiony w naszym kraju, na popularnym portalu aukcyjnym:
Oto zrzut ekranu z opisu produktu, jak widzimy głównym atutem tego gadżetu jest właśnie ten alarm, który wyróżnia go od omawianych wcześniej czujników, zarówno tych zrealizowanych w oparciu o dodatkowy mikrokontroler wyłączający całkiem zasilanie modułu WiFi (TuyaMCU), jak i tych opartych o głęboki sen samego modułu WiFi (bez mikrokontrolera).
Za całość niestety przypłacamy tym, że czujnik jest wyraźnie większy od swoich "cichych braci":
Testy z aplikacją producenta pomijam, zobaczmy najpierw opakowanie i oznaczenia:
A teraz co dostajemy w praktyce w zestawie:
No, przynajmniej dali dwustronną taśmę, by nakleić go na drzwi.
Instrukcja, jakby ktoś potrzebował:
Tych dwóch baterii AAA nie ma w zestawie. Szkoda.
Wnętrze czujnika
Okej, zaglądamy do środka:
Oznaczenie AW301_UI_SQ_16220921A2, widać piezo...
PCB jest tylko na zaczepach. Ciężko jest je wyjąć, ale da się, jak się stopniowo podważa z obu stron.
Piezo nie wyjmowałem, bo po co? Kabelki są długie a zresztą i tak są na wtyku.
Nie widzę tu przetwornicy... czyżby zasilanie było bezpośrednio z ogniw? Wszystko na to wskazuje.
Tutaj mamy tranzystor do załączania buzzera:
Tutaj widzę już dzielnik napięcia od pomiaru stanu ogniw, łatwo go dostrzec, jak się sprawdzi gdzie CB3S (oraz TYWE3S i ESP12) ma wejście ADC:
Wspomniany pinout CB3S:
Mamy tu też piny do programowania - tak, zaraz zmienimy wsad...
Zmiana wsadu
Zgodnie z instrukcją mojego flashera:
https://github.com/openshwprojects/BK7231GUIFlashTool
lutujemy masę, RX, TX i zasilanie by móc wykonać cykl power off i on:
Na zdjęciu widać, że wlutowałem się w szynę 3.3V, wystarczy prześledzić role padów CB3S.
Flasher poradził sobie bez problemu, ale konfiguracji Tuya nie uzyskał...
W takim razie pora uruchomić GPIODoctor by odgadnąć role GPIO (albo prześledzić ścieżki):
https://www.elektroda.pl/rtvforum/topic3976371.html
W trakcie poszukiwań:
Rezultaty poszukiwań:
P7 (PWM1) - czerwony LED
P9 (PWM3) - Buzzer
P6 - door sensor no pullup (dodatkowo dla głębokiego snu trzeba ustawić zbocze wybudzania - DSEdge 0), tutaj jest podłączony kontaktron
P23 - (ADC) - pomiar napiecia ogniwa, pewnie mechanizm podobny do: https://www.elektroda.pl/rtvforum/topic3959103.html
P26 - przycisk
Tutaj urządzenie należy skonfigurować do głębokiego snu, inaczej szybko wyładują się bateryjki. P6 powinien wybudzać urządzenie (zmiana statusu drzwi), dodatkowo wybudzac powinien P26 (awaryjnie). P9, buzzer, można skonfigurować opcjonalnie (dopiero się tym zajmę, trzeba wykorzystać rolę PWM), służyć do tego będzie rola Buzzer (w trakcie testów), podobnie jak P7 (diodę LED). Warto jedynie pamiętać,
Co do głębokiego snu, wszystko należy zrobić zgodnie z opisem:
Czujnik drzwi/okna bez TuyaMCU - głęboki sen i oszczędzanie energii, OpenBeken
Podsumowanie
Dość ciekawe urządzenie, nie było problemów z uwolnieniem go od chmury. To dziwne, że mój flasher nie wyciągnął z niego gotowej konfiguracji w postaci opisu urządzenia Tuya w ich formacie JSON, ale być może te urządzenie miało zachowanie zaimplementowane "na sztywno" w kodzie, bez pośredniczącego opisu JSON.
Sama zmiana firmware pozwala nam dowolnie skonfigurować urządzenie, można też jest w wybrany przez nas sposób oskryptować (np. użyć skryptów OpenBeken by ustawić czas pracy Buzzera), ale to już wykracza poza zakres tego tematu. Nieco więcej informacji można znaleźć w ciągle rozwijanej dokumentacji.
Przy konfiguracji też warto pamiętać o ustawieniu flagi quick connect oraz statycznego IP, które jest nieco szybsze niż DHCP. Urządzenie również można wygodnie podłączyć do Home Assistant poprzez automatycznego Discovery.
To na razie tyle. Czy komuś z czytelników też trafił się czujnik otwarcia drzwi z piezo, czy jak na razie wszyscy mają "ciche" wersje?
Fajne? Ranking DIY Pomogłem? Kup mi kawę.
