logo elektroda
logo elektroda
X
logo elektroda

[Solved] [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb

Jockey0384 2325 6
ADVERTISEMENT
  • Helpful post
    #1 20594729
    Jockey0384
    Level 2  
    These were recently on sale on meh.com for $2USD each: https://meh.com/deals/merkury-innovations-sma...r-white-3?mc_cid=a2a1c6c11c&mc_eid=d62580ffd4
    [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb

    The ones shipped are vulnerable to the tuya-cloudcutter exploit and I successfully performed an OTA flash of Openbeken 1.17.128 for the BK7231T.

    Pin 7 = BP5758D_DAT
    Pin 8 = BP5758D_CLK

    Config Command: BP5758D_Map 2 1 0 4 3

    These are not RGBCW bulbs, but only RGBW, so flag 24 is needed.

    HA works as expected.

    [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb [BK7231T/WB2L/BP5758D] Merkury MI-BW210-999WW RGBW WiFi LED Bulb


    
    {
      "vendor": "Merkury",
      "bDetailed": "0",
      "name": "Merkury MI-BW210-999WW RGBW WiFi LED Bulb",
      "model": "MI-BW210-999WW",
      "chip": "BK7231T",
      "board": "WB2L",
      "flags": "16778240",
      "keywords": [
        "RBGW",
        "WB2L",
        "BP5758D",
        "11W"
      ],
      "pins": {
        "7": "BP5758D_DAT;0",
        "8": "BP5758D_CLK;0"
      },
      "command": "backlog startDriver BP5758D; BP5758D_Map 2 1 0 4 3; BP5758D_Current 60 90;",
      "image": "https://obrazki.elektroda.pl/8308439600_1685054084.jpg",
      "wiki": "https://www.elektroda.com/rtvforum/topic3980300.html"
    }
    
  • ADVERTISEMENT
  • #2 20594964
    p.kaczmarek2
    Moderator Smart Home
    Thank you, can you also include Tuya Config partition for analysis? You know, we have recently added an "extract config from tuya" feature, but it's still being improved:



    The video above shows how to extract Tuya Config and then GPIO template.
    Helpful post? Buy me a coffee.
  • ADVERTISEMENT
  • #3 20595192
    Jockey0384
    Level 2  
    Here's the config, but when importing 2 of the channels are undefined, and it does not pick up the BP5758D current setting.

    
    {
    	"rstnum":"3",
    	"rstcor":"c",
    	"Jsonver":"1.1.8",
    	"brightmin":"5",
    	"gmwb":"75",
    	"title20":"1",
    	"deftemp":"100",
    	"gmwg":"70",
    	"wfcfg":"prod",
    	"colormin":"10",
    	"pmemory":"1",
    	"gmkb":"60",
    	"md":"0",
    	"random":"0",
    	"wfb64":"1",
    	"stat":"0",
    	"token":"null",
    	"region":"null",
    	"reg_key":"null",
    	"dns_prio":"0{nc_tp",
    	"ssid":"null",
    	"passwd":"null",
    	"regi":"0",
    	"dccur":"65",
    	"cmod":"rgbc",
    	"iicscl":"8",
    	"wt":"0",
    	"cwtype":"0",
    	"prodagain":"0",
    	"rstbr":"50",
    	"remdmode":"0",
    	"colormax":"100",
    	"cagt":"27",
    	"notdisturb":"0",
    	"drgbcur":"29",
    	"module":"WB2L",
    	"colorpfun":"1",
    	"iicsda":"7",
    	"cwmaxp":"100",
    	"dmod":"6",
    	"iicc":"4",
    	"gmwr":"100",
    	"rgbt":"8",
    	"colormaxp":"100",
    	"gmkg":"60",
    	"onoffmode":"1",
    	"brightmax":"100",
    	"iicg":"1",
    	"rsttemp":"100",
    	"category":"0504",
    	"gmkr":"80",
    	"defcolor":"c",
    	"iicr":"2",
    	"defbright":"100",
    	"crc":"61",
    	"id":"null",
    	"swv":"2.9.16",
    	"bv":"40.00",
    	"pv":"2.2",
    	"lpv":"3.3",
    	"pk":"keytg5kq8gvkv9dh",
    	"firmk":"keytg5kq8gvkv9dh",
    	"cadv":"1.0.2",
    	"cdv":"1.0.0",
    	"dev_swv":"2.9.16",
    	"s_id":"null",
    	"dtp":"0",
    	"sync":"0",
    	"attr_num":"0",
    	"mst_tp_0":"0",
    	"mst_ver_0":"null",
    	"mst_tp_1":"0",
    	"mst_ver_1":"null",
    	"mst_tp_2":"0",
    	"mst_ver_2":"null",
    	"mst_tp_3":"0",
    	"mst_ver_3":"null",
    	"dminfo_name":"null",
    	"dminfo_code":"null",
    	"dminfo_report_code":"null",
    	"dminfo_sn":"null }{uuid",
    	"psk_key":"null",
    	"auth_key":"mGp9yhwI0iHcmsDf",
    	"ap_ssid":"A",
    	"ap_passwd":"null",
    	"country_code":"null",
    	"bt_mac":"null",
    	"bt_hid":"null",
    	"prod_test":"false }w=Bgw_ai{key",
    	"lckey":"null",
    	"h_url":"null",
    	"h_ip":"null",
    	"hs_url":"null",
    	"hs_ip":"null",
    	"hs_psk":"null",
    	"hs_psk_ip":"null",
    	"mqs_url":"null",
    	"mqs_ip":"null",
    	"mq_url":"null",
    	"mq_ip":"null",
    	"ai_sp":"null",
    	"mq_psk":"null",
    	"mq_psk_ip":"null",
    	"time_z":"null",
    	"s_time_z":"null",
    	"wx_app_id":"null",
    	"wx_uuid":"null",
    	"dy_tls_m":"0",
    	"cloud_cap":"0 }on",
    	"dminfo_@code":"null",
    	"mode":"rw",
    	"property":"{type",
    	"{type":"obj",
    	"type":"enum}",
    	"max":"1000",
    	"scale":"0",
    	"step":"1",
    	"maxlen":"255}"
    }
    


    The generated commands:

    
    ClearIO // clear old GPIO/channels
    lfs_format // clear LFS
    StartupCommand ""  // clear STARTUP
    stopDriver *  // kill drivers
    startDriver BP5758D // so we have led_map available
    setPinRole 7 BP5758D_DAT
    setPinRole 8 BP5758D_CLK
    LED_Map 2 1 undefined 4 undefined 
    
  • #4 20595207
    p.kaczmarek2
    Moderator Smart Home
    Thanks, I will use this binary to improve current setting and channel import.
    Helpful post? Buy me a coffee.
  • ADVERTISEMENT
  • #5 21015544
    divadiow
    Level 35  
    I see that your bin still produces "LED remap is 2 1 ? 4 ?" in Easy UART Flasher.

    Does BP5758D_Map 2 1 0 4 3 work OK? Are you setting flag 24?

    Screenshot showing Flag 24 enabled in Easy UART Flasher.

    also shouldn't your current be BP5758D_Current 29 65

    also, device is not in the the list, so https://github.com/OpenBekenIOT/webapp/pull/89
  • Helpful post
    #6 21422381
    hcgonzalezpr
    Level 1  
    I have the same bulb but different revision board, as FCC ID different but the model is the same. Mine seems to use SM2135 instead of BP5758D.

    The power board looks different but seems to the chip was marked as WB2L chip, I try to take the bulb apart again to show the board at some point.

    Mine seems to use:
    Pin 7 = SM2135DAT
    Pin 8 = SM2135CLK

    Full Blue/Red/Green colors look ok, but mix colors seems to be completely off, enabling flag 24 fixes Cool White, but Warm White just shows as off.
    Parsed JSON
    {
       "rstnum":"3",
       "rstcor":"c",
       "Jsonver":"1.1.8",
       "brightmin":"5",
       "gmwb":"75",
       "title20":"1",
       "deftemp":"100",
       "gmwg":"70",
       "ehwcur":"7",
       "wfcfg":"prod",
       "colormin":"10",
       "pmemory":"1",
       "gmk)EBgw_wsm0nc_tp":"1",
       "ssid":"null",
       "passwd":"null",
       "md":"0",
       "random":"0",
       "wfb64":"1",
       "stat":"1",
       "token":"null",
       "region":"null",
       "reg_key":"null",
       "dns_prio":"2{nc_tp",
       "psk_key":"iYRVLI3tzl5V4JvOoQBX3tfYuVJH5YX5Q2vOc",
       "auth_key":"j15Mk8OSbsp19Tly2F344dCcxLXIB06f",
       "ap_ssid":"Merkury",
       "ap_passwd":"null",
       "country_code":"CN",
       "bt_mac":"null",
       "bt_hid":"null",
       "prod_test":"false }b",
       "iicb":"0",
       "cmod":"rgbc",
       "iicscl":"8",
       "wt":"0",
       "cwtype":"0",
       "prodagain":"0",
       "rstbr":"50",
       "ehccur":"4",
       "remdmode":"0",
       "colormax":"100",
       "cagt":"27",
       "iicw":"3",
       "notdisturb":"0",
       "module":"WB2L",
       "colorpfun":"1",
       "iicsda":"7",
       "cwmaxp":"100",
       "dmod":"3",
       "gmwr":"100",
       "iicc":"3",
       "rgbt":"8",
       "colormaxp":"100",
       "gmkg":"60",
       "onoffmode":"1",
       "brightmax":"95",
       "iicg":"1",
       "rsttemp":"100",
       "category":"0504",
       "gmkr":"80",
       "defcolor":"c",
       "iicr":"2",
       "defbright":"100",
       "crc":"83"
    }
    


    Device configuration, as extracted from Tuya: 
    - SM2135DAT on P7
    - SM2135CLK on P8
    - LED remap is 2 1 0 3 3
    Device seems to be using WB2L module, which is using BK7231T.
    And the Tuya section starts, as usual, at 2023424




    Close-up of an LED bulb with markings on the casing.
    LED bulb with manufacturer markings and certifications.
  • ADVERTISEMENT
  • #7 21524244
    Jockey0384
    Level 2  
    there was no problem to being with!

Topic summary

The discussion centers on the Merkury MI-BW210-999WW RGBW WiFi LED bulb, which was available for $2 on meh.com and is based on the BK7231T chipset. The bulbs are vulnerable to the Tuya-cloudcutter exploit, and an OTA flash of Openbeken firmware version 1.17.128 was successfully performed. Pin assignments for the BP5758D LED driver chip are identified as Pin 7 = BP5758D_DAT and Pin 8 = BP5758D_CLK, with the recommended configuration command BP5758D_Map 2 1 0 4 3 and the necessity of setting flag 24 for RGBW (not RGBCW) operation. Home Assistant integration works as expected. A Tuya config partition extraction was requested and partially provided, though some channels and current settings were initially undefined. Further improvements to binary import and channel mapping were planned. Another user reported a different revision of the bulb using the SM2135 LED driver chip instead of BP5758D, with similar pin assignments and partial color mixing issues resolved by enabling flag 24. The device is not yet listed in the OpenBeken webapp device list, with a related pull request noted. Overall, the thread provides detailed hardware pinouts, firmware flashing experiences, configuration commands, and troubleshooting for these low-cost smart bulbs based on BK7231T and variants.
Summary generated by the language model.
ADVERTISEMENT