logo elektroda
logo elektroda
X
logo elektroda
Dostępna jest polska wersja

Czy wolisz polską wersję strony elektroda?

Nie, dziękuję Przekieruj mnie tam

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

divadiow  13 4470 Cool? (+1)
📢 Listen (AI):
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 @pkaczmarek2 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.
Attachments:
  • readResult_BK7231N_QIO_SHY690_led_mic_2024-07-1-16-02-44.bin (2 MB) You must be logged in to download this attachment.
  • uartlog.txt (4.47 KB) You must be logged in to download this attachment.

About Author
divadiow
divadiow wrote 4676 posts with rating 830 , helped 409 times. Live in city Bristol. Been with us since 2023 year.

Comments

divadiow 07 Jan 2024 22:29

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. https://obrazki.elektroda.pl/5589369400_1704662087_thumb.jpg... [Read more]

p.kaczmarek2 07 Jan 2024 22:35

PowerSave is usually trying to sleep device often, maybe you need to try without it. IR requires a very precise timing. [Read more]

divadiow 07 Jan 2024 22:48

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. [Read more]

p.kaczmarek2 08 Jan 2024 09:53

I may look into it today and maybe add some kind of warning to main WWW panel when both PowerSave and IR are enabled [Read more]

divadiow 09 Jan 2024 12:08

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? [Read more]

p.kaczmarek2 09 Jan 2024 12:13

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... [Read more]

divadiow 10 Jan 2024 08:11

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... [Read more]

p.kaczmarek2 10 Jan 2024 08:16

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 [Read more]

divadiow 12 Jan 2024 07:27

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... [Read more]

p.kaczmarek2 12 Jan 2024 09:37

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. [Read more]

divadiow 12 Jan 2024 09:39

Yes, I set it to the highest level. Not to worry, all sorted. [Read more]

bench2004 20 Mar 2024 07:33

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... [Read more]

p.kaczmarek2 20 Mar 2024 07:55

CBU module has RX/TX available easily. https://obrazki.elektroda.pl/3756074600_1710917603_thumb.jpg Pin number Symbol I/O type Function 1 P14 I/O Common GPIO, which can be reused as... [Read more]

FAQ

TL;DR: Disabling PowerSave restores 100 % IR_NEC decoding, proving that "IR requires a very precise timing" [Elektroda, p.kaczmarek2, post #20897350] The Tuya WX300P uses a BK7231N chip on a 21-pin CBU module and can be flashed over 3.3 V UART pads [Elektroda, divadiow, post #20897195]

Why it matters: Quick tweaks unlock full local control and Home-Assistant integration without Tuya cloud.

Quick Facts

• Chipset: BK7231N Wi-Fi SoC, 32-bit @ 120 MHz [Elektroda, divadiow, post #20897195] • Module: CBU with 21 GPIO/TX/RX/CEN pins exposed [Elektroda, p.kaczmarek2, post #21011454] • Supply voltage: 3.3 V logic; 5–24 V LED power (typical RGB strips) [Elektroda, divadiow, post #20897195] • Flashing method: 115 200 baud UART + bk7231flasher_1.1.6 software [Elektroda, divadiow, post #20897195] • Price point: ~US $4 via AliExpress listing “1005006007958562” (March 2024 snapshot).

What hardware is inside the Tuya WX300P RGB strip controller?

It hosts a BK7231N Wi-Fi MCU mounted on a CBU module (silkscreen SHY690-v1.4) and a 4-channel MOSFET driver for 5–24 V LED strips [Elektroda, divadiow, post #20897195]

Which tool and baud rate should I use to flash OpenBK?

Use bk7231flasher_1.1.6 at 115 200 baud; it successfully dumped and wrote firmware for this board [Elektroda, divadiow, post #20897195]

Why did my IR remote stop working after I edited autoexec.bat?

Setting PowerSave 1 triggers frequent sleeps, upsetting the micro-second timing the IR driver needs; leave PowerSave at 0 to keep 100 % decoding reliability [Elektroda, divadiow, post #20897367]

Can I extract the original IR codes from the Tuya firmware?

No. The JSON partition lacks IR data and deeper reverse-engineering is considered too time-intensive right now [Elektroda, p.kaczmarek2, post #20899778]

How do I map remote buttons to light actions?

Create event handlers in autoexec.bat. Example:
  1. addEventHandler2 IR_NEC 0xFBE2 0x26 led_enableAll 1
  2. addEventHandler2 IR_NEC 0xFBE2 0x25 led_enableAll 0
  3. addEventHandler2 IR_NEC 0xFBE2 0x5A add_dimmer 10 [Elektroda, divadiow, post #20904671]

What is an edge case to watch when adjusting brightness?

Using led_dimmer instead of add_dimmer forces ON/OFF behaviour; switch to add_dimmer to get step changes without toggling [Elektroda, divadiow, post #20904671]

3-step flashing recap?

  1. Solder wires to RX2, TX2, 3.3 V, GND, and hold CSN low.
  2. Run bk7231flasher_1.1.6 –read, then –write OpenBK binary.
  3. Apply the WX300P template and reboot to start local control [Elektroda, divadiow, post #20897195]

What happens if I forget to remove PowerSave from autoexec.bat?

The flag persists through reboot; IR_NEC logs will revert to IR_UNKNOWN until you manually issue “PowerSave 0” and save [Elektroda, divadiow, post #20897367]

Does OpenBK support colour cycling from the remote?

Yes. Command led_nextColor bound to Mode± buttons provides forward or reverse colour rotation [Elektroda, divadiow, post #20904671]
%}