Are there any plans to update the official integration for these newer lights? I’m more than happy to help but I just don’t know where to begin.
Is there a way that I can edit the official code on my server to test what is involved? Looking at the python code, there is only a “scene index” difference between LB1 and LB2.
Im also very interested in this as i also have a few LB27 R1 bulbs that im just using the native google intergration to control but would rather use HA for.
I’ve made some manual hacks to the core code on my server and it seems to be working. This will obviously break with the next update.
I’ll do some more testing but if it all goes well I’ll review how it can be contributed.
If you want to try it. REMEMBER the next update will wipe out these changes. This is just a temporary hack.
All changes in this directory:
/usr/src/homeassistant/homeassistant/components/broadlink/
const.py line 34 change to
Platform.LIGHT: {"LB1", "LB2"},
light.py line 33 change to
if device.api.type in {"LB1", "LB2"}:
updater.py insert around line 19
"LB2": BroadlinkLB2UpdateManager,
updater.py add at the end of the file
class BroadlinkLB2UpdateManager(BroadlinkUpdateManager):
"""Manages updates for Broadlink LB2 devices."""
async def async_fetch_data(self):
"""Fetch data from the device."""
return await self.device.async_request(self.device.api.get_state)
Does this work for LB27’s? or are LB27’s the same as LB2’s? i only ask as all i can see in your code is LB1 and LB2. Bit of a newbie to home automation in general.
Yes. This integration uses the base Python Library mjg59/python-broadlink. In there they group LB27s and LB26s as “LB2”.
I got it to work but there are real issues with the FastCon mesh network. See my comment here Add another device to broadlink - #3 by madmat777
I’m trying some network rules to see if I can get around this.