Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware

paulp 08 Mar 2023 19:18 333 5
This content has been translated flag-en » flag-pl View the original version here.
  • Podstawowe informacje:
    Marka: Merkury
    Model: MI-BW904-999W
    Chip: WB2L
    Sprzedawca: Walmart (kupiony w grudniu 2020 r. za około 5 USD)
    Regular disclaimer: electricity kills (some), always remove power, tear down at your own risk, etc.


    Zdjęcia z rozbiórki
    Plastikowa kopułka jest przyklejona jakąś masą do aluminiowej podstawy. Musiałem podgrzać go opalarką, a kopuła odpadła dość łatwo. Niestety płytka LED jest przyklejona inną masą, która nie była tak łatwa do usunięcia. Używam Mocy i śrubokręta, ale to wszystko nie jest konieczne (patrz poniżej).
    [WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware [WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware
    [WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware [WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware
    Jak widać (Rys.4) mózgiem lampy jest moduł WB2L. Czarny układ scalony obok to sterownik BP1638 (będzie to ważne później). Postanowiłem spróbować Przecinacz chmur Tuya (odtąd CC). CC nie zna dokładnie tego modelu, ale zna MI-BW932-999W. Pobrałem firmware OpenBK7231T_UG_1.15.566.bin z OpenBeken github. (Zwróć uwagę na UG - ponieważ będziemy go programować, OTA jest ważne, aby wziąć odpowiednie oprogramowanie.) Następnie błysnąłem lampą zgodnie z instrukcjami CC. Po zakończeniu CC powinieneś zobaczyć sieć Wi-Fi z identyfikatorem SSID OpenBK7231T_XXXXX. Postępuj zgodnie z instrukcjami konfiguracji z OpenBeken: połącz się z Wi-Fi, otwórz 192.168.4.1, wprowadź swój identyfikator SSID i hasło, wprowadź swój serwer MQTT (w razie potrzeby).

    Definicja pinów
    Teraz zaczyna się zabawa. WB2L ma 5 pinów, które mogą sterować urządzeniami peryferyjnymi. Okazuje się, że moduł jest podłączony do sterownika BP1738CJ znajdującego się obok niego na płycie głównej. Patrząc na to schemat aplikacji:
    [WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware
    Widzimy, że jedyne wymagane dane wejściowe to trzy PWM dla koloru czerwonego, zielonego i niebieskiego. Lampa, jak widać na ryc. 3 powyżej, ma krąg kolorowych diod LED i krąg białych diod LED. Układ scalony na płytkach LED ma etykietę BP5711J. Nie mogłem znaleźć arkusza danych, ale znalazłem jeden dla CN5711
    [WB2L] Merkury MI-BW904-999W Otwarcie i zmiana firmware - więc wygląda na to, że jest to sterownik białych diod LED dużej mocy.
    Tak więc wszystkie cztery paski LED RGBW są napędzane przez piny PWM WB2L. Po kilku permutacjach znalazłem to
    P6 -> PWM0
    P8 -> PWM3
    P24->PWM2
    P26->PWM1

    Jeśli zastosujesz się do tego układu, koło kolorów w asystencie domowym poda Ci odpowiednie kolory. Upewnij się, że wybrałeś „Flaga 3 - [LED][Debug] Pokaż surowy kontroler PWM na indeksie WWW zamiast nowego wybieraka LED RGB/CW/etc”, w przeciwnym razie interfejs się zepsuje. Następnie sparowałem żarówkę z Homeassitant za pomocą natywnej funkcji OpenBeken i voilà mam lampę bez chmury za 5 USD.

    Cool? Ranking DIY
    About Author
    paulp
    Level 3  
    Offline 
    paulp wrote 6 posts with rating 1. Been with us since 2023 year.
  • Helpful post
    #2
    p.kaczmarek2
    Moderator Smart Home
    Dziękujemy za szczegółową recenzję. To bardzo fajna tania żarówka. Nawiasem mówiąc, myślę, że jest miejsce na ulepszenia:
    paulp wrote:

    Jeśli zastosujesz się do tego układu, koło kolorów w asystencie domowym poda Ci odpowiednie kolory. Upewnij się, że wybrałeś „Flaga 3 - [LED][Debug] Pokaż surowy kontroler PWM na indeksie WWW zamiast nowego wybieraka LED RGB/CW/etc”, w przeciwnym razie interfejs się zepsuje.

    Jeśli twoja żarówka używa 4 PWM, powinieneś raczej wybrać flagę 24:
    
    24	[LED] Emulate Cool White with RGB in device with four PWMS - Red is 0, Green 1, Blue 2, and Warm is 4",
    

    Myślę, że już działa, chociaż sam nie mam takich urządzeń. Nie ma potrzeby ukrywania nowego selektora RGB/CW.
  • #3
    paulp
    Level 3  
    Dziękuję za Twój komentarz. Tak, moja konfiguracja kanałów odpowiada ustawieniom flagi 24. Niestety, w nowej konfiguracji Home Assistant nie aktywuje białych (nie R+G+B, ale zwykłych białych) diod LED. Kiedyś robiono to temperaturą barwową zastępując intensywność białej diody LED. Kolor w wysokiej temperaturze jest teraz biało-niebieski jako kombinacja RGB, ale w niskiej temperaturze nie jest to ciepła biel, ale raczej zauważalna. Z surowymi kontrolerami PWM (Flag3) mogę dobrze aktywować ciepłą biel
  • #4
    p.kaczmarek2
    Moderator Smart Home
    Wczoraj dodaliśmy poprawkę Home Assistant Discovery, czy masz najnowszą wersję? Czy możesz spróbować ponownie i ponownie wykonać Hass Discovery?
  • #5
    paulp
    Level 3  
    Zaktualizowałem FW do 1.15.573. Niestety problem nadal występuje. Jeśli włączę flagę 24, rzeczywiście mogę kontrolować kolory RGB za pomocą próbnika kolorów w natywnym interfejsie użytkownika, ale nie ciepłych białych diod LED, więc musiałem powrócić do flagi 3.
    Nowe odkrycie Home Assistant rozwiązało mój poprzedni problem, ale wróciłem do punktu wyjścia: kolorowe diody LED są dobrze kontrolowane przez koło kolorów — mogę wybrać biały kolor na środku koła, ale jest to zimna biel, kombinacja R+G+B, nie ciepła biel. Intensywność ciepłej bieli jest kontrolowana przez skalę temperatury barwowej tylko wtedy, gdy ustawiona jest flaga 3 (nie ma potrzeby ponownego odkrywania), i nie jest kontrolowana przez nic, jeśli ustawiona jest flaga 24. Kiedy włączam ciepłą biel w HA, wszystkie inne kolorowe diody LED wyłączają się i odwrotnie. Używając surowego PWM w natywnym interfejsie użytkownika, mogę uzyskać ciepłą biel z nutą czerwieni.
    Ta konfiguracja sprawdza się dobrze w moim zastosowaniu: różowe światło dla roślin w ciągu dnia i ciepła biel wieczorem dla ludzi, ale widzę, że jest to nieoptymalne.
  • #6
    p.kaczmarek2
    Moderator Smart Home
    Jak przypisałeś kanały do PWM? Czy zachowałeś właściwą kolejność?