[BK7231N/SM2185N] Spectrum Smart 9W RGBCW light bulb Flashing And Driver
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.
https://spectrumled.pl/en/catalogue/product/W...4412/led-gls-9w-e-27-spectrum-smart-woj-14412
You can buy it on allegro.pl
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.
This bulb uses an I2C driver, SM2185N.
Unfortunately, it doesn't work with the available I2C drivers (tried SM2135
The board looks like this:
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.
Comments
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]
Nice find, we will support is, will you be able to help with testing? Here is translated datasheet: [Read more]
@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]
Hmm... Tried it without success. Will try one more time. Are there logs from I2C communication available anywhere? [Read more]
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]
Definitely restarted the device when I tried SM2135 but unsure about SM2235. Will try again... Ok. I'll try it too. [Read more]
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]
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]
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]
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]
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]
Here you are. [Read more]
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]
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]
{ "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]
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]