Na stronie AI-Speaker można zobaczyć, że do bramki można dodać ponad 1500 urządzeń działających na WiFi.
W tym poście wyjaśnie na przykładzie o co chodzi.
Jak to jest możliwe, że jedna kompilacja potrafi działać taką ogromną ilością różnych urządzeń - odpowiedz to szablony.
Wprowadzenie
Udostępniamy źródła oraz skompilowaną wersję oprogramowania do urządzeń działających na ESP8266 / ESP32.
Dzięki temu możemy do bramki dołączyć dowolne urządzenie z ogromnej listy obsługiwanych urządzeń sterowalnych po WiFi:
Jak działa oprogramowanie wyjaśniamy tu:
https://www.ai-speaker.com/docs/ais_iot_firmware_index
Przykład z życia
Potrzebowałem sterowalnego zaworu do podlewania trawnika (normalnie podlewam wodą ze studni [prosta automatyzacja i przełącznik włączający pompę pływakową], ale nie wystarcza mi tej wody ze studni, więc muszę się posiłkować wodą z sieci).
Zawór
Na stronie z urządzeniami działającymi na Tasmota, znalazłem taki zawór:
Instrukcja wgrania oprogramowania
Wraz z opisem zaworu jest dostępna instrukcja wgrania oprogramowania,
zajmuje to około 5 minut i sprowadza się do:
- Zdejmij przednią pokrywę urządzenia
- Zdejmij plastikową ramkę
- Odkręć 3 śruby z łbem krzyżakowym, aby uzyskać dostęp do pinów: 3,3 V, TX, RX, GND
- Podłącz TTL i wgraj oprogramowanie
zasadę wgrywania wyjaśnił dobrze @Tomasz w tym poście:
Konfiguracja urządzenia
Wraz z opisem urządzenia dostępny jest szablon, który należy zastosować, żeby skonfigurować odpowiednio wyjścia GPIO z ESP8266
{"NAME":"BQ05","GPIO":[17,0,0,0,0,0,0,0,21,157,0,0,0],"FLAG":1,"BASE":18}
Kopiujemy szablon, w menu urządzenia przechodzimy do:
-
Konfiguracja
-
Inne konfiguracje
-
Wklejamy szablon
W menu, Konfiguracja modułu:
wybieramy że nasz moduł jest na podstawie szablonu który dodaliśmy:
I to wszystko, w efekcie mamy:
Dodanie do Asystenta domowego
Dodajemy kartę i już mamy automatyczne podlewanie trawnika, jednym kliknięciem ![]()
Zmieniamy nazwę z “Zawór” na “Podlewanie trawnika”
I możemy już sterować komendą głosową:
Oczwiście na koniec dodajemy automatyzację i podlewamy tylko jeżeli wilgotność jest za mała i prawdopodobnieństwo opadów w prognozie pogody jest mniejsze niż np. 50%
Jeszcze kilka zdjęć urządzenia gdyby ktoś był zainteresowany:
Podlewanie wyłączone:
Podlewanie włączone:


















… więc uaktualnię informację o zaworze. Nowy zawór wyciągnięty z opakowania. Nie tracę czasu, zabieram się do wgrywania Tasmota. Próbując przez dłuższą chwilę bezskutecznie połączyć się z ESP8285 (tat, tak - to nie to błąd) i po sprawdzeniu sprzętu i przewodów, rozgrzewam lutownicę. Pewny lutowanych połączeń nadal nie mam odczytów na monitorze w Ardiuno. Zacząłem podejrzewać uszkodzenie układu. Moją uwagę jednak zwrócił fakt rozgłaszania oryginalnego AP w trybie parowania. Jednakże nawet wówczas komunikacji TTL na pinach TX RX brak. Miernik w rękę i sprawdzenie prawidłowości oznaczeń pinów TX oraz RX. Wniosek na zdjęciu powyżej piny RX i TX zamieniane w kolejności. Zamiana przewodów i nadal brak jakichkolwiek odczytów na monitorze portu szeregowego. Postanowiłem sparować zawór z oryginalną aplikacją producenta, czyli z szeroko znanym eWeLink. Po udanym dodaniu urządzenia do aplikacji ożywa komunikacja po kabelkach. Port UART jest wyłączony do czasu sparoania urządzenia z chińską chmurką.

