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

Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

williamgibsonwg 29 Mar 2023 19:39 3771 54
Treść została przetłumaczona angielski » polski Zobacz oryginalną wersję tematu
  • Tutaj przedstawię krótką procedurę demontażu i programowania OpenBK7231 dla rodziny kontrolerów LED.
    Oparte są na module CBU BK7231N

    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

    Niestety moduł CBU jest umieszczony pomiędzy dwiema płytami, co utrudnia dostęp.
    Oto ogólna płyta kontrolera, obie strony:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

    Ogólny kontroler ma wyjścia PWM RGBCW do płyty bazowej specyficznej dla trybu.

    Wyjścia PWM nie są dołączone do modułu CBU!
    Moduł CBU jest podłączony przez UART do mikrokontrolera CMS32L051, który jest również podłączony do radia bluetooth i zapewnia wyjścia PWM buforowane przez układ 74HC245.

    Nie wiedziałem, jak zmusić OpenBeken do połączenia się z tym CMS32L051 przez uart, więc plan był taki, aby go usunąć i zworkę na piny CBU PWM:

    Aby sflashować CBU wylutowałem CMS32L051, który dał dostęp do RX/TX na pinach 5/6 (na obu liniach jest rezystor szeregowy 1k)
    Łączyć:
    CBU:16 RX lub CMS32L051:6 - FTDI TTL-232R-3V3 pomarańczowy
    CBU:15 TX lub CMS32L051:5 - FTDI TTL-232R-3V3 Żółty
    Miganie za pomocą narzędzia Windows i kabla 3v3 FTDI przebiegło gładko.
    Uwaga: odłączyłem rezystory 1k i podłączyłem bezpośrednio do pinów CBU.
    Wiem, że po zainstalowaniu CMS32L051 flashowanie nie jest możliwe.
    Zakładam, że flashowanie będzie działać przez rezystory 1k, jeśli CMS32L051 zostanie usunięty, ale nie zostało to przetestowane.


    Linie RCBCW PWM są dostępne na pinach CMS32L051 13/14/15/16/10

    Mam C02W więc zworkowałem:
    CMS32L051:10 do CBU:8 lub P8 i skonfigurowałem to jako kanał 5
    CMS32L051:16 do CBU:9 lub P7 i skonfigurowałem to jako kanał 4

    Wykonanie tego bez wylutowania kontrolera z płyty głównej byłoby dość trudne, ale nie niemożliwe. Rozdzieliłem płytki w ramach mojego dochodzenia, ale trudno było usunąć wystarczającą ilość lutu nawet za pomocą pistoletu do rozlutowywania.

    Z jakiegoś powodu OpenBeken nie ustawiałby wyjść (np. kanał 0 = 0,00, kanał 1 = 0,00, kanał 2 = 0,00, kanał 4 = 0,00, kanał 5 = 0,00), gdybym skonfigurował tylko kanały 4 i 5.
    Więc skonfigurowałem również P6 jako kanał 1 i P9 jako kanał 2, co czyni to urządzenie RGBCW, a teraz działają kanały 4/5, z kanałami 1/2 nie podłączonymi do niczego i kanałem 3 nieskonfigurowanym.

    Mam teraz C02W współpracujący z OpenBeken.

    Jest bardzo prawdopodobne, że istnieje lepsza technika, ale to było moje pierwsze urządzenie OpenBeken. Wszelkie rady będą mile widziane - chcę kilka takich modułów, ale nie jestem pewien, czy warto się fatygować.

    Fajne? Ranking DIY
    O autorze
    williamgibsonwg
    Poziom 3  
    Offline 
    williamgibsonwg napisał 6 postów o ocenie 2. Jest z nami od 2023 roku.
  • #2 20514694
    p.kaczmarek2
    Moderator Smart Home
    Witaj, istnieje kilka sposobów na usprawnienie przepływu pracy tutaj.
    1. możesz wykonać kopię zapasową flash 2MB tego urządzenia i użyć jej do flashowania kolejnych elementów bez lutowania przewodów
    2. usunięcie MCU i użycie PWM do sterowania diodami LED jest dobre, ale możesz też po prostu użyć sterownika TuyaMCU. W tym celu możesz potrzebować najpierw tylko zlutować uziemienie, przewody RX1 i TX1 i przechwycić pakiety za pomocą RealtTerm w tekstowym formacie szesnastkowym. Podczas przechwytywania pakietów wykonuj osobne przechwytywania dla działań w aplikacji Tuya, takich jak:
    - ustawienie 100% ciepła
    - ustawienie 100% chłodno
    - ustawienie koloru czerwonego
    - ustawienie jasności 25%, 50%, 60% itp
    Następnie możemy użyć naszego analizatora TuyaMCU, aby dowiedzieć się, które identyfikatory dpID są używane do kontrolowania kolorów itp. przez urządzenie. A potem po prostu użyj protokołu TuyaMCU do sterowania MCU przez OBK UART....

    Oto przykład przechwyconych danych:
    
    55AA032B00002D55AA0307000801020004000000BBD355AA03070008020200040000001F3855AA03000001010455AA032400002655AA031C00001E55AA032B00002D
    

    A teraz wklejone do analizatora:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Pomogłem? Kup mi kawę.
  • #3 20514771
    williamgibsonwg
    Poziom 3  
    Dzięki za sugestie!
    Zrobiłem kopię zapasową oryginalnego oprogramowania układowego, jeśli jest to przydatne dla kogoś, daj mi znać.

    Nie jestem pewien, co masz na myśli, mówiąc o „flashowaniu bez flashowania”.

    To świetnie, że jest dekoder MCU. Czy jest to dostępne dla użytkowników, czy też mam publikować wiadomości seryjne w przyszłości?

    Czy masz również jakieś sugestie, dlaczego urządzenie LED tylko chłodne/ciepłe nie ustawiało wyjść? Wygląda na to, że kontroler OpenBeken RGBCW ma tryb „rgb” i tryb „cw” i wygląda na to, że nie przełączał się na „cw”, więc wszystko pozostało wyłączone. To jednak czysta spekulacja.
  • #4 20514826
    p.kaczmarek2
    Moderator Smart Home
    Przepraszamy, wygląda na to, że część mojej wiadomości została utracona podczas edycji. Chodziło mi o to, że zrobienie kopii zapasowej 2MB pozwala na flashowanie bez lutowania przewodów, zdalnie, przez program cloudcutter. W ten sposób możesz przesłać OpenBeken bez lutowania przewodów.

    Wydam narzędzie do analizy, ale na razie proszę o przesłanie danych szesnastkowych. Może po prostu dołączę tutaj kompilację, abyś mógł się nią pobawić.

    OpenBeken powinien działać poprawnie we wszystkich typowych przypadkach, w tym:
    - pojedynczy PWM (ustaw kanał 0 lub 1)
    - dwa PWMS (ustaw kanał 0 i 1, powinno po prostu działać), jako CW
    - trzy PWM (ustaw kanał 0, 1, 2) - jako RGB
    - pięć PWM (ustaw kanał 0, 1, 2, 3, 4) - RGBCW
    Kolejność ustawionych kanałów ma znaczenie. Możesz rozpocząć indeksowanie od 0 lub 1, ale kolejność ma znaczenie, a kolejność to: RGBCW. Obudowa CW może również obsługiwać specjalny przypadek, jeśli masz dwa PWM, urządzenie będzie wiedziało, że miało używać CW.

    Oto zrzut ekranu z Windows Simulator z paskiem CW w OBK:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Pomogłem? Kup mi kawę.
  • #5 20550433
    williamgibsonwg
    Poziom 3  
    Cześć,

    Dostałem inne urządzenie i nagrałem UART zgodnie z żądaniem.
    9600 bodów 8N1 na pinie 5

    Niestety urządzenie nie jest rozpoznawane jako Cool/Warm, pojawia się jako pojedynczy kanał „Smart Wi-Fi Dimmer” zarówno w aplikacjach „Tuya Smart”, jak i „Smart Life”, więc po prostu dostaję jasność i włączam/wyłączam. Zarówno zimne, jak i ciepłe są obsługiwane jednakowo. Mam nadzieję, że zgadniesz, który jest który - zgaduję, że protokół jest zgodny z kolejnością RGBCW, ponieważ jest to układ pinów na płycie głównej.
    Daj mi znać, co jeszcze mogę zapewnić!


    
    ON 10%
    55 AA 00 06 00 05 14 01 00 01 01 21                                     
    
    OFF
    55 AA 00 06 00 05 14 01 00 01 00 20                                     
    
    Change to 100% by swiping                                                                       
    55 AA 00 06 00 19 1C 03 00 15 31 30 30 30 30 30 30 30 30 30 30 30 30 30 
    30 38 66 30 33 65 38 C1 55 AA 00 06 00 19 1C 03 00 15 31 30 30 30 30 30 
    30 30 30 30 30 30 30 30 33 36 37 30 33 65 38 93 55 AA 00 06 00 19 1C 03 
    00 15 31 30 30 30 30 30 30 30 30 30 30 30 30 30 33 37 62 30 33 65 38 BF 
    55 AA 00 06 00 08 16 02 00 04 00 00 03 75 A1 55 AA 00 06 00 05 14 01 00 
    01 01 21 55 AA 00 06 00 19 1C 03 00 15 31 30 30 30 30 30 30 30 30 30 30 
    30 30 30 33 65 38 30 33 65 38 C3 55 AA 00 06 00 08 16 02 00 04 00 00 03 
    E8 14 55 AA 00 06 00 05 14 01 00 01 01 21                               
    55 AA 00 00 00 00 FF                                                    
    
    
    OFF
    55 AA 00 06 00 05 14 01 00 01 00 20  
    
    ON 100%                                   
    55 AA 00 06 00 05 14 01 00 01 01 21 
    
    Occasional random message
    55 AA 00 00 00 00 FF 
    
    "Good Night"
    55 AA 00 06 00 05 14 01 00 01 01 21 55 AA 00 06 00 05 15 04 00 01 02 26 
    55 AA 00 06 00 20 19 03 00 1C 30 30 30 65 30 64 30 30 30 30 30 30 30 30 
    30 30 30 30 30 30 30 30 63 38 30 30 30 30 41                            
    
    "Reading"                                                                        
    55 AA 00 06 00 05 14 01 00 01 01 21 55 AA 00 06 00 05 15 04 00 01 02 26 
    55 AA 00 06 00 20 19 03 00 1C 30 31 30 65 30 64 30 30 30 30 30 30 30 30 
    30 30 30 30 30 30 30 33 65 38 30 31 66 34 82                            
    
    "Working"                                                                        
    55 AA 00 00 00 00 FF 55 AA 00 06 00 05 14 01 00 01 01 21 55 AA 00 06 00 
    05 15 04 00 01 02 26 55 AA 00 06 00 20 19 03 00 1C 30 32 30 65 30 64 30 
    30 30 30 30 30 30 30 30 30 30 30 30 30 30 33 65 38 30 33 65 38 88
    
    Brightness 1%
    55 AA 00 06 00 19 1C 03 00 15 31 30 30 30 30 30 30 30 30 30 30 30 30 30 
    30 30 61 30 33 65 38 B4 55 AA 00 06 00 19 1C 03 00 15 31 30 30 30 30 30 
    30 30 30 30 30 30 30 30 30 30 61 30 33 65 38 B4 55 AA 00 00 00 00 FF 55
    
    Brightness 75%
    55 AA 00 06 00 19 1C 03 00 15 31 30 30 
    30 30 30 30 30 30 30 30 30 30 30 32 65 31 30 33 65 38 BB 55 AA 00 06 00 
    19 1C 03 00 15 31 30 30 30 30 30 30 30 30 30 30 30 30 30 32 65 37 30 33 
    65 38 C1 55 AA 00 06 00 19 1C 03 00 15 31 30 30 30 30 30 30 30 30 30 30 
    30 30 30 32 65 61 30 33 65 38 EB 55 AA 00 06 00 08 16 02 00 04 00 00 02 
    EA 15 
  • #6 20550441
    p.kaczmarek2
    Moderator Smart Home
    Oto użyte narzędzie:
    https://www.elektroda.com/rtvforum/topic3970199.html#20528459
    Oto interpretacja:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Powyższy pakiet jest tylko włączony, bez zmiany jasności.

    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

    dpID20 = moc?

    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    dpID 22 = ściemniacz?
    Co to za dziwne dodatkowe wartości?


    "Dobranoc":
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Co to może być?
    fnId=25Str V=30 30 30 65 30 64 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 63 38 30 30 30 30
    Ciąg? A co jeśli zdekodujemy jako ASCII...
    
    30 30 30 65 30 64 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 63 38 30 30 30 30
    00 0e 0d 00 00 00 00 00 00 00 00 c8 00 00
    

    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART


    "Pracujący"
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART


    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

    Nie jestem jeszcze pewien, co to za struny. Wygląda na to, że urządzenie wysyła również jakieś ciągi danych ASCII, może kody kolorów ASCII? Zastanawiam się dlaczego...
    
    55 AA	00	06		00 19	1C030015313030303030303030303030303032656130336538	EB	
    HEADER	VER=00	Unk		LEN	fnId=28 Str V=31 30 30 30 30 30 30 30 30 30 30 30 30 30 32 65 61 30 33 65 38	CHK	
    


    Jest więc dpID dla zasilania, dla ściemniacza i co najmniej dwa dziwne dpID z danymi łańcuchowymi.

    Musimy dowiedzieć się, co to za struny. Powiedz mi jeszcze raz, masz tylko wersję CW, która jest widziana przez aplikację jako jednokolorowa? A może masz również dostęp do wersji RGB/RGBCW?
    Pomogłem? Kup mi kawę.
  • #7 20550565
    williamgibsonwg
    Poziom 3  
    Dzięki za pomoc. Siedzę nad tym od kilku godzin i jeszcze nie wiem.

    Mam tylko jeden rodzaj, chłodny/ciepły. Aplikacja wykrywa go jako monochromatyczny. Wydaje mi się, że nie mogę też ręcznie dodać wersji C/W, zawsze wykrywa to automatycznie.

    Ponieważ na liniach UART znajdują się rezystory, mogę faktycznie pisać polecenia szeregowe za pomocą RealTerm i akceptować je.
    Frustrujące jest to, że crc nie jest standardem RealTerm, więc muszę go ręcznie obliczyć (dowiedziałem się, że twoja aplikacja nie weryfikuje sum kontrolnych, ale jest naprawdę pomocna, dzięki za jej wydanie!)

    Przeczytaj sekwencję startową na RX/TX (poniżej). To zawiera listę zmiennych:
    20 (bool) potęga 0/1
    21 (liczba) Ręczny=0 Scena=2
    22 (int) Jasność 0=1000
    26 (int) ?? V=0
    34 (bool) ?? V=0
    33 (RAW) ?? V=00 01 00 00 03 E8 03 E8 03 E8 03 E8

    Uwaga ciąg używany przez aplikację NIE jest tutaj.
    Próbowałem utworzyć komunikat Write 33, zmieniając komunikat o stanie na polecenie; nie działa:
    
    Status 55 AA	03	07		00 10	21 00 00 0C 0001000003E803E803E803E8 		F3	
    Write 0x55 0xAA 0x00 0x06 0x00 0x10 0x21 0x00 0x00 0x0C 0x00 0x01 0x00 0x00 0x03 0xE8 0x03 0xE8 0x03 0xE8 0x03 0xE8 0xEE


    Na starcie:
    
    55 AA 00 00 00 00 FF 55 AA 00 01 00 00 00 55 AA 00 02 00 00 01 55 
    AA 00 08 00 00 07 55 AA 00 03 00 01 03 06 55 AA 00 03 00 01 04 07 55 AA 
    00 00 00 00 FF
    55 AA	00	00		00 00		FF	
    HEADER	VER=00	Heartbeat		LEN		CHK	
    
    55 AA	00	01		00 00		00	
    HEADER	VER=00	Product		LEN		CHK	
    
    55 AA	00	02		00 00		01	
    HEADER	VER=00	McuConf		LEN		CHK	
    
    0x55 0xAA 0x00 0x08 0x00 0x00 0x07
    55 AA	00	08		00 00		07	
    HEADER	VER=00	Unk		LEN	INVALID date		CHK	
    
    55 AA	00	03		00 01	03	06	
    HEADER	VER=00	WifiState		LEN	03	CHK	
    
    55 AA	00	03		00 01	04	07	
    HEADER	VER=00	WifiState		LEN	04	CHK	
    
    
    
    Pin 6:
    On Startup:
    55 AA 03 00 00 01 00 03 55 AA 03 01 00 32 7B 22 70 22 3A 22 6E 77 61 
    72 36 77 6F 76 61 71 79 63 78 78 7A 7A 22 2C 22 76 22 3A 22 31 2E 30 2E 
    30 22 2C 22 6D 22 3A 32 2C 22 6D 74 22 3A 31 30 7D C1 55 AA 03 02 00 00 
    04 55 AA 03 07 00 05 14 01 00 01 01 25 55 AA 03 07 00 05 22 01 00 01 00 
    32 55 AA 03 07 00 05 15 04 00 01 02 2A 55 AA 03 07 00 08 16 02 00 04 00 
    00 03 C0 F0 55 AA 03 03 00 00 05 55 AA 03 03 00 00 05 55 AA 03 00 00 01 
    01 04 55 AA 03 07 00 10 21 00 00 0C 00 01 00 00 03 E8 03 E8 03 E8 03 E8 
    F3 55 AA 03 07 00 08 1A 02 00 04 00 00 00 00 31
    Decoded:
    55 AA	03	00		00 01	00	03	
    HEADER	VER=03	Heartbeat		LEN	00	CHK	
    
    55 AA	03	01		00 32	7B2270223A226E77617236776F766171796378787A7A222C2276223A22312E302E30222C226D223A322C226D74223A31307D	C1	
    HEADER	VER=03	Product		LEN	{"p":"nwar6wovaqycxxzz","v":"1.0.0","m":2,"mt":10}	CHK	
    
    55 AA	03	02		00 00		04	
    HEADER	VER=03	McuConf		LEN		CHK	
    
    55 AA	03	07		00 05	14 01 00 01 01 		25	
    HEADER	VER=03	State		LEN	fnId=20 Bool V=1	CHK	
    
    55 AA	03	07		00 05	22 01 00 01 00 		32	
    HEADER	VER=03	State		LEN	fnId=34 Bool V=0	CHK	
    
    55 AA	03	07		00 05	15 04 00 01 02 		2A	
    HEADER	VER=03	State		LEN	fnId=21 Enum V=2	CHK	
    
    55 AA	03	07		00 08	16 02 00 04 000003C0 		F0	
    HEADER	VER=03	State		LEN	fnId=22 Val V=960	CHK	
    
    55 AA	03	03		00 00		05	
    HEADER	VER=03	WifiState		LEN		CHK	
    
    55 AA	03	03		00 00		05	
    HEADER	VER=03	WifiState		LEN		CHK	
    
    55 AA	03	00		00 01	01	04	
    HEADER	VER=03	Heartbeat		LEN	01	CHK	
    
    55 AA	03	07		00 10	21 00 00 0C 0001000003E803E803E803E8 		F3	
    HEADER	VER=03	State		LEN	fnId=33 Raw V=00 01 00 00 03 E8 03 E8 03 E8 03 E8	CHK	
    
    55 AA	03	07		00 08	1A 02 00 04 00000000 		31	
    HEADER	VER=03	State		LEN	fnId=26 Val V=0	CHK	
    


    Dzięki dużemu wysiłkowi uprościłem niektóre przypadki dla łańcuchów:
    
    0000000000000000000000100000 1%
    0000000000000000000000300000 2%
    0000000000000000000000500000 3%
    0000000000000000000001000000 11%
    0000000000000000000002000000 32%
    0000000000000000000003000000 62%
    
    0000000000000000000010000000 99.9%
    0000000000000000000020000000 32% (weird)
    0000000000000000000030000000 99.9% 
    0000000000000000000040000000 99.9% 
    0000000000000000000050000000 0%
    
    0000000000000000001000000000 1%
    0000000000000000003000000000 2%
    0000000000000000005000000000 3%
    0000000000000000010000000000 11% (same pattern)
    
    0000000000000000100000000000 99.9% (same weird pattern)
    
    A 1 in any other position (0x31 character) results in OFF/0%
    In all cases, R=G=B=0 and C=W=%
    
  • #8 20559601
    jrhenk
    Poziom 10  
    Cześć wszystkim,
    Też dostałem dzisiaj to urządzenie, wersja CW01. Flashowanie za pomocą cloudcuttera działało bez zarzutu, jednak konfiguracja wydaje się nieco bardziej wymagająca.
    - Z aplikacją Tuya urządzenie działało zgodnie z oczekiwaniami, więc sprzęt jest OK
    - Z openbekenem i konfiguracją z powyższego screena (pwms na 24,26 a reszta jak na screenie) nie mogę nic zmienić. Nawet nie włącz/wyłącz. Dla zabawy próbowałem też 6, 7, 8, 9 dla PWM, ale też nic.
    - Kolejny problem, którego wcześniej nie widziałem w openbeken: Chociaż mogę edytować piny za pośrednictwem aplikacji internetowej, jeśli kliknę sekcję Moduł w interfejsie użytkownika, oprogramowanie układowe po prostu ulega awarii podczas ładowania strony (często nie wykracza poza pole 7 lub Więc)

    Chętnie pomogę w rozwiązywaniu problemów, jeśli mogę, sprawdziłem blog, ale nie widziałem tam jeszcze żadnych oczywistych.

    Edytuj: Jedna potencjalnie interesująca rzecz, którą zauważyłem: Niemniej jednak urządzenie działa teraz w trybie openbeken, jeśli kliknę przycisk, pokazuje to samo przyciemnianie w górę/w dół, jakby nadal działało oprogramowanie układowe tuya. Może moje urządzenie rzeczywiście działa z TuyaMCU? Cóż, myślę, że wszystkie urządzenia Tuya mają jeden, ale mam na myśli, że możemy potrzebować użyć sterownika TuyaMCU zamiast bezpośrednio konfigurować kody PIN? Czy dobrze rozumiem, jak to działa? Lol

    Dodano po 8 [minutach]:

    >>20550441
    Przynajmniej w tym mogę pomóc :)
    Zanim go sflashowałem, bawiłem się nim trochę więcej, a „Dobranoc” to scena Tuya, która po prostu ustawia urządzenie na pewną wstępnie skonfigurowaną jasność :)
  • #9 20559645
    williamgibsonwg
    Poziom 3  
    Cześć jrhenk,

    Mogłeś przegapić część, w której wylutowałem TuyaMCU i bezpośrednio przylutowałem przewody do CBU.
    Nie polecam jednak wykonywania tej procedury, ponieważ jest to bolesne.

    Dzięki p.kaczmarek2 złapałem serial RX/TX pomiędzy TuyaMCU a CBU.

    p.kaczmarek2 - zdjęcia, które podałem powyżej pochodzą z a C01W , a nie C02W, jak myślałem.
    Myślę, że dziwny ciąg, o którym rozmawialiśmy, jest niepotrzebny. Wysyłanie poleceń włączania/wyłączania i jasności przez port szeregowy działało zgodnie z oczekiwaniami.
    dpID20 = moc
    dpID 22 = ściemniacz
    Jak możemy zrobić moduł TuyaMCU dla C01W jrhenka?

    Spróbuję schwytać C02W, kiedy się pojawi.
  • #10 20559648
    jrhenk
    Poziom 10  
    Dziękuję za szybką odpowiedź! Widziałem to, ale także kontynuację, że nie jest to konieczne, jeśli ładujesz sterownik tuya, sprawiło, że nie wyciągnąłem lutownicy :) Widziałem też informacje o identyfikatorach dpID, ale nie jestem w 100% co z tym zrobić.
    Umieściłem „startDriver TuyaMCU” w autoexec.bat i pod „Typy kanałów” w aplikacji internetowej skonfigurowałem moc na 20 i ściemniacz na 22, ale to nie zadziałało, a także widzę tylko suwak „moc” w interfejsie www co wydaje się niewłaściwe... wydaje mi się, że jestem bardzo blisko :)
  • #11 20559683
    p.kaczmarek2
    Moderator Smart Home
    Witam, dobra robota, zakładając, że to prawda:
    williamgibsonwg napisał:

    p.kaczmarek2 - zdjęcia, które podałem powyżej pochodzą z a C01W , a nie C02W, jak myślałem.
    Myślę, że dziwny ciąg, o którym rozmawialiśmy, jest niepotrzebny. Wysyłanie poleceń włączania/wyłączania i jasności przez port szeregowy działało zgodnie z oczekiwaniami.
    dpID20 = moc
    dpID 22 = ściemniacz

    Możesz skorzystać z podejścia z tego tematu:
    Ściemniacz EDM-01AA-EU 300W do BK7231 i TuyaMCU - konfiguracja
    MoesHouse DIY Inteligentne światło WiFi Przełącznik ściemniacza LED Inteligentne życie
    Przeczytaj oba powyższe przewodniki, ale w zasadzie oto proponowana konfiguracja:
    
    
    startDriver TuyaMCU
    setChannelType 1 toggle
    setChannelType 2 dimmer
    // not needed here?
    //tuyaMcu_setBaudRate 115200
    tuyaMcu_setDimmerRange 1 1000
    // dpID 20 is power
    linkTuyaMCUOutputToChannel 20 bool 1
    // dpID 22 is dimmer
    linkTuyaMCUOutputToChannel 22 val 2
    

    ale nie jestem pewien, czy to wszystko, co jest wymagane.
    Czy nie musimy też wysłać tego dziwnego pakietu ciągów znaków ASCII RGB?
    Pomogłem? Kup mi kawę.
  • #12 20560137
    jrhenk
    Poziom 10  
    O tak, teraz całkowicie działa, wielkie dzięki za konfigurację !!! Dzięki temu mam teraz większą szansę na przetłumaczenie wstępnych ustaleń na składnię konfiguracji, ponieważ wczoraj miałem pomysł, jak to zrobić :)
    BTW: Kupiłem ten moduł na mały test i nie byłem pewien, jak to działa, ponieważ nie chciałem go używać do paska LED, ale do 12v LED Spots. Uznałem, że jeśli przyciemnisz samo 12 V, a nie zasilacz, który zapewnia 12 V, ściemnianie musi być lepsze i tak jest w rzeczywistości! Jak dotąd jest to najbardziej płynne ściemnianie, jakie widziałem dla punktów 12 V.

    Po użyciu konfiguracji mogę również przejść do konfiguracji modułu w interfejsie WWW bez awarii oprogramowania układowego.

    Jedyną rzeczą, którą można jeszcze poprawić, jest czas uruchamiania, z jakiegoś powodu ten moduł potrzebuje znacznie więcej czasu w porównaniu do wszystkich innych modułów flashowanych openbeken, które mam, dopóki nie zostanie zainicjowany. Zarówno po odłączeniu/podłączeniu zasilania, jak i przy ponownym uruchomieniu, potrzebuje około 60-80 sekund, zanim się uruchomi.
  • #13 20560204
    p.kaczmarek2
    Moderator Smart Home
    Co mówi dziennik podczas uruchamiania? Podłącz konwerter UART na USB RX do pinu TX2 swojego modułu.
    Pomogłem? Kup mi kawę.
  • #14 20560337
    jrhenk
    Poziom 10  
    Czy jest jakiś sposób na zrobienie tego zdalnie? Już zainstalowałem go w suficie i też trochę boję się, że jednak go zepsuję moimi wciąż początkującymi umiejętnościami lutowania

    edytuj: ciekawe, po skonfigurowaniu uruchamiania mqtt spada do 40 sekund, wciąż trochę długo, ale już zdecydowanie lepiej
  • #15 20560397
    p.kaczmarek2
    Moderator Smart Home
    otwórz dziennik aplikacji internetowej, naciśnij restart, wyczyść dziennik i poczekaj na aktualizację dziennika, pokaże on dużą część rzeczy, które mają miejsce podczas uruchamiania
    Pomogłem? Kup mi kawę.
  • #16 20560412
    jrhenk
    Poziom 10  
    Ach dobrze! Myślałem, że po podłączeniu kabli zobaczysz jeszcze więcej, oto co pokazuje:


    Info:MAIN:Restart modułu za 1...
    001/2/kpl
    Informacje: MQTT: klient MQTT w danych mqtt_incoming_data_cb ma wartość 0 dla kanału 1
    Info:GEN:Brak zmian w kanale 1 (nadal ustawiony na 0) - ignorowanie

    Informacje: MQTT: klient MQTT w danych mqtt_incoming_data_cb to 36 dla kanału 2
    Info:GEN:CHANNEL_Set kanał 2 zmienił się na 36 (flagi 0)

    Info:MQTT:Kanał się zmienił! Publikowanie 36 na kanale 2
    Informacje: MQTT :P publikowanie wartości 36 do openbk/12V_dimmer001/2/get keep=0
    Informacje: MQTT: klient MQTT w temacie mqtt_incoming_publish_cb openbk/12V_dimmer001/2/get
    Informacje: MQTT :P publikowanie wartości 12V_dimmer001 do openbk/12V_dimmer001/host keep=0
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 07 00 08 16 02 00 04 00 00 01 68 96
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 7 (stan) z 15 bajtami
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: przetwarzanie dpId 22, dataType 2-DP_TYPE_VALUE i 4 bajty danych
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: surowe dane 4 int: 360
    Info:GEN:CHANNEL_Set kanał 2 zmienił się na 35 (flagi 0)

    Info:MQTT:Kanał się zmienił! Publikowanie 35 na kanale 2
    Informacje: MQTT :P publikowanie wartości 35 do openbk/12V_dimmer001/2/get keep=0
    Informacje: GŁÓWNY: Czas 27, bezczynny 361150/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT: klient MQTT w temacie mqtt_incoming_publish_cb openbk/12V_dimmer001/2/get
    Informacje: MQTT :P publikowanie val Build 28 kwietnia 2023 08:55:26 wersja 1.17.60 do openbk/12V_dimmer001/build keep=0
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 03 00 00 05
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 3 (WiFiState) z 7 bajtami
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 07 00 06 1F 00 00 02 00 00 30
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 7 (stan) z 13 bajtami
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: przetwarzanie dpId 31, dataType 0-DP_TYPE_RAW i 2 bajty danych
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 07 00 00 20
    Info:TuyaMCU:TuyaMCU_ProcessIncoming: odrzucanie pakietu zła oczekiwana suma kontrolna, oczekiwano 32 i otrzymano sumę kontrolną 9
    Informacje: TuyaMCU: Zużyto 6 niechcianych bajtów innych niż nagłówek w buforze Tuya MCU
    Informacje: TuyaMCU: Pominięte dane (część) 00 00 02 00 00 31
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 07 00 06 D2 00 00 02 00 00 E3
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 7 (stan) z 13 bajtami
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: przetwarzanie dpId 210, dataType 0-DP_TYPE_RAW i 2 bajty danych
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 07 00 05 22 01 00 01 00 32
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 7 (stan) z 12 bajtami
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: przetwarzanie dpId 34, dataType 1-DP_TYPE_BOOL i 1 bajt danych
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: surowe dane 1 bajt:
    Informacje: TuyaMCU: TUYAMCU otrzymał: 55 AA 03 07 00 10 21 00 00 0C 00 01 00 00 03 E8 03 E8 03 E8 03 E8 F3
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 7 (stan) z 23 bajtami
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: przetwarzanie dpId 33, dataType 0-DP_TYPE_RAW i 12 bajtów danych
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 07 00 08 1A 02 00 04 00 00 00 00 31
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 7 (stan) z 15 bajtami
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: przetwarzanie dpId 26, dataType 2-DP_TYPE_VALUE i 4 bajty danych
    Informacje: TuyaMCU: TuyaMCU_ParseStateMessage: surowe dane 4 int: 0
    Informacje: GŁÓWNY: Czas 28, bezczynny 177066/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT :P publikowanie wartości 1c:90:ff:43:a2:0c do openbk/12V_dimmer001/mac keep=0
    Informacje: GŁÓWNY: Czas 29, bezczynny 158262/s, wolny 72536, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT :P publikowanie wartości 2 do openbk/12V_dimmer001/sockets keep=0
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 00 00 01 01 04
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 0 (Hearbeat) z 8 bajtami
    Informacje: MAIN: czas 30, bezczynność 347209/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: GEN:dhcp=0 ip=192.168.1.85 bramka=192.168.1.1 maska=255.255.255.0 mac=1c:90:ff:43:a2:0c
    Info:GEN:sta: 1, softap: 0, b/g/n
    Informacje: GEN:sta:rssi=-68,ssid=tripleXV/0,bssid=28:d1:27:4c:4c:13,kanał=3,cipher_type:MIXED
    Informacje: MQTT :P publikowanie wartości -67 do openbk/12V_dimmer001/rssi keep=0
    Informacje: GŁÓWNY: Czas 31, bezczynny 179807/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT :P publikowanie wartości 31 do openbk/12V_dimmer001/uptime keep=0
    Informacje: GŁÓWNE: czas 32, bezczynność 189078/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT :P publikowanie wartości 72792 do openbk/12V_dimmer001/freeheap keep=0
    Informacje: GŁÓWNY: Czas 33, bezczynny 187251/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT :P publikowanie wartości 192.168.1.85 do openbk/12V_dimmer001/ip keep=0
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 00 00 01 01 04
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 0 (Hearbeat) z 8 bajtami
    Informacje: GŁÓWNY: Czas 34, bezczynny 189541/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Info:MQTT:Kanał się zmienił! Publikowanie 0 na kanale 1
    Informacje: MQTT :P publikowanie wartości 0 do openbk/12V_dimmer001/1/get keep=0
    Informacje: GŁÓWNE: Czas 35, bezczynność 194308/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT: klient MQTT w temacie mqtt_incoming_publish_cb openbk/12V_dimmer001/1/get
    Info:MQTT:Kanał się zmienił! Publikowanie 35 na kanale 2
    Informacje: MQTT :P publikowanie wartości 35 do openbk/12V_dimmer001/2/get keep=0
    Informacje: GŁÓWNY: Czas 36, bezczynny 188306/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: MQTT: klient MQTT w temacie mqtt_incoming_publish_cb openbk/12V_dimmer001/2/get
    Informacje: GŁÓWNE: Czas 37, bezczynność 183630/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 00 00 01 01 04
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 0 (Hearbeat) z 8 bajtami
    Informacje: GŁÓWNY: Czas 38, bezczynny 190844/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: GŁÓWNY: Czas 39, bezczynny 188607/s, wolny 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: GŁÓWNE: czas 40, bezczynność 190307/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: GEN:dhcp=0 ip=192.168.1.85 bramka=192.168.1.1 maska=255.255.255.0 mac=1c:90:ff:43:a2:0c
    Info:GEN:sta: 1, softap: 0, b/g/n
    Informacje: GEN:sta:rssi=-68,ssid=tripleXV/0,bssid=28:d1:27:4c:4c:13,kanał=3,cipher_type:MIXED
    Informacje: GŁÓWNE: czas 41, bezczynność 185223/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
    Informacje: TuyaMCU: TUYAMCU otrzymane: 55 AA 03 00 00 01 01 04
    Info:TuyaMCU:TuyaMCU_ProcessIncoming[ver=3]: przetwarzanie polecenia 0 (Hearbeat) z 8 bajtami
    Informacje: GŁÓWNE: czas 42, bezczynność 192612/s, wolne 72792, MQTT 1(1), bWifi 1, sekundyWithNoPing -1, skarpetki 2/38
  • #17 20562988
    jrhenk
    Poziom 10  
    w porządku, z najnowszym oprogramowaniem układowym i ustawioną flagą szybkiego łączenia Wi-Fi wygrałem jeszcze kilka sekund, a teraz spadło do 20, czyli prawie tyle samo, co dostaję z kilkoma innymi urządzeniami, chociaż niektóre nadal wydają się być szybsze
    dwa pytania, jeśli nie masz nic przeciwko:
    - Na github widziałem ten raport o opóźnieniu NTP iw logach wygląda na to, że urządzenie jest podłączone po zaledwie 5 sekundach. Z C01W i kilkoma punktami RGBW wydaje się, że po prostu nie spada poniżej 20 sekund… czy można to jeszcze poprawić, czy sterownik potrzebuje tylko tego czasu na inicjalizację?
    - Od czasu jednej z ostatnich aktualizacji oprogramowania układowego wykrywanie mqtt działa, ale wygląda na to, że nadal mogę kontrolować jasność tylko wtedy, gdy dodam urządzenie ręcznie za pomocą pliku yaml: czy jest coś, co mogę już z tym zrobić, czy to będzie rozwiązane w jednej z następnych aktualizacji? Pamiętam, jak mówiłeś gdzieś, że odkrycie tuyamcu wciąż trwa

    Z góry dziękuję!
  • #18 20563018
    p.kaczmarek2
    Moderator Smart Home
    jrhenk napisał:

    - Na githubie widziałem ten raport o opóźnieniu NTP iw logach wygląda na to, że urządzenie jest podłączone po zaledwie 5 sekundach. Z C01W i kilkoma punktami RGBW wydaje się, że po prostu nie spada poniżej 20 sekund… czy można to jeszcze poprawić, czy sterownik potrzebuje tylko tego czasu na inicjalizację?

    Temat jest zamknięty. Nie mogę myśleć, jak to może być szybsze.

    Oto próbka z mojej taśmy LED WB3S, potrzebuję 7 sekund, aby przejść do NTP ready:
    
    Info:MAIN:Main_Init_Before_Delay
    Info:CFG:####### Boot Count 45 #######
    Warn:CFG:CFG_InitAndLoad: Correct config has been loaded with 11 changes count.
    Error:CMD:no file early.bat err -2
    Info:GEN:PIN_SetupPins pins have been set up.
    Info:MAIN:Main_Init_Before_Delay done
    Info:MAIN:Main_Init_Delay
    Info:MAIN:Main_Init_Delay done
    Info:MAIN:Main_Init_After_Delay
    Info:MAIN:ssid:qqqqqqqqqqqqqqqqqqqqqqqqqqqq
    Info:MAIN:Using SSID [qqqqqqqqqqqq]
    Info:MAIN:Using Pass [qqqqqqqqqqqqqqqqq]
    Info:MQTT:MQTT_RegisterCallback called for bT obkLEDstripWindow/ subT obkLEDstripWindow/+/set
    Info:MQTT:MQTT_RegisterCallback called for bT bekens/ subT bekens/+/set
    Info:MQTT:MQTT_RegisterCallback called for bT cmnd/obkLEDstripWindow/ subT cmnd/obkLEDstripWindow/+
    Info:MQTT:MQTT_RegisterCallback called for bT cmnd/bekens/ subT cmnd/bekens/+
    Info:MQTT:MQTT_RegisterCallback called for bT obkLEDstripWindow/ subT obkLEDstripWindow/+/get
    Info:CMD:CMD_StartScript: started autoexec.bat at the beginning
    Info:MAIN:Main_Init_After_Delay done
    Info:NTP:NTP driver initialized with server=217.147.223.78, offset=0
    Info:MAIN:Started NTP.
    Info:MAIN:Time 1, idle 240138/s, free 84304, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 2/38 
    Info:MAIN:Time 2, idle 215726/s, free 84304, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 2/38 
    Info:MAIN:Time 3, idle 74493/s, free 84368, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 2/38 
    Info:MAIN:Time 4, idle 0/s, free 84368, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 2/38 
    Info:MAIN:Main_OnWiFiStatusChange - WIFI_STA_CONNECTING - 1
    Info:MAIN:Time 5, idle 10399/s, free 82808, MQTT 0(0), bWifi 0, secondsWithNoPing -1, socks 2/38 
    Info:MAIN:Main_OnWiFiStatusChange - WIFI_STA_CONNECTED - 4
    Info:MAIN:Main_OnWiFiStatusChange - WIFI_STA_CONNECTED - 4
    Info:MQTT:mqtt_userName homeassistant
    mqtt_pass qqqqqqqqqq
    mqtt_clientID obkLEDstripWindow
    mqtt_host 192.168.0.113:1883
    Info:MAIN:Time 6, idle 244856/s, free 84264, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 3/38 
    Info:MAIN:Boot complete time reached (5 seconds)
    Info:CFG:####### Set Boot Complete #######
    Info:NTP:Seconds since Jan 1 1900 = 3891990453
    Info:NTP:Unix time  : 1683001653
    Info:NTP:Local Time : 2023/05/02 04:27:33
    Info:MAIN:Time 7, idle 214557/s, free 84496, MQTT 0(1), bWifi 1, secondsWithNoPing -1, socks 2/38 
    Info:CMD:"NTP is ready"
    


    jrhenk napisał:

    - Od czasu jednej z ostatnich aktualizacji oprogramowania układowego wykrywanie mqtt działa, ale wygląda na to, że nadal mogę kontrolować jasność tylko wtedy, gdy dodam urządzenie ręcznie za pomocą pliku yaml: czy jest coś, co mogę już z tym zrobić, czy to będzie rozwiązane w jednej z następnych aktualizacji? Pamiętam, jak mówiłeś gdzieś, że odkrycie tuyamcu wciąż trwa

    Wciąż brakuje odkrycia zestawu TuyaMCU Toggle+jasność, ale może spróbuję dodać go dzisiaj lub jutro, czy byłbyś w stanie pomóc w testowaniu?
    Pomogłem? Kup mi kawę.
  • #19 20564058
    jrhenk
    Poziom 10  
    Dzięki za odpowiedź i nie chodziło tak bardzo o NTP, byłem po prostu zazdrosny o szybszy czas uruchamiania :)
    W międzyczasie myślę, że faktycznie znalazłem poprawkę! Z jakiegoś powodu, jeśli zaczniesz korzystać z flagi szybkiego łączenia Wi-Fi, proste ponowne uruchomienie niewiele zmieni - oszczędza kilka sekund, ale nie więcej. Odłączenie urządzenia od zasilania i ponowne podłączenie prowadzi jednak do znaczącej zmiany, teraz te same dwa urządzenia, których uruchomienie zajęło 20 sekund, działają w 5-7 sekund, bardzo fajnie! Nie wiem, czy jest to konkretnie połączone z tymi urządzeniami, ale może warto dodać to jako informację do flagi 35
    Edycja: Wypróbowałem to również z punktami RGBW (używają sterownika SM2135, pozostałe dwa to tuyamcu) i pokazuje to samo zachowanie ... więc na podstawie tego myślę, że sensowne byłoby dodanie tej wskazówki do flagi

    Informacje o ustawieniu jasności: Chętnie pomogę w testowaniu i podzielę się wrażeniami!!
  • #20 20564123
    p.kaczmarek2
    Moderator Smart Home
    Nie wiedziałem o tym wymogu „pełnego wyłączenia i włączenia zasilania”. To jest dla mnie nowe. Może nie występowało to w przypadku moich urządzeń. @DeDaMrAz zauważyłeś coś takiego?

    Postaram się jutro dodać to pełne odkrycie. Nie udało mi się dzisiaj. Pracowałem nad czujnikiem wilgotności/temperatury TuyaMCU, rozbiórka ze szczegółowym przewodnikiem zostanie opublikowana za kilka dni.
    Pomogłem? Kup mi kawę.
  • #22 20564231
    DeDaMrAz
    Poziom 17  
    p.kaczmarek2 napisał:
    Nie wiedziałem o tym wymogu „pełnego wyłączenia i włączenia zasilania”. To jest dla mnie nowe. Może nie występowało to w przypadku moich urządzeń. @DeDaMrAz zauważyłeś coś takiego?

    Postaram się jutro dodać to pełne odkrycie. Nie udało mi się dzisiaj. Pracowałem nad czujnikiem wilgotności/temperatury TuyaMCU, rozbiórka ze szczegółowym przewodnikiem zostanie opublikowana za kilka dni.


    :D Nie jestem najlepszą osobą do odpowiedzi, ponieważ ustawiam swoje urządzenia na stole i często wykonuję pełny cykl zasilania podczas testowania :)
  • #23 20564239
    jrhenk
    Poziom 10  
    Hahaha, to właśnie te nieświadome kroki, o których się zapomina, mogą okazać się bardzo ważne. Ale tak naprawdę doprowadził mnie do tego sposób: mam jeszcze niezainstalowany ściemniacz C01W, w którym zauważyłem szybsze uruchamianie po ponownym rozpoczęciu zabawy, oraz inny ściemniacz, który jest już w suficie, ale mogę włączyć zasilanie To. Po tym, jak zauważyłem szybsze uruchamianie w C01W, pomyślałem: czy to może być to? i tak było, przynajmniej w moim przypadku :)
  • #24 20567116
    jrhenk
    Poziom 10  
    >>20564123
    Cześć! Wypróbowałem najnowsze oprogramowanie układowe, ale chyba nie przyszedłeś jeszcze włączyć jasności do automatycznego wykrywania, daj mi znać, kiedy to zrobisz, chętnie pomogę w testowaniu!

    O C01W: Zauważyłem, że chociaż Moes MS 105 bezpiecznie zabezpiecza stany kanału poprawnie (z kodem opublikowanym w innym wątku), wydaje się, że nie działa to jeszcze w pełni dla tego urządzenia, chyba nie zabezpiecza poprawnie kanału 1. może jest błąd w moim kodzie? Po odłączeniu/ponownym podłączeniu zasilania zapala się (do ostatniego poziomu, kiedy była włączona) i dopiero po ponownym podłączeniu do mqtt ponownie ją wyłącza. Nie dzieje się to po restarcie bez odłączenia zasilania. Oto mój kompletny autoexec.bat - dodałem część poniżej i myślę, że powinno działać?

    
    startDriver TuyaMCU
    setChannelType 1 toggle
    setChannelType 2 dimmer
    // not needed here?
    //tuyaMcu_setBaudRate 115200
    tuyaMcu_setDimmerRange 1 1000
    // dpID 20 is power
    linkTuyaMCUOutputToChannel 20 bool 1
    // dpID 22 is dimmer
    linkTuyaMCUOutputToChannel 22 val 2
    ///////
    // when channel 1 changes, save it to flash channel 201
    addEventHandler OnChannelChange 1 setChannel 201 $CH1
    // when channel 2 changes, save it to flash channel 202
    addEventHandler OnChannelChange 2 setChannel 202 $CH2
    addRepeatingEvent 1 1 backlog setChannel 1 $CH201; setChannel 2 $CH202
    
  • #25 20567163
    p.kaczmarek2
    Moderator Smart Home
    Witaj, nie mam jeszcze czasu, aby to przetestować, ale podstawowa kombinacja Toggle + Dimmer do wykrywania HASS powinna już działać. Wypróbuję to dzisiaj, proszę chwilę poczekać..

    Dodano po 31 [minutach]:

    EDYTOWAĆ: czekaj, wydaje mi się, że działa! Spójrz:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Z najnowszą bazą kodu, po ponownym wykonaniu HASS Discovery:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    Więc to działa dla mnie, obecnie dla kombinacji kanałów Toggle + Dimmer.
    Pomogłem? Kup mi kawę.
  • #26 20567914
    williamgibsonwg
    Poziom 3  
    W końcu mam działający C02W (d'oh)

    Wyznaczyłem współrzędne struny ustawiając jednocześnie wszystkie wartości.
    W przypadku sterowania bez scen:
    dpID 21 = 0 (bez sceny)
    dpID 22 = ściemniacz (0-1000)
    dpID 23 = Kolor (0 = ciepły, 1000 = chłodny)
    dpID 28 = string ("10000000000000", 2 bajty dpID 22, 2 bajty dpID 23)
    -np. 100000000000003e8 03e8 za 100% spoko, 100000000000003e8 0000 na 100% ciepła
    Zakładając, że 1 0000 0000 0000 03e8 0000 to „1 RGB DIM COOL” dla każdego z C03W/C04W/C05W, ale nie mogę zgadnąć, jakie dpID odpowiadają tym przepraszam.

    Podczas korzystania z aplikacji Tuya zawsze używa dpID 28 podczas przewijania wartości, a następnie ustawia 23/22 po zatrzymaniu płynnego ruchu. Zakładam, że ustawienie 23/22 niezależnie będzie OK.

    Do sterowania sceną:
    dpID 21 = 2 (scena)
    dpID 25 = ciąg znaków:
    1-bajtowy numer sceny (prawdopodobnie nieistotny)
    powtarzający się zestaw:
    2 bajty taktowania (100=4,5s, 72=3,2s, 52 = 2,3sm 40=0,5s, coś w rodzaju byte[decimal] = 33,8*exp(0,23*seconds))
    1 bajt typu (0=stały 1=flash 2=oddychać)
    6 bajtów zero (prawie na pewno zarezerwowane dla RGB)
    2 bajty dpID 22, 2 bajty dpID 23
    dla każdego elementu, który chcesz w sekwencji.
    Smart Life ma tylko 1 lub 2 elementy w sekwencji, ale wygląda na to, że format może dodać więcej.

    Detale:
    Spoiler:
    Ustaw scenę nr 4 na miganie 100%C/100%W, wolno (4,5 s):
    dpID25 = "04 64640100000000000003e803e8 64640100000000000003e80000"

    Ustaw scenę nr 4 na miganie 100%C/100%W, szybko:
    dpID25 = "04 282801000000000000003e803e8 28280100000000000003e80000"

    Ustaw scenę nr 4, aby oddychać 100%C/100%W, szybko (0,5 s):
    dpID25 = "04 282802000000000000003e803e8 28280200000000000003e80000"

    Sekwencja uruchamiania C02W:
    Produkt {"p":"3szijijz5uwozmjm","v":"1.0.0","m":2,"mt":10}
    dpID 20=1 (zasilanie)
    dpID 21=2 (scena)
    dpID 22=1000 (ściemniacz)
    dpID 23=1000 (kolor)
    dpID 26 = 0 (??)
    dpID 33 = RAW: 00 01 00 00 03 E8 03 E8 03 E8 03 E8 (wygląda na informacje o scenie?)
    dpID 34=0 (??)




    Pytanie: Czy istnieje lista TypeString, którą gdzieś akceptuje setChannelType? Nie mogłem znaleźć, szukałem Tutaj .
    Nie jestem pewien, jak skonfigurować dpID 23.

    Czy OpenBeken obsługuje konstruowanie tych łańcuchów? Nie sądzę, żebym dbał o moją aplikację, ale fajnie było ją trochę odwrócić.
  • #27 20569904
    jrhenk
    Poziom 10  
    >>20567163
    Dziękujemy za ponowne przyjrzenie się temu, z jakiegoś powodu tutaj to jeszcze nie działa z automatycznym wykrywaniem działającym w wersji 1.17.104
    To jest jednostka, którą dodałem w yaml:
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART
    ... i to za pośrednictwem automatycznego wykrywania MQTT, jak dotąd tylko włączania/wyłączania
    Kontroler LED C01W/C02W/C03W/C04W WiFi i BT z protokołem TuyaMCU UART

    Edytuj: aby się upewnić, ponownie usunąłem automatycznie wykrytą jednostkę i pozwoliłem jej ponownie automatycznie wykryć, ale nadal tylko włączam/wyłączam. Próbowałem też zmienić nazwę na wypadek, gdyby to był problem z asystentem domowym, ale nadal to samo ... daj mi znać, jeśli powinienem spróbować czegoś innego
  • #28 20774279
    ray0711
    Poziom 1  
    Dzięki dokumentacji Twoich wysiłków udało mi się uruchomić C05W

    Kroki
    - cloudcutter (według wersji firmware'u Main Module: V2.1.6)
    - flashowanie esphome kickstart
    - flashowanie poniższej konfiguracji esphome

    Z poniższą konfiguracją C05W pojawia się w home-assistant i umożliwia adresowanie wszystkich kanałów.
    Planuję używać go jako kontrolera 2xCWW, więc nadal będę musiał ponownie zmapować kanały kolorów do drugiego ściemniacza CWW.

    
    logger:
      baud_rate: 0
    
    web_server:
    captive_portal:
    mdns:
    api:
    ota:
    
    wifi:
      ssid: !secret wifi_ssid
      password: !secret wifi_password
      ap:
      use_address: 192.168.2.226
    
    uart:
      rx_pin: RX1
      tx_pin: TX1
      baud_rate: 9600
    tuya:
    
    light:
      - platform: "tuya"
        name: "CWW"
        color_temperature_datapoint: 23
        dimmer_datapoint: 22
        color_temperature_max_value: 1000
        switch_datapoint: 20
        min_value_datapoint: 0
        max_value: 1000
        color_temperature_invert: false
        cold_white_color_temperature: 6536 K
        warm_white_color_temperature: 2000 K
        color_datapoint: 24
        color_type: hsv
    
  • #29 21238000
    theosoft
    Poziom 10  
    >>20774279
    Mam moduł C05W i nie jestem w stanie go wyciąć w chmurze.
    Czy są jakieś informacje dotyczące właściwego profilu? Jest na SW 2.1.6
    Czy ktoś ma zdekodowany zrzut oprogramowania układowego, aby spróbować zbudować profil?

    Dziękuję

    Edytować:

    Dowiedziałem się: Bluetooth trzeba wyłączyć na Handy z aplikacją tuya.
    Aby aktywować AP, należy nacisnąć przycisk przez 10 sekund, a następnie ponownie przez 5 sekund.
    Następnie AP zostanie znaleziony i cięcie w chmurze zadziałało ok.
    Profil był:
    2.1.6 - BK7231N / bk7231n_common_user_config_ty --> Tuya Generic --> WT-SPI SPI RGBW LED Controller v2.1.6
  • #30 21238371
    jrhenk
    Poziom 10  
    >>21238000
    Dzięki za dodatkowe informacje! Miałem świetną passę z cloudcutterem, ale nagle, zwłaszcza z oprogramowaniem 2.x, po prostu przestał działać i nie mogłem ustalić dlaczego. Zacząłem zbierać stos urządzeń, które planowałem flashować za pomocą lutowania. Nigdy nie myślałem, że posiadanie telefonu w pobliżu może do tego doprowadzić i na pewno spróbuję jeszcze raz!
REKLAMA