logo elektroda
logo elektroda
X
logo elektroda

TEARDOWN [BL602] ZENGGE Magic Home Pro RGBW 12-24v 3+3 pin SMART LED Strip Controller

gerardoavelini 2079 17
ADVERTISEMENT
  • #1 21112078
    gerardoavelini
    Level 3  

    Hello everyone. I leave you the teardown of the ZENGEE intelligent LED controller.

    It uses the BL602 chip, A612 for the microphone input for music effects I guess and the integrated 74HC245 which is a one-wire driver IC, able to control up to 2048 pixel. It supports WIFI+BLE and has a 24-button RF remote control.

    ZENGEE smart LED controller with RF remote control. Photo of the ZENGEE smart LED controller with a Wi Fi LED SPI CONTROLLER label. Close-up of the ZENGEE smart LED controller circuit board. The image shows a disassembled ZENGEE smart LED controller with components like the BL602 chip and 74HC245 on the circuit board. Back of ZENGEE smart LED controller PCB with visible traces and markings. Close-up of a circuit board with 74HC245 and A1612 chips. PCB board with BL602 chip and other electronic components.

    I was able to install OpenBeken using the mhflasher app and it worked flawlessly. Then I updated by OTA to the latest version. At the moment I could not find a way to make it work with my WS2811 PIXEL LED. I will make measurements on the BL602 output pins and identify which one connects to the driver and how to use it. I am new to OpenBeken but I will let you know of any progress I make. If you have any questions feel free to ask and I will help you any way I can.

    LED ZENGEE controller interface screen showing device information and configuration options.

    LED controller configuration interface on OpenBeken.

    EDIT: PAD 21 GPIO12 is connected to 74HC245
    PAD 22GPIO14 is connected to A612

    Made some test, but still the same. The bad side is that I didn't make a backup. Now I can't rollback to the original firmware..
  • ADVERTISEMENT
  • #2 21112191
    p.kaczmarek2
    Moderator Smart Home
    That's interesting, this is the first time ever I see a per-pixel LEDs with BL602! I didn't even know this variant existed.

    Well, I guess we need to add a driver for that. We have per-pixel LEDs with BK7231, but not with BL602.

    maybe we should start with checking the SDK:
    https://github.com/search?q=repo%3Aopenshwprojects%2FOpenBL602%20ws2812&type=code

    It seems there is actually a ready mechanism for it:
    Code: C / C++
    Log in, to see the code


    Added after 2 [hours]:

    @divadiow do you have BL602 to help testing, maybe>?
    Helpful post? Buy me a coffee.
  • #3 21112356
    divadiow
    Level 36  
    p.kaczmarek2 wrote:
    do you have BL602 to help testing, maybe>?

    yes sure
  • ADVERTISEMENT
  • #4 21112726
    gerardoavelini
    Level 3  

    We can use my device to test anything you want. I will gladly help. Let me know if you need another measurements from the board. If something fails I have a serial flasher and soldering skills. Also an air soldering station.

    Sorry for my poor English.

    Greetings from Argentina.
  • #5 21130044
    gerardoavelini
    Level 3  
    Hello again greetings from Argentina.

    I've been working abroad for a while and didn't have a chance to do anything until today. Had some problems with the LFS partition so I couldn't create files and save them with the LittleFS. Solved it by flashing via UART the non OTA version.
    Now that everything is working I'm trying to compile the PixelAnim driver but it's a bit beyond my knowledge. I also wanted to ask a question. The device comes with a RF control, not IR. Can it be used with OBK?

    PS: I don't know why but after the update, the first led stays on at startup with blue light. It is a lamp made in 3D printing with WS2811 led strip on it.

    3D-printed lamp with blue lighting and a PCB board.
  • ADVERTISEMENT
  • #6 21130209
    p.kaczmarek2
    Moderator Smart Home
    Wait, are you saying that you managed to get WS2812B (and similiar) working on BL602 platform? Did you integrate the BL602-SDK WS2812B driver (spi_output_wave)? Can you share your code? I am willing to help but it would be nice to have some starting point!
    Helpful post? Buy me a coffee.
  • #7 21132411
    gerardoavelini
    Level 3  
    Nono, not at all. Will try, but as I said, After a full reset, at first the led nº1 was white. after another full reset was blue. Anyway. still looking info about it. I'm willing to help as much as I can.

    Now I'm looking at this article. Might be useful.


    PineCone BL602 talks SPI too!
    https://lupyuen.github.io/articles/spi
  • #8 21132895
    p.kaczmarek2
    Moderator Smart Home
    This is a very interesting article, but we don't even need that. We just need to try setting up and calling a dedicated function spi_output_wave. We may also need to adjust the timings, but I hope that it won't be necessary.
    Helpful post? Buy me a coffee.
  • Helpful post
    #9 21157375
    divadiow
    Level 36  
    from identical device. boot out:

    Code: Text
    Log in, to see the code


    and factory dump attached. mine has LF686C20

    Close-up of a circuit board with a processor and electronic components.
  • #10 21157385
    divadiow
    Level 36  
    and perhaps P5 is connected for SPI

    Code: Text
    Log in, to see the code


    Table showing pin description for QFN32, including number, name, type, and description of functions for pins PAD_GPIO_0 to PAD_GPIO_5.

    OBK first boot

    Code: Text
    Log in, to see the code
  • #11 21157416
    gerardoavelini
    Level 3  
    Hi! I tried my best to compile the driver but it is too advanced for me. If I am not mistaken LF686C20 is the same chip as BL602 right? The dump should work without problems. My device is totally available for any test you want to do.

    Regards
  • ADVERTISEMENT
  • Helpful post
    #13 21636629
    insmod
    Level 28  
    @divadiow
    BL602 SPI LED ready. Tested WS2812B, not sure if WS2811 would work - protocols are different.
    https://github.com/openshwprojects/OpenBK7231T_App/pull/1763
    Not all pins can be MOSI.
    Those that can - P0, P4, P8, P12, P16, P20. They are MOSI by default? https://github.com/openshwprojects/OpenBL602/..._std/bl602_std/StdDriver/Inc/bl602_gpio.h#L91
    Potentially? - P1, P5, P9, P13, P17, P21. They are MISO by default? But can they be used as MOSI?
    I tested P8 only.
  • #14 21637109
    divadiow
    Level 36  
    OK. With this Zengge device specifically...

    OTA
    Jun 17 2024 21:41:40 version 1.17.617 -> 1763_merge_30912ac9583a

    divadiow wrote:
    and perhaps P5 is connected for SPI


    it is not. P12 is SPI for this.

    4M/60 WS2812B looks good. Animations and colour look correct

    WS2812B LED strip connected to Zengge controller on a workbench

    Added after 17 [minutes]:

    autoexec
    Code: Text
    Log in, to see the code


    OBK template
    Code: JSON
    Log in, to see the code


    Added after 6 [minutes]:

    @gerardoavelini

    SPI support has been added. no mic or RF remote support
  • #15 21637136
    insmod
    Level 28  
    >>21637109
    You forgot pins in the template.
    Can you test on a dev board if MISO pins are working?
  • #16 21637140
    divadiow
    Level 36  
    insmod wrote:
    You forgot pins in the template.

    lol oh yes.

    insmod wrote:
    Can you test on a dev board if MISO pins are working?

    yes. setting up a test now

    Added after 1 [hours] 8 [minutes]:

    insmod wrote:
    Potentially? - P1, P5, P9, P13, P17, P21. They are MISO by default? But can they be used as MOSI?


    on Ai-Thinker WB2-32S it seems only P5 and P17 is available from that list. Other pins are labelled but like P1/NC

    Pin layout diagram of Ai-Thinker WB2-32S module with GPIO and interface labels

    P5 ❌
    P17 ❌

    weird because theyre clearly labelled SPI MOSI. P12 works - animations, all fine, like the Zengge. IO4 works too
  • #17 21637219
    insmod
    Level 28  
    >>21637140
    Well, i just found a nicely named function. GLB_Swap_SPI_0_MOSI_With_MISO
    Will upload commit soon.

    Added after 9 [minutes]:

    Uploaded and built

    Added after 11 [minutes]:

    What about pins named like 0/NC or 21/NC?
  • #18 21637249
    divadiow
    Level 36  
    1763_merge_c4b222b51fc5

    P5 and P17 now work.

    insmod wrote:
    What about pins named like 0/NC or 21/NC?

    checking

    Added after 3 [minutes]:

    divadiow wrote:
    insmod wrote:
    0/NC or 21/NC?

    these two work now. so not NC.

    makes more sense. would be a waste to have so many NC. I've probably used some of the NC ones before in testing too.

Topic summary

The discussion revolves around the teardown of the ZENGGE Magic Home Pro RGBW LED Strip Controller, which utilizes the BL602 chip and features a microphone input (A612) for music effects, a one-wire driver IC (74HC245), and supports both WiFi and BLE connectivity. Users are exploring the integration of WS2811 pixel LEDs with the BL602 platform, discussing the need for a dedicated driver and potential issues encountered during setup, including problems with LED behavior after firmware updates. Several participants offer to assist with testing and development, sharing resources and code snippets related to the BL602 SDK and SPI communication.
Summary generated by the language model.
ADVERTISEMENT