logo elektroda
logo elektroda
X
logo elektroda

[BK7231N] [CBU] Insights on Tuya WX300P RGB Strip Controller w/o Buttons

divadiow 3771 13
ADVERTISEMENT
  • Here I present a version of the WX300P RGB Strip Controller already reviewed here and closely related to this new review here.

    This RGB LED strip controller has a CBU module soldered to the PCB, which has silkscreen "SHY690-v1.4" printed on the underside. Unlike the one in the first link there are no hardware buttons on the PCB, though there is clearly space where they could be. This unit was purchased from Ali Express from https://www.aliexpress.com/item/1005006007958562.html

    Tuya WiFi RGB LED controller with remote control and compatibility with Amazon Alexa and Google Assistant on AliExpress.

    I captured the bootlog, attached, and also a dump of the original firmware before flashing with OpenBK. The OBK template provided by @p.kaczmarek2 was correct for this device also. bk7231flasher_1.1.6 did not extract the config upon dump

    Screenshot of the BK7231 Easy UART Flasher program with JSON format data.

    User interface of OpenBK controller for RGB LED strips.

    Code: JSON
    Log in, to see the code


    Pictures of inside and out

    Notification indicating no updates available for modules. Close-up of a printed circuit board with labeled pins such as 3V3, IR, GND. Image of the interior of the WX300P RGB controller showing the PCB. WX300P RGB LED strip controller with open casing showing the circuit board with a soldered module. Green circuit board with soldered wires and CBU module. PCB of the LED RGB controller WX300P labeled SHY690-v1.4 with attached wires. Close-up of the WX300P RGB LED controller circuit board with CBU marking, microphone, and other components. Close-up of an RGB LED controller circuit board with visible components and markings. RGB LED strip controller WX300P with label and symbols WX300P RGB LED strip controller with wiring. Remote control for LED RGB strip controller.

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


    I see stuff appearing in the console when I push buttons on the remote, but I've yet to investigate how to turn key pushes into an action.

    Cool? Ranking DIY
    About Author
    divadiow
    Level 34  
    Offline 
    divadiow wrote 2829 posts with rating 489, helped 254 times. Live in city Bristol. Been with us since 2023 year.
  • ADVERTISEMENT
  • #2 20897307
    divadiow
    Level 34  

    So, when I initially flashed and only set the OBK template, I was seeing IR_NEC logs when pushing buttons on the remote. Now I have to enable flag 15 to see just IR_UNKNOWN show.

    [BK7231N] [CBU] Insights on Tuya WX300P RGB Strip Controller w/o Buttons

    Added after 13 [minutes]:

    OK. Weird, reset OBK and NEC is back.

    [BK7231N] [CBU] Insights on Tuya WX300P RGB Strip Controller w/o Buttons

    But as soon as I configure some bits in autoexec.bat, it goes back to IR_UNKNOWN.

    backlog PowerSave 1; startDriver SSDP; startDriver Wemo
    addEventHandler2 IR_NEC 0xFBE2 0x26 led_enableAll 1
    addEventHandler2 IR_NEC 0xFBE2 0x25 led_enableAll 0

  • ADVERTISEMENT
  • Helpful post
    #3 20897350
    p.kaczmarek2
    Moderator Smart Home
    PowerSave is usually trying to sleep device often, maybe you need to try without it. IR requires a very precise timing.
    Helpful post? Buy me a coffee.
  • #4 20897367
    divadiow
    Level 34  
    yes. setting powersave to 0 from command line brings the IR_NEC back. I had removed powersave 1 from the autoexec and rebooted, assuming this would put powersave to 0, but I guess it doesn't.
  • Helpful post
    #5 20897706
    p.kaczmarek2
    Moderator Smart Home
    I may look into it today and maybe add some kind of warning to main WWW panel when both PowerSave and IR are enabled
    Helpful post? Buy me a coffee.
  • ADVERTISEMENT
  • #6 20899770
    divadiow
    Level 34  

    Is there a way to extract the IR codes and their actions from the factory firmware, like with GPIO, or is the only option to push every button on the remote and manually add an event handler?
  • Helpful post
    #7 20899778
    p.kaczmarek2
    Moderator Smart Home
    There are no IR codes in the JSON partition that we know and any futher potential reverse engineering would be a very big and time consuming effort, I don't think it would be reasonable to do it. We may look into that at some point of time, but there are much more pending issues, like the LN882H port we are working on right now.
    Helpful post? Buy me a coffee.
  • #8 20901171
    divadiow
    Level 34  

    For anyone interested, I have this set for the power on/off and the basic color buttons using this remote. At the moment, the dimmer command just turns the LED strip on and off rather than adjusting brightness (with any values configured).
    I cannot see any commands in the output log in the web app to determine what the slider in the GUI is doing in order to translate that into a working dimmer event with the remote. I will update as I discover more.

    autoexec.bat
    
    backlog PowerSave 0; startDriver SSDP; startDriver Wemo
    addEventHandler2 IR_NEC 0xFBE2 0x26 led_enableAll 1
    addEventHandler2 IR_NEC 0xFBE2 0x25 led_enableAll 0
    addEventHandler2 IR_NEC 0xFBE2 0x1 led_basecolor_rgb #ff0000
    addEventHandler2 IR_NEC 0xFBE2 0xC led_basecolor_rgb #eeee00
    addEventHandler2 IR_NEC 0xFBE2 0x1A led_basecolor_rgb #00bd00
    addEventHandler2 IR_NEC 0xFBE2 0x1F led_basecolor_rgb #0000ff
    addEventHandler2 IR_NEC 0xFBE2 0x0 led_basecolor_rgb #551a8b
    addEventHandler2 IR_NEC 0xFBE2 0x2 led_basecolor_rgb #FFFFFF
    addEventHandler2 IR_NEC 0xFBE2 0x5A led_dimmer 1
    addEventHandler2 IR_NEC 0xFBE2 0x10 led_dimmer -1
    


    #ff0000 - Red
    #0000ff - Blue
    #00bd00 - Green
    #551a8b - Purple
    #eeee00 - Yellow
    #FFFFFF - White

    Adjust color hex to suit depending on the ability of your LED strip to approximate colors and to personal preference
  • #9 20901176
    p.kaczmarek2
    Moderator Smart Home
    Which commands would you like to see?

    Don't forget that we have also such a command:
    
    led_nextColor
    

    See more:
    https://github.com/openshwprojects/OpenBK7231T_App/blob/main/docs/commands.md
    Helpful post? Buy me a coffee.
  • #10 20904671
    divadiow
    Level 34  
    OK cool. I'm using Mode+ and Mode- buttons for basic next colour cycling

    addEventHandler2 IR_NEC 0xFBE2 0x8A led_nextColor
    addEventHandler2 IR_NEC 0xFBE2 0x8 led_nextColor


    and oh, I should be using add_dimmer instead, so this works now:

    
    addEventHandler2 IR_NEC 0xFBE2 0x5A add_dimmer 10
    addEventHandler2 IR_NEC 0xFBE2 0x10 add_dimmer -10


    my latest autoexec

    
    backlog powersave 0; startDriver SSDP; startDriver Wemo
    
    addEventHandler2 IR_NEC 0xFBE2 0x26 led_enableAll 1
    addEventHandler2 IR_NEC 0xFBE2 0x25 led_enableAll 0
    addEventHandler2 IR_NEC 0xFBE2 0x1 led_basecolor_rgb #ff0000
    addEventHandler2 IR_NEC 0xFBE2 0xC led_basecolor_rgb #eeee00
    addEventHandler2 IR_NEC 0xFBE2 0x1A led_basecolor_rgb #00bd00
    addEventHandler2 IR_NEC 0xFBE2 0x1F led_basecolor_rgb #0000ff
    addEventHandler2 IR_NEC 0xFBE2 0x0 led_basecolor_rgb #551a8b
    addEventHandler2 IR_NEC 0xFBE2 0x2 led_basecolor_rgb #FFFFFF
    addEventHandler2 IR_NEC 0xFBE2 0x5A add_dimmer 10
    addEventHandler2 IR_NEC 0xFBE2 0x10 add_dimmer -10
    addEventHandler2 IR_NEC 0xFBE2 0x8A led_nextColor
    addEventHandler2 IR_NEC 0xFBE2 0x8 led_nextColor
    


    Added after 1 [minutes]:

    p.kaczmarek2 wrote:
    Which commands would you like to see?


    oh, I just thought using the GUI dimmer/brightness slider would show some output in the console

    LED dimmer/brightness slider.
  • #11 20904828
    p.kaczmarek2
    Moderator Smart Home
    Usually you may get some more output in console if you change log level to debug or to everything, but I am not sure if that slider will output anything more.
    Helpful post? Buy me a coffee.
  • #12 20904836
    divadiow
    Level 34  

    Yes, I set it to the highest level. Not to worry, all sorted.
  • ADVERTISEMENT
  • #13 21011441
    bench2004
    Level 1  
    >>20897307
    Hi,

    Just bought one of these, since I’m a bit newbies to the tuya scene (been using/programing esp32/tasmota), how do you program this? Direct connection to the tx/rx pins on the cbu module , or are these broken out somewhere?

    Many thx.
  • #14 21011454
    p.kaczmarek2
    Moderator Smart Home
    CBU module has RX/TX available easily.
    Top view of the CBU module with pin markings.
    Pin numberSymbolI/O typeFunction
    1P14I/OCommon GPIO, which can be reused as SPI_SCK (Correspond to Pin 11 of the IC)
    2P16I/OCommon GPIO, which can be reused as SPI_MOSI (Correspond to Pin 12 of the IC)
    3P20I/OCommon GPIO (Correspond to Pin 20 of the IC)
    4P22I/OCommon GPIO (Correspond to Pin 18 of the IC)
    5ADCI/OADC, which corresponds to P23 on the internal IC (Correspond to Pin 17 of the IC)
    6RX2I/OUART_RX2, which corresponds to P1 on the internal IC. (Correspond to Pin 28 of the IC)
    7TX2I/OUART_TX2, which is used for outputting logs and corresponds to P0 of the internal IC (Correspond to Pin 29 of the IC)
    8P8I/OSupport hardware PWM (Correspond to Pin 24 of the IC)
    9P7I/OSupport hardware PWM (Correspond to Pin 23 of the IC)
    10P6I/OSupport hardware PWM (Correspond to Pin 22 of the IC)
    11P26I/OSupport hardware PWM (Correspond to Pin 15 of the IC)
    12P24I/OSupport hardware PWM (Correspond to Pin 16 of the IC)
    13GNDPPower supply reference ground
    143V3PPower supply 3V3
    15TX1I/OUART_TX1, which is used for transmitting user data and corresponds to Pin 27 of the IC. For the MCU solution, please refer to CBx Module.
    16RX1I/OUART_RX1, which is used for receiving user data and corresponds to Pin 26 of the IC. For the MCU solution, please refer to CBx Module.
    17P28I/OCommon GPIO (Correspond to Pin 10 of the IC)
    18CENI/OReset pin, low active (internally pulled high), compatible with other modules (Correspond to Pin 21 of the IC)
    19P9I/OCommon GPIO (Correspond to Pin 25 of the IC)
    20P17I/OCommon GPIO, which can be reused as SPI_MISO (Correspond to Pin 14 of the IC)
    21P15I/OCommon GPIO, which can be reused as SPI_CS (Correspond to Pin 13 of the IC)
    Test pointCSNI/OMode selection pin. If it is connected to the ground before being powered on, enter the firmware test mode. If it is not connected or connected to VCC before being powered on, enter the firmware application mode. Correspond to Pin 19 on the internal IC.


    Here is our flasher:
    https://github.com/openshwprojects/OpenBK7231T_App

    Here is a flashing guides playlist for similiar devices with different modules:
    https://www.youtube.com/watch?v=L6d42IMGhHw&list=PLzbXEc2ebpH0CZDbczAXT94BuSGrd_GoM

    Here is our devices list, search for "CBU" and you can click "show detailed guides" and you will find more CBU-related topics:
    https://openbekeniot.github.io/webapp/devicesList.html
    Helpful post? Buy me a coffee.

Topic summary

The discussion revolves around the Tuya WX300P RGB Strip Controller, specifically a version without hardware buttons. Users share insights on flashing the device with OpenBK firmware, troubleshooting IR remote control issues, and configuring event handlers for LED control. Key points include the necessity of disabling PowerSave to maintain IR functionality, the challenges of extracting IR codes from the factory firmware, and the use of specific commands for color cycling and dimming. Additionally, the CBU module's RX/TX pins are identified for programming connections, facilitating further customization and control of the device.
Summary generated by the language model.
ADVERTISEMENT