Thanks again
@insmod, updating to the latest firmware did indeed enable the RGB driver.
I’ve updated to the latest OpenBeken version:
• Version: 1.18.287
• Driver init: startDriver SM16703P; SM16703P_Init 38 GRB
Hardware observation
This appears to be a 2-in-1 lighting device controlled by a WB43-M5 v1.2 (BK7238):
• Channel 1: Main white LED (CCT / brightness)
• Channel 2: Addressable RGB LEDs (SM16703P)
So physically, there are two independent lighting systems behind a single controller.
What works
• SM16703P driver is functioning correctly
• RGB strip responds properly to: SM16703P_SetPixel all R G B; SM16703P_Start
• White channel works, but only if the driver is stopped. So with driver stopped white works in full (control colour and brightness sliders), when driver start, the white colour slider disapear and a box, that when clicked opens a colours picker for the RGB lights.
The issue (firmware-level)
The firmware exposes everything as a single light entity.
As a result:
• The device behaves like a merged light
• Only the primary (white) channel is properly represented
• The RGB strip is not mapped to its own logical light
Root limitation
The current firmware model seems to assume: One device = one light
But this hardware is clearly: One device = two independent lights
Because of this:
• The RGB driver works, but has no entity-level representation
• There is no separation between white and RGB control paths
Expected behaviour
Ideally, the firmware should allow:
• Multiple light entities per device, e.g.:
• Light_Master_Bedroom_White
• Light_Master_Bedroom_RGB
• Binding SM16703P to its own logical light output
• Independent control of both channels
P26 is set to use the SM16703P_DIN
On Home Assistant mqtt this is the discovered attributes:
min_color_temp_kelvin: 2000
max_color_temp_kelvin: 6493
supported_color_modes: color_temp
friendly_name: Light Master Bedroom Light
supported_features: 0
color_mode: color_temp
brightness: 255
color_temp_kelvin: 2000
hs_color: 30.601, 94.547
rgb_color: 255, 137, 14
xy_color: 0.598, 0.383
Added after 3 [minutes]:This is how it looks like working: