Describe the bug
After updating Home Assistant to 2026.3.1+, my Meross white-only bulbs (msl100d) became unavailable in Home Assistant.
I then applied the fix referenced in PR #591 to address the white bulb issue, and that restored the white-only bulbs. However, after making that change, my color bulbs (msl120d and msl120da) became unavailable instead.
From testing, the problem appears to be that the white-bulb fix was applied too broadly. White-only dimmable bulbs need to report ColorMode.BRIGHTNESS, but color-capable bulbs should not advertise BRIGHTNESS together with RGB and/or COLOR_TEMP.
In my setup:
I was able to resolve the issue by changing the light entity logic so that:
- white-only dimmable bulbs use
ColorMode.BRIGHTNESS
- RGB / color temperature bulbs only advertise
RGB and/or COLOR_TEMP
BRIGHTNESS is only used when it is the sole supported mode
This restored proper behavior for both device types in my environment.
Your environment
Installation method
Home Assistant OS
Core
2026.3.3
Supervisor
2026.03.2
Operating System
17.1
Frontend
20260312.0
Affected devices
- White-only bulbs:
msl100d
- Color bulbs:
msl120d
- Color bulbs:
msl120da
Logs taken when the issue happened
I do not have active logs from when the issue occurred.
Observed behavior:
- When the issue was present, the affected bulbs showed as unavailable in Home Assistant.
- Before applying the white-bulb fix, the unavailable devices were the white-only
msl100d bulbs.
- After applying the fix broadly, the unavailable devices became the color bulbs
msl120d and msl120da.
Additional context
It looks like Home Assistant 2026.x is stricter about valid supported color mode combinations.
The issue appears to be that ColorMode.BRIGHTNESS cannot be advertised alongside RGB or COLOR_TEMP. Restricting BRIGHTNESS to white-only dimmable bulbs resolved the problem in my environment.
I’m including the code path below because it resolved the issue for me, and I wanted to share it for maintainer and community review to confirm whether this is the correct long-term fix for mixed white-only and color-capable Meross bulbs under Home Assistant 2026.x.
Suggested fix for review
Below is the logic that resolved it for me in LightEntityWrapper.
supported_color_modes
@property
def supported_color_modes(self) -> set[ColorMode] | set[str] | None:
"""
Home Assistant requires BRIGHTNESS to be the only mode when used.
So:
- RGB/COLOR_TEMP bulbs must not also advertise BRIGHTNESS
- white-only dimmable bulbs should use BRIGHTNESS
- plain on/off bulbs use ONOFF
"""
res = set()
if self._device.get_supports_rgb(channel=self._channel_id):
res.add(ColorMode.RGB)
if self._device.get_supports_temperature(channel=self._channel_id):
res.add(ColorMode.COLOR_TEMP)
if not res and self._device.get_supports_luminance(channel=self._channel_id):
res.add(ColorMode.BRIGHTNESS)
if not res:
res.add(ColorMode.ONOFF)
return res
color_mode
@property
def color_mode(self) -> ColorMode | str | None:
"""
Report the most appropriate active mode.
"""
rgb = None
temp = None
if self._device.get_supports_rgb(channel=self._channel_id):
rgb = self._device.get_rgb_color(channel=self._channel_id)
if self._device.get_supports_temperature(channel=self._channel_id):
temp = self._device.get_color_temperature()
if rgb is not None and isinstance(rgb, tuple) and len(rgb) == 3:
return ColorMode.RGB
if temp is not None:
return ColorMode.COLOR_TEMP
if self._device.get_supports_luminance(channel=self._channel_id):
return ColorMode.BRIGHTNESS
return ColorMode.ONOFF
This change allowed:
msl100d to work again as white-only dimmable bulbs
msl120d and msl120da to remain functional as color-capable bulbs
Attaching my full light.py file incase it helps for further context
light.py.new.txt
Describe the bug
After updating Home Assistant to 2026.3.1+, my Meross white-only bulbs (
msl100d) became unavailable in Home Assistant.I then applied the fix referenced in PR #591 to address the white bulb issue, and that restored the white-only bulbs. However, after making that change, my color bulbs (
msl120dandmsl120da) became unavailable instead.From testing, the problem appears to be that the white-bulb fix was applied too broadly. White-only dimmable bulbs need to report
ColorMode.BRIGHTNESS, but color-capable bulbs should not advertiseBRIGHTNESStogether withRGBand/orCOLOR_TEMP.In my setup:
Before the change:
msl120dandmsl120dacolor bulbs worked normallymsl100dwhite-only bulbs were unavailableAfter applying the PR Fix invalid LightEntity color mode for HA 2026 (ColorMode.WHITE -> BRIGHTNESS) #591-style change broadly:
msl100dwhite-only bulbs worked againmsl120dandmsl120dacolor bulbs became unavailableI was able to resolve the issue by changing the light entity logic so that:
ColorMode.BRIGHTNESSRGBand/orCOLOR_TEMPBRIGHTNESSis only used when it is the sole supported modeThis restored proper behavior for both device types in my environment.
Your environment
Installation method
Home Assistant OS
Core
2026.3.3
Supervisor
2026.03.2
Operating System
17.1
Frontend
20260312.0
Affected devices
msl100dmsl120dmsl120daLogs taken when the issue happened
I do not have active logs from when the issue occurred.
Observed behavior:
msl100dbulbs.msl120dandmsl120da.Additional context
It looks like Home Assistant 2026.x is stricter about valid supported color mode combinations.
The issue appears to be that
ColorMode.BRIGHTNESScannot be advertised alongsideRGBorCOLOR_TEMP. RestrictingBRIGHTNESSto white-only dimmable bulbs resolved the problem in my environment.I’m including the code path below because it resolved the issue for me, and I wanted to share it for maintainer and community review to confirm whether this is the correct long-term fix for mixed white-only and color-capable Meross bulbs under Home Assistant 2026.x.
Suggested fix for review
Below is the logic that resolved it for me in
LightEntityWrapper.supported_color_modescolor_modeThis change allowed:
msl100dto work again as white-only dimmable bulbsmsl120dandmsl120dato remain functional as color-capable bulbsAttaching my full light.py file incase it helps for further context
light.py.new.txt