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

[BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

Hostermen 07 Lip 2026 15:30 123 2
REKLAMA
Treść została przetłumaczona angielski » polski Zobacz oryginalną wersję tematu
  • #1 21934270
    Hostermen
    Poziom 2  
    Posty: 2
    [BK7238] [T1-S3] [CHT8310] Czujnik temperatury i wilgotności TH01 z obsługą Wi-Fi

    Cześć,

    udało mi się wgrać oprogramowanie openBeken na te czujniki temperatury TH01, które wykorzystują moduł T1-S3.

    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania
    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania
    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania
    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania
    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Jest to urządzenie zasilane bateryjnie, a proces flashowania był dość trudny, ponieważ szybko przechodzi ono w tryb uśpienia i przerywa połączenia.

    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Odkryłem, że przycisk na tym urządzeniu zapobiega przechodzeniu układu w tryb „uśpienia”.
    Musiałem więc zwiększyć prędkość transmisji (9600 –> 1500000), aby transfer przebiegał szybciej, a podczas procesu flashowania (odczyt lub zapis) co sekundę naciskać fizyczny przycisk, aby urządzenie nie przechodziło w tryb uśpienia.

    Połączenie nawiązałem za pomocą mojego adaptera USB2TTL – CH340 i podłączyłem 3,3 VCC, GND, TX1 oraz RX1 zgodnie ze schematem pinów.

    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Musiałem zamienić miejsca pinów RX i TX – przełączałem je kilka razy, aż połączenia były prawidłowe i uzyskałem poprawny sygnał wyjściowy.
    Następnie zresetowałem urządzenie przy włączonym zasilaniu, podłączając pin CEN/RST do GND, aby przełączyć je w „tryb pobierania/programowania”.
    W tym celu użyłem programu BK7231GUIFlashTool-build-378 – BK73123Flasher dla systemu Windows, który działał bez zarzutu z układem typu BK7238 (T1).

    Płytka stykowa z podłączoną płytką elektroniczną i przewodami na biurku; w tle urządzenie z diodami LED.

    W ten sposób udało się pomyślnie wgrać oprogramowanie openBK do urządzenia, a urządzenie uruchomiło swój hotspot.
    --
    Teraz stoję przed problemem, że nie mam pojęcia o konfiguracji pinów w interfejsie internetowym.

    Wcześniej wykonałem zrzut oprogramowania układowego urządzenia i próbowałem wyodrębnić z niego konfigurację, ale pojawia się tylko komunikat:
    Przepraszamy, nie znaleziono żadnych znaczących danych dotyczących pinów. To urządzenie może być TuyaMCU lub urządzeniem niestandardowym bez danych konfiguracyjnych Tuya.
    Znaleziono słowo kluczowe „Baud” – to urządzenie może być TuyaMCU lub BL0942. Wartość Baud wynosi 9600
    Nie znaleziono informacji o module.
    Wewnętrzna platforma urządzenia – T1, odpowiada BK7238.
    Sekcja Tuya zaczyna się od adresu 2052096 (0x1F5000), co odpowiada domyślnemu adresowi T1/XR806 oraz pewnemu przesunięciu dla niektórych modeli T34/BK7231N.


    Na płytce drukowanej widnieje napis CH8310_SCL i CHT8310_SDA, więc zakładam, że urządzenie korzysta ze sterownika CHT83XX.

    Chciałbym, aby urządzenie wyświetlało odczyty temperatury, wilgotności i poziomu naładowania baterii, a także aby działał przycisk i dioda LED urządzenia.

    Czy ktoś z większą wiedzą mógłby mi pomóc ustalić konfigurację pinów dla tych urządzeń?

    Zrzut strony OpenBeken z listą pinów P0–P28, polami wyboru i przyciskiem „Save”.

    --
    Arkusz danych T1-S3:
    https://developer.tuya.com/en/docs/iot/T1-3S-Module-Datasheet?id=Keesax53r0r2d

    Mam jeszcze jedno urządzenie z oryginalnym oprogramowaniem
    Byłbym bardzo wdzięczny, gdyby ktoś miał pomysł lub mógł mi pomóc ustalić konfigurację pinów, na przykład za pomocą programu TuyaMCUAnalyzer-v0.5.

    Czy możesz zamieścić wyraźne zdjęcia obu stron płytki drukowanej, zwłaszcza ścieżek/oznaczeń od CHT8310_SCL, CHT8310_SDA, przycisku, diody LED oraz obwodu pomiaru baterii do pinów modułu T1-S3?
    Załączam zdjęcia obu stron płytki drukowanej.

    Którą kompilację/wersję OpenBeken wgrałeś i czy próbowałeś już Czy w interfejsie internetowym są jakieś funkcje pinów, na przykład CHT83XX SCL/SDA, przycisk, dioda LED lub ADC/bateria?
    Wypróbowałem te dwa oprogramowania układowe:
    OpenBK7238_QIO_1.18.297.bin
    OpenBK7238_QIO_1.18.297_battery.bin
    Załączniki:
    • extractConfig.json.txt (5.63 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • firmwareDumpBeforeOpenBKflashing.bin (2 MB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 21934322
    insmod
    Poziom 31  
    Posty: 1424
    Pomógł: 164
    Ocena: 446
    Znane urządzenie TuyaMCU, ale z modułem T1-3S zamiast CB3S.
    Zobacz komentarze na stronie https://www.elektroda.com/rtvforum/topic3968377-90.html#21420822
  • #3 21934387
    Hostermen
    Poziom 2  
    Posty: 2
    No dobrze, skoro T1-S3 to mikrokontroler typu tuyaMCU, to chyba nie trzeba określać konfiguracji pinów? Na razie zostawiłem wszystkie pola puste.

    Wypróbowałem polecenia startowe, które znalazłem w komentarzach, i dopasowałem je do identyfikatorów dpID oraz szybkości transmisji, które uzyskałem z wyciągu konfiguracyjnego zrzutu oprogramowania układowego.

    loglevel 6
    logfeature 12 1
    
    startDriver tmSensor
    startDriver TuyaMCU
    
    tuyaMcu_setBaudRate 9600
    tuyaMcu_defWiFiState 4
    
    // dpID 102 is temperature div 10
    setChannelType 102 temperature_div10
    linkTuyaMCUOutputToChannel 102 val 102
    
    // dpID 103 is % humidity
    setChannelType 103 Humidity
    linkTuyaMCUOutputToChannel 103 val 103
    
    // dpID 104 is battery state - low(0), mid(1) and high(2)
    setChannelType 104 ReadOnly
    linkTuyaMCUOutputToChannel 104 enum 10
    setChannelLabel 10 Battery


    Jednak nie wyświetlają się żadne wartości.
    Czy możesz mi podpowiedzieć, jak mam to zrobić?


    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Zrzut ekranu OpenBeken: edycja linii komend startowych w polu tekstowym i przycisk „Submit”.

    Dodano po 2 [godzinach] 56 [minutach]:

    #######################################################################################################

    Tak, dla wszystkich, którzy to czytają – znalazłem sposób na pokonanie ostatniej przeszkody.
    Najpierw skonfigurowałem następujące polecenia:
    //Szczegółowe logowanie
    loglevel 6
    //Funkcje logowania
    logfeature 12 1
    //Uruchomienie sterownika tuyaMCU
    startDriver TuyaMCU
    //Ustawienie urządzenia tak, aby zakładało połączenie z chmurą
    tuyaMcu_defWiFiState 4

    Następnie przypisałem identyfikatory dpID, które wyodrębniłem z oprogramowania układowego, w następujący sposób:

    //Kanał 1 typu temperatura z dzielnikiem 10
    setChannelType 1 Temperature_div10
    //ponieważ jest 64 kanałów, identyfikator dpID jest przypisany do wartości 1
    linkTuyaMCUOutputToChannel 102 val 1
    //nadaj etykietę kanałowi
    setChannelLabel 1 Temperature

    //Kanał 2 typu wilgotność
    setChannelType 2 Wilgotność
    //ponieważ jest 64 kanałów, dpID jest przypisane do wartości 2
    linkTuyaMCUOutputToChannel 103 val 2
    //nadaj etykietę kanałowi
    setChannelLabel 2 Wilgotność

    //Typ baterii – kanał 3
    setChannelType 3 ReadOnly
    //ponieważ jest 64 kanałów, dpID jest przypisane do wartości 3
    linkTuyaMCUOutputToChannel 104 enum 3
    //przypisanie etykiety do kanału
    setChannelLabel 3 Bateria

    (nie używaj komentarzy // w swojej konfiguracji)

    loglevel 6
    logfeature 12 1
    startDriver TuyaMCU
    tuyaMcu_defWiFiState 4
    setChannelType 1 Temperature_div10
    linkTuyaMCUOutputToChannel 102 val 1
    setChannelLabel 1 Temperature
    setChannelType 2 Humidity
    linkTuyaMCUOutputToChannel 103 val 2
    setChannelLabel 2 Humidity
    setChannelType 3 ReadOnly
    linkTuyaMCUOutputToChannel 104 enum 3
    setChannelLabel 3 Battery


    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Następnie uruchomiłem aplikację internetową i przejrzałem zakładkę „Logi”.
    Najpierw zobaczyłem następujący wpis:

    Info:TuyaMCU:Otrzymano: 55 AA 03 01 00 37 7B 22 70 22 3A 22 78 65 61 67 69 6D 61 6E 74 62 37 64 37 61 70 62 22 2C 22 76 22 3A 22 31 2E 30 2E 30 22 2C 22 6D 22 3A 30 2C 22 6E 22 3A 31 2C 22 73 6D 22 3A 30 7D 24
    Informacja: TuyaMCU:P rocessIncoming[v=3]: cmd 1 (QueryProductInformation) długość 62
    Info:TuyaMCU:P arseQueryProductInformation: odebrano {"p":"xeagimantb7d7apb","v":"1.0.0","m":0,"n":1,"sm":0}


    To utwierdziło mnie w przekonaniu, że sterownik tuyaMCU działa, a połączenie szeregowe między openBK a tuyaMCU jest nawiązane, co oznacza, że wszystko idzie w dobrym kierunku.
    Musiałem nacisnąć fizyczny przycisk, aby ten komunikat się pojawił, jeśli nie ustawiłem szybkości transmisji wyraźnie (tuyaMCU_setBaudRate 9600 LUB tuyaMCU_setBaudRate 115200)

    od czasu do czasu pojawia się ten komunikat TODO.
    Info:TuyaMCU:Received: 55 AA 03 02 00 00 04
    Info:TuyaMCU:P rocessIncoming[v=3]: cmd 2 (MCUconf) len 7
    Info:TuyaMCU:P rocessIncoming: TUYA_CMD_MCU_CONF, TODO!


    ale po zastosowaniu prawidłowej konfiguracji do poleceń startowych otrzymałem

    ExtraDebug:TuyaMCU:TuyaMCU heartbeat_valid = 1, product_information_valid=1, self_processing_mode = 1, wifi_state_valid = 0, wifi_state_timer=0
    ExtraDebug:TuyaMCU:Will send TUYA_CMD_QUERY_STATE (state_updated==false, try 0).
    Info:MAIN:Time 32, idle 405516/s, free 114832, MQTT 0(2), bWifi 1, secondsWithNoPing -1, socks 2/24 
    ExtraDebug:TuyaMCU:TuyaMCU heartbeat_valid = 1, product_information_valid=1, self_processing_mode = 1, wifi_state_valid = 0, wifi_state_timer=0
    Info:MAIN:Time 33, idle 392900/s, free 114920, MQTT 0(2), bWifi 1, secondsWithNoPing -1, socks 2/24 
    Info:TuyaMCU:Received: 55 AA 03 00 00 01 01 04 
    Info:TuyaMCU:ProcessIncoming[v=3]: cmd 0 (Hearbeat) len 8
    ExtraDebug:TuyaMCU:TuyaMCU heartbeat_valid = 1, product_information_valid=1, self_processing_mode = 1, wifi_state_valid = 0, wifi_state_timer=0
    ExtraDebug:TuyaMCU:Will send TUYA_CMD_QUERY_STATE (state_updated==false, try 1).
    Info:MAIN:Time 34, idle 405465/s, free 114712, MQTT 0(2), bWifi 1, secondsWithNoPing -1, socks 3/24 
    ExtraDebug:TuyaMCU:TuyaMCU heartbeat_valid = 1, product_information_valid=1, self_processing_mode = 1, wifi_state_valid = 0, wifi_state_timer=0
    ExtraDebug:TuyaMCU:Will send SetWiFiState 4.
    Info:MAIN:Time 35, idle 397966/s, free 114920, MQTT 0(2), bWifi 1, secondsWithNoPing -1, socks 2/24 
    Info:TuyaMCU:Received: 55 AA 03 03 00 00 05 
    Info:TuyaMCU:ProcessIncoming[v=3]: cmd 3 (WiFiState) len 7
    Info:TuyaMCU:Received: 55 AA 03 22 00 08 66 02 00 04 00 00 01 25 BE 
    Info:TuyaMCU:ProcessIncoming[v=3]: cmd 34 (Unknown) len 15
    Info:TuyaMCU:ParseState: id 102 type 2-val len 4
    Info:TuyaMCU:ParseState: int32 293
    Info:GEN:CHANNEL_Set channel 1 has changed to 293 (flags 0)
    Info:MQTT:Channel has changed! Publishing 293 to channel 1
    Info:TuyaMCU:ProcessIncoming: 0x22 replying
    Info:TuyaMCU:Received: 55 AA 03 22 00 08 67 02 00 04 00 00 00 21 BA 
    Info:TuyaMCU:ProcessIncoming[v=3]: cmd 34 (Unknown) len 15
    Info:TuyaMCU:ParseState: id 103 type 2-val len 4
    Info:TuyaMCU:ParseState: int32 33
    Info:GEN:CHANNEL_Set channel 2 has changed to 33 (flags 0)
    Info:MQTT:Channel has changed! Publishing 33 to channel 2
    Info:TuyaMCU:ProcessIncoming: 0x22 replying
    Info:TuyaMCU:Received: 55 AA 03 22 00 05 68 04 00 01 02 98 
    Info:TuyaMCU:ProcessIncoming[v=3]: cmd 34 (Unknown) len 12
    Info:TuyaMCU:ParseState: id 104 type 4-enum len 1
    Info:TuyaMCU:ParseState: byte 2
    Info:GEN:CHANNEL_Set channel 3 has changed to 2 (flags 0)
    Info:MQTT:Channel has changed! Publishing 2 to channel 3
    Info:TuyaMCU:ProcessIncoming: 0x22 replying

    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Następnie wartości pojawiły się w interfejsie internetowym.
    [BK7238] Jak skonfigurować piny układu CHT8310 w urządzeniu TH01 T1-S3 po flashowaniu oprogramowania

    Na szczęście nie musiałem w końcu ustawiać żadnej konfiguracji pinów.
    No nie wiem, co za głupek ze mnie!
REKLAMA