logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

S06 Pro T1-3S (BK7238) Rozbiórka, flashowanie i konfiguracja MQTT z asystentem domowym

deeekos 31 Gru 2025 00:28 1326 2
REKLAMA
Treść została przetłumaczona angielski » polski Zobacz oryginalną wersję tematu
  • #1 21794339
    deeekos
    Poziom 3  
    Posty: 6
    Niedawno dokonałem rozbiórki i ponownego flashowania nowego S06 Pro.


    Hardware

    To urządzenie zostało już omówione w wielu postach i znajduje się już w bazie danych teardown.

    Jednak jak widać na zdjęciach, moje urządzenie wydaje się być nową wersją, która wykorzystuje procesor T1-3S - czyli BK7238.

    Niebieska płytka PCB z modułem Bluetooth i portem USB-C na tle drewnianym

    Niebieska płytka PCB z diodami LED, złączem micro USB i oznaczeniami technicznymi.

    W przypadku oryginalnego jailbreaka najpierw próbowałem Tuya Cloudcutter na wszelki wypadek - ale bezskutecznie.
    Byłbym zdumiony, gdyby nie został załatany, aby to zablokować.

    Jednak próba oparta na UART była dość prosta.

    Odpowiednie piny dla połączenia UART to:

    UART MCU
    RX TX1 (16)
    TX RX1 (15)
    GND GND (9)

    Ponieważ urządzenie jest zasilane przez USB-C, nie ma potrzeby podłączania szyny 3,3 V - wystarczy podłączyć je do zasilania USB-C.


    Firmware

    Najnowszy BK7231GUIFlashTool działał dobrze, aby wykonać kopię zapasową oprogramowania układowego i przeflashować najnowszą wersję OpenKeben BK7238.
    Miałem trochę problemów z uzyskaniem stabilnej szybkości transmisji, ponieważ zarówno kopia zapasowa, jak i flash nie powiodły się kilka razy.
    Próbowałem wielu wolniejszych prędkości, ale ostatecznie prędkość 460800 wydawała się całkiem niezawodna.
    Zauważyłem również, że początkowe kasowanie często kończyło się niepowodzeniem przy powyższej prędkości, a 115200 wydawało się działać lepiej (prawdopodobnie dlatego, że kasowanie wymaga więcej energii?).
    Po skasowaniu firmware'u Tuya, wyższa prędkość wydawała się działać dobrze.

    Wypróbowałem kilka nowszych wersji OpenBeken i wszystkie wydają się działać OK.

    Prześledziłem płytę, aby określić piny używane do odpowiednich połączeń i znalazłem je w następujący sposób:

    Physical Pin MCU Pin Name Function Connected do
    13 P24 GPIO\_24 / PWM4 LED 8 / WiFi/Para
    14 P26 GPIO\_26 / PWM5 Odbiornik podczerwieni
    5 P6 GPIO\_06 / PWM0 Nadajnik podczerwieni
    7 P9 GPIO\_09 / PWM3 Przycisk


    Odpowiedni szablon konfiguracji, którego używam to:

    Kod: JSON
    Zaloguj się, aby zobaczyć kod


    Aby sprawdzić, jak radzi sobie MCU Tuya, uruchomiłem urządzenie z nowym firmware.
    Przy pierwszym uruchomieniu OpenBeken wszystko wydawało się w porządku - z wyjątkiem tego, że urządzenie uruchamiało się ponownie co około 60 sekund.
    Zakładam, że jest to jakiś rodzaj restartu watchdoga albo w BK7238, albo w Tuya MCU.
    Dodanie startDriver TuyaMCU naprawiło to.

    Dziennik OpenBeken wyraźnie pokazywał wartości temperatury i wilgotności przesyłane z Tuya MCU.
    Korzystając z tych danych, ustaliłem używane kanały.

    Użyłem pliku autoexec.bat :

    
       startDriver TuyaMCU
    
        // set TuyaMCU default wifi state 0x04, which means "paired",
        // because some TuyaMCU MCUs will not report all data
        // unless they think they are connected to cloud
        tuyaMcu\_defWiFiState 4
    
        startDriver NTP
    
        // dpID 1 is temperature div 10
        setChannelType 1 temperature\_div10
        linkTuyaMCUOutputToChannel 101 val 1
    
        // dpID 2 is % humidity
        setChannelType 2 Humidity
        linkTuyaMCUOutputToChannel 102 val 2
    


    REKLAMA


    Interfejs OpenBeken zachowuje się zgodnie z oczekiwaniami przy tych ustawieniach, pokazując temperaturę i wilgotność.

    Interfejs OpenBK7238 z informacjami o statusie urządzenia IoT


    MQTT

    Po prawidłowym skonfigurowaniu MQTT mogłem zobaczyć odpowiednie tematy.

    Następnie ustawiłem następujące flagi:

    Flaga 2 - [MQTT] Broadcast self state every N (def: 60) seconds (opóźnienie konfigurowalne przez polecenia 'mqtt\_broadcastInterval' i 'mqtt\_broadcastItemsPerSec')
    Flaga 10 - [MQTT] Rozgłaszanie własnego stanu przy połączeniu MQTT
    Flaga 19 - [MQTT] Zawsze publikuj kanały używane przez TuyaMCU

    Po tym Home Assistant MQTT discovery również działa dobrze.

    Panel diagnostyczny z informacjami o czujnikach i systemie OpenBK7238


    Infra-Red

    Na koniec przetestowałem możliwość wykrywania podczerwieni za pomocą prostego pilota kompatybilnego z NEC.

    Zrzut ekranu z logami IR pokazujący dane w postaci szesnastkowej i bitów.

    I byłem w stanie wysłać te same kody IR za pomocą:

    Interfejs narzędzia poleceń z wpisanym poleceniem IRSend NEC

    Ustawiłem następujące flagi, aby wysłać IR z powrotem do Home Assistant:

    Flaga 14 - [IR] Do MQTT publish (RAW STRING) dla przychodzących danych IR
    Flaga 22 - [IR] Do MQTT publish (format Tasmota JSON) dla przychodzących danych IR

    Oba ustawienia działają dobrze zarówno z surowym, jak i JSON przesyłanym jako temat / ładunek MQTT.

    Zrzut ekranu z konsoli pokazujący dane IR protokołu NEC z zerowymi bitami

    Nie testowałem jeszcze wysyłania IR z Home Assistant, ale zakładam, że powinno to działać OK.


    Podsumowanie

    To był mój pierwszy raz, kiedy korzystałem z Open Beken.
    Byłem pod wrażeniem łatwości konfiguracji tego urządzenia.
    Od dawna korzystam z ESPHome dla ESP8266 i ESP32 - ale ESPTiny nie obsługuje BK7238 (jeszcze?).
    Open Beken zapewnia tę obsługę i pozwala mi korzystać z większej różnorodności gotowych urządzeń.
    Wielkie podziękowania dla twórców.

    Kolejne kroki

    Dla mnie wisienką na torcie byłoby uruchomienie MQTT przez TSL na tym urządzeniu, co pozwoliłoby mi używać go w zdalnych lokalizacjach.

    Moje badania pokazują, że BK7238 powinien mieć wystarczającą pojemność, aby to zrobić.
    Byłem w stanie zbudować własną kopię oprogramowania Open Beken lokalnie, ale zmagam się z włączeniem opcji TLS.

    Zobacz mój inny post na ten temat.

    Mam też niedawno zakupioną S09, która jest moim kolejnym celem.
    Chcę jednak móc korzystać z niego zdalnie, więc nie usunąłem jeszcze oprogramowania układowego Tuya, ponieważ dopóki nie uruchomię MQTT przez TSL, jest to moje jedyne rozwiązanie.

    Wiele z powyższych informacji opiera się na świetnej pracy wykonanej już przez ludzi na tym forum, ale mam nadzieję, że dostarczyłem wystarczających informacji, aby pomóc innym w korzystaniu z najnowszej wersji tego urządzenia.

    Dzięki
  • REKLAMA
  • Pomocny post
    #3 21870476
    Ustas69
    Poziom 1  
    Posty: 1
    Pomógł: 1
    Ocena: 1
    Cześć, Deeekos! Dobra robota! Myślę, że moje urządzenie jest takie samo, ale nie jest to wersja Pro. Nie ma czujników temperatury i wilgotności. MCU i pinout są takie same.
    Zielona płytka PCB z portem micro‑USB, modułem T1‑3S, diodami LED i czujnikiem IR na tle tkaniny
    Zielona płytka PCB z gniazdem USB‑C, przyciskiem, elementami SMD i otworem montażowym.
REKLAMA