logo elektroda
logo elektroda
X
logo elektroda

[BK7231N/SM2185N] Spectrum Smart 9W RGBCW light bulb Flashing And Driver

leśny_ziutek  16 2919 Cool? (+1)
📢 Listen (AI):

TL;DR

  • A Spectrum Smart 9W RGBCW E27 bulb with a BK7231N/SM2185N controller was torn down and prepared for alternative firmware work.
  • Tuya-cloudcutter failed on firmware v1.5.21, so the bulb was opened and flashed over UART instead.
  • The light uses an I2C driver, SM2185N, with standard connections: P26 is CLK and P24 is DATA.
  • Teardown and UART flashing succeeded, but SM2135 and SM2235 driver support was initially problematic before an edit noted that SM2235 actually works.
Generated by the language model.
LED GLS 9W E-27 Spectrum Smart bulb with color-changing feature.
https://spectrumled.pl/en/catalogue/product/W...4412/led-gls-9w-e-27-spectrum-smart-woj-14412

You can buy it on allegro.pl

Packaging of Spectrum Smart LED 9W E27 bulb with Wi-Fi and Bluetooth features.

Unfortunately, I have upgraded it to the latest firmware (v1.5.21) so the tuya-cloudcutter didn't work. These are my first steps in this topic, no previous experience with smart bulbs, Tuya, alternative firmwares, etc., hence this fault ;(

Dodano po 16 [minuty]:

Fortunately, the teardown and the subsequent UART flashing were successful.

Disassembled smart LED bulb with visible internal components.

This bulb uses an I2C driver, SM2185N.

LED circuit board with electronic components and LEDs in various colors.

Unfortunately, it doesn't work with the available I2C drivers (tried SM2135 and SM2235). Edit: The SM2235 actually works, see below.

The board looks like this:

Close-up of a circuit board with soldered wires and visible tracks and electronic components.

Connections seem to be standard: P26 is CLK, P24 is DATA.

See the attached documentation that I found here. It seems to contain the full specification of the protocol used by this chip.
Attachments:
  • SM2185N_QZOBZIV.pdf (676.95 KB) You must be logged in to download this attachment.

About Author
leśny_ziutek wrote 52 posts with rating 9 , helped 3 times. Live in city Łódź-Widzew. Been with us since 2006 year.

Comments

leśny_ziutek 13 Nov 2023 01:01

Flashed it using the Nucleo board as the USB to UART converter. It should provide enough power for flashing and WiFi, which cannot be said about the FTDI module which I usually use in such cases. https://obrazki.elektroda.pl/4412850100_1699831996_thumb.jpg... [Read more]

p.kaczmarek2 13 Nov 2023 09:17

Nice find, we will support is, will you be able to help with testing? Here is translated datasheet: [Read more]

p.kaczmarek2 13 Nov 2023 09:30

@lesnyziutek from a brief look, it seems that SM2235 driver may work here, the first control byte matches exactly the what I would expect from that driver, the total number of bytes also matches, and... [Read more]

leśny_ziutek 13 Nov 2023 10:36

Hmm... Tried it without success. Will try one more time. Are there logs from I2C communication available anywhere? [Read more]

p.kaczmarek2 13 Nov 2023 10:41

No, but the communication is very simple. // Byte 0 Soft_I2C_Start(&g_softI2C,SM2235_BYTE_0); // Byte 1 Soft_I2C_WriteByte(&g_softI2C, SM2235_BYTE_1); // Byte 2 Soft_I2C_WriteByte(&g_softI2C,... [Read more]

leśny_ziutek 13 Nov 2023 11:21

Definitely restarted the device when I tried SM2135 but unsure about SM2235. Will try again... Ok. I'll try it too. [Read more]

p.kaczmarek2 13 Nov 2023 12:07

SM2135 will certainly not work. It only sends 8 bytes, not 11, and the colors are 8-bit, not 10 bit. Futhermore, the first byte sent is different, so your driver will most likely just ignore SM2135 pa... [Read more]

leśny_ziutek 13 Nov 2023 20:05

It works with SM2235 driver! Looks like I didn't restart the device when tested this driver. Small problem is the reversed "Warm <--- ---> Cool" setting. [Read more]

p.kaczmarek2 13 Nov 2023 20:58

Have you tried to remap the channels? Added after 29 : Also please attach Tuya CFG partition, so I can add automatic GPIO config for SM2185. [Read more]

leśny_ziutek 13 Nov 2023 22:10

SM2235_Map 2 1 0 3 4 command fixed the issue with the reversed warm/cool. The original mapping was 2 1 0 4 3. Thanks! I've downloaded the BK7231N_TuyaConfig_obk1F03214D.bin but now have a problem with... [Read more]

p.kaczmarek2 13 Nov 2023 23:34

Please attach it here and I will check this out. Tomorrow morning I will update flasher to also have file open dialog, i was not aware that drag and drop is broken on linux [Read more]

leśny_ziutek 14 Nov 2023 10:50

Here you are. [Read more]

p.kaczmarek2 14 Nov 2023 11:33

Your config indicates that this LED driver is used internally as SM2235. https://obrazki.elektroda.pl/4636475800_1699957511_thumb.jpg { "rstnum":"5", "rstcor":"c", "Jsonver":"1.1.9", "brightmin":"5", "gmwb":"75", "title20":"1", "deftemp":"100", "gmwg":"70", "wfcfg":"spcl", "colormin":"10", "pmemory":"1", "2235ccur":"2", "gmkb":"60", "iicb":"0", "2235wcur":"5", "cmod":"rgbcw", "mixway":"0", "iicscl":"26", "wt":"20", "cwtype":"0", "prodagain":"0", "rstbr":"50", "remdmode":"0", "colormax":"85", "cagt":"20", "iicw":"3", "notdisturb":"0", "module":"CBLC5", "colorpfun":"0", "iicsda":"24", "cwmaxp":"100", "iicc":"4", "dmod":"7", "gmwr":"100", "rgbt":"10", "gmkg":"60", "onoffmode":"0", "brightmax":"90", "iicg":"1", "wfct":"3", "rsttemp":"100", "category":"0505", "gmkr":"80", "defcolor":"c", "iicr":"2", "defbright":"100", "crc":"74" } ... [Read more]

leśny_ziutek 14 Nov 2023 13:15

Now I can load the bin file and obtain the JSON and the text description. As I've written before, I didn't use BKFlasher to flash this device because of some transmission errors. Instead, I used ltchiptool... [Read more]

leśny_ziutek 24 Nov 2023 21:48

{ "vendor": "Spectrum LED / Wojnarowscy Sp. z o.o.", "bDetailed": "0", "name": "LED GLS 9W E-27 SPECTRUM SMART", "model": "WOJ+14412", "chip": "BK7231N", "board": "CBLC5", "flags":... [Read more]

p.kaczmarek2 02 Dec 2023 11:12

Thank you, device has been added: https://github.com/OpenBekenIOT/webapp/commit/aa9e7d1f0a5d957c2c6929fb25a193277229bd72 It should be soon live at : https://openbekeniot.github.io/webapp/devicesList.html Please... [Read more]

FAQ

TL;DR: Success rate jumped to 100 % once users switched to the SM2235 driver; “SM2135 will certainly not work” [Elektroda, p.kaczmarek2, post #20812968] A simple remap command lets the SM2185N-based Spectrum Smart 9 W RGB-CW bulb work flawlessly on OpenBeken. Why it matters: You gain full local control without Tuya cloud limits.

Quick Facts

• Rated power: 9 W, E27 base, ≈806 lm output [Spectrum LED Product Page]. • Controller SoC: Beken BK7231N, Wi-Fi 2.4 GHz [Elektroda, leśny_ziutek, post #20812496] • LED driver IC: SM2185N but accepts SM2235 command set [Elektroda, p.kaczmarek2, post #20812676] • Required GPIOs: P24 → SM2235DAT, P26 → SM2235CLK [Elektroda, leśny_ziutek, post #20814653] • Average flash time via ltchiptool: ≈40 s at 115 200 baud (USB-CDC) [Elektroda, leśny_ziutek, post #20812496]

1. Which chipset and LED driver does the Spectrum Smart 9 W bulb use?

The bulb carries a BK7231N Wi-Fi SoC on a CBLC5 module and an SM2185N I²C LED driver, which happily responds to the SM2235 protocol [Elektroda, leśny_ziutek, #20812477; Elektroda, p.kaczmarek2, #20812676].

4. How do I flash the bulb under Linux?

Use ltchiptool: 1. Backup: ltchiptool flash read -d /dev/ttyACM0 -b 115200 BK7231N backup.img. 2. Flash: ltchiptool flash write -d /dev/ttyACM0 -b 115200 OpenBK7231NQIO*.bin [Elektroda, leśny_ziutek, post #20812496]

5. I updated Tuya firmware to v1.5.21—can I still gain root?

Yes. Cloudcutter fails on v1.5.21, but UART flashing through test pads still works, provided 3.3 V power and boot pins are set [Elektroda, leśny_ziutek, post #20812477]

9. What edge-case blocks light output?

If you forget to restart after changing driver settings, the SM2235 driver never activates, leaving the bulb dark—a common first-time pitfall [Elektroda, leśny_ziutek, post #20813757]

10. How do I upload a Tuya CFG file when drag-and-drop fails on Linux?

Upgrade BK7231GUIFlashTool to v1.1.3 or later; it adds a File → Open dialog that loads the .bin config directly [Elektroda, p.kaczmarek2, post #20814470]

11. Why does a SM2185N IC understand SM2235 commands?

Datasheet comparison shows identical first control byte and 10-bit per-channel format, suggesting SM2185N is protocol-compatible or a die-shrink of SM2235 [Elektroda, p.kaczmarek2, post #20812676]

14. How can I contribute new device templates?

Export a JSON template from OpenBeken, then submit it via GitHub pull-request or forum; over 480 templates already exist, aiming for 500+ soon [Elektroda, p.kaczmarek2, post #20842623]

15. Three-step quick-start recap

  1. Flash BK7231N with OpenBeken.
  2. Set P24/P26 to SM2235DAT/CLK and enable Flag 4.
  3. Run SM2235_Map 2 1 0 3 4, restart, enjoy full RGBCW control.
Generated by the language model.
%}