logo elektroda
logo elektroda
X
logo elektroda

Interior, design and firmware change of the BL602-based LED strip controller from Bouffalo Lab

p.kaczmarek2 693 0
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • EC79900 board connected to USB-UART adapter and breadboard with power supply
    It has been a long time since I presented a device realised on the BL602. It is time to change that. The BL602 is a microcontroller offering 2.4 GHz Wi-Fi and Bluetooth LE 5.0 connectivity based on a 32-bit RISC-V core clocked at up to 192 MHz. It also has on-board Flash memory, generally 2 MB. It can sometimes be found in IoT devices, such as the Magic Home brand. This is where I will present one such one. The importer has repainted it EC79900 ecolight. It's worth noting that there is no Tuya support here, it's a different app.
    White box of EC79900 ecolight RGB LED strip controller with label and barcode
    The QR code on the device, however, explains everything - it leads to the aforementioned Magic Home app.
    Wi-Fi RGB LED controller with QR code and cables in an open box
    An IR remote control and instructions are also included.
    EC79900 LED controller with IR remote and manual on white background Wi-Fi LED controller and user manual with Magic Home setup instructions
    The instructions describe pairing the device with the manufacturer's app, this is of no use to me.
    User manual for RGB LED Wi-Fi/IR controller with 24-button remote control Magic Home controller manual showing pairing steps and two QR codes

    Interior of EC79900
    Just lift the cover, it is on the hooks.
    Inside the EC79900 LED controller showing PCB with BL602 microcontroller
    On the bottom of the PCB are the pads for programming, that is the UART and the BOOT (bootloader start) signal. In addition, we also have the power supply.
    EC79900 LED controller PCB bottom with UART pads and labeled connections
    The whole thing is supported by the aforementioned BL602 together with a quartz resonator. The antenna from the Wi-Fi is on the board. Next to it is a free slot for an RF chip (radio remote control receiver). In the power section there is a GBDBE step-down inverter, so that from 12 V for the bar we can get 3.3 V for the MCU. Three small transistors control the RGB colours, the PCB potentially supporting up to 5 channels - i.e. RGB and CCT.
    Close-up of a PCB with BL602 microcontroller and power components
    Additional images:
    Close-up of BL602L20 chip on a green PCB with printed Wi-Fi antenna. Close-up of PCB with BL602 microcontroller and connected colored wires. Close-up of EC79900 PCB with 47µF 50V capacitor and BL602 microcontroller visible
    PCB with BL602 microcontroller and RGB terminal connections Close-up of a PCB with BL602 microcontroller and connected RGB wires EC79900 PCB with RGB wires connected and BL602 microcontroller visible
    The board is so simple that you can draw out the connections and apply them to the photo:
    Close-up of EC79900 PCB with BL602 microcontroller and UART pin labels


    Changing the EC79900 firmware
    We change the firmware to be able to configure, rework and improve the device at will. It also allows us to disconnect it from the cloud, make it independent and pair it with Home Assistant.
    We upload our electrode soft:
    https://github.com/openshwprojects/OpenBK7231T_App
    The entire manual can be found here:
    https://www.elektroda.com/news/news4108535.html
    Alternatively, you can try our flasher - it recently supported BL602:
    https://github.com/openshwprojects/BK7231GUIFlashTool
    We are whitewashing the pads:
    Bottom of EC79900 PCB showing UART and BOOT pads
    We solder the cables:
    EC79900 LED controller with UART wires soldered for programming
    The rest as in the indicated material - USB to UART converter and 3.3 V LDO:
    Flashing EC79900 board with BL602 via USB-UART adapter
    I also backed up the firmware (MagicHome-EC79900-LedStrip-RGB-0x1FFFFF-fromBLDevCubev190):
    Screenshot of Bouffalo Lab Dev Cube 1.9.0 interface showing “Success” in green bar
    https://github.com/openshwprojects/FlashDumps/tree/main/IoT/BL602

    After programming, set the pins according to my spreadsheet. PWM is GPIO3, GPIO4 and GPIO21, optionally also GPIO20 and GPIO17 (depends on how many channels you have a version for) and GPIO12 is the IR receiver. The IR controller on the BL602 is a work in progress and is based on the IRremoteESP8266. When configuring IR events, you can follow the material on the BK7238:
    https://www.elektroda.pl/rtvforum/topic4133695.html
    You can also add buttons to the unit - in my opinion they are essential.





    Summary
    In this way, you can free this device from the cloud and turn it essentially into such an Arduino that can be freely configured and programmed. In a similar way, you can add e.g. DS18B20 or DHT11 sensors etc. to it, also without compiling a batch - all from the UI. Pairing with Home Assistant (HASS Discovery) also is supported . Additionally, you can then combine multiple such strips into a single "logical" device using Tasmota Device Groups . I think it's a worthwhile redesign, and the programming process itself is not that difficult.
    Do you use LED strips with Wi-Fi control, and if so, is it together with the manufacturer's cloud or locally?

    Cool? Ranking DIY
    Helpful post? Buy me a coffee.
    About Author
    p.kaczmarek2
    Moderator Smart Home
    Offline 
    p.kaczmarek2 wrote 13711 posts with rating 11519, helped 623 times. Been with us since 2014 year.
  • ADVERTISEMENT
📢 Listen (AI):
ADVERTISEMENT