Govee integration

Thanks to sagitt on GitHub we have a Logo shown in the integrations page:
see https://github.com/LaggAt/hacs-govee/issues/1

image

According to a discussion/suggestion on Github, I decided to rename to ā€œGoveeā€ integration.

It is clear we support lights currently.
This also opens a wider use if someone wants to extend further to other Govee products.

Update now using HACS :green_heart:

I am not sure when it happened but I read your note of an update and when to update it in HACS and the integration nor repository were there; however the integration was still in the main HA integrations. I never deleted the repository, so I donā€™t know when that, or caused it to happen. Have you heard about this at all?

1 Like

Hmā€¦ HACS regulary checks his repositoriesā€¦ if the costom repo is there you should get the notification earlier or later.

Donā€™t know if it helpsā€¦ when I test the update I sometimes click/open the Govee plugin, up to now it took some seconds for the update to show. I could be wrong and had luck up to now.

i had to manually load into HACS as wellā€¦

1 Like

You mean: manually add the repo? If you mean that, this is correct.

I had to paste the GitHub link into HACS, I could not just search for it. But after that I was able to find the integration and my light strip (same as yours) showed up fine. Thanks for all the work you did on this!

Edit: nevermind, thatā€™s how itā€™s supposed to work I guess. Sorry to bother.

I havenā€™t seen all of this thread, but thereā€™s no way to handle the Bluetooth control is there?

1 Like

yes, as long as we do not make progress on getting accepted as default repository. Something I did not prioritize to have time for other things.

also correct for now, but my current effort shifts in that direction.
I am working on a dev container (I have one running on my PI which BLE support, but the build is so slow which hinders fast development) to make it easy for future developers to progress faster here:
GitHub - LaggAt/ha-devcontainer and Docker

Next I want to refactor the underlying library to provide a unified interface for both transports here:

And hopefully we get simple BLE commands in future (and possibly extend them over time).

Well, that all said, I guarentee nothing :slight_smile:
Iā€™m posting in detail because I hope to find some developer(s) with some spare time, would be fun to pair up on this.

Want to help? Contact me. Fork. Pull Request. Thanks.

Latest update via HACS broke my Govee integration. Was working fine on 2 different Govee LED strips. Now, canā€™t change status and current status not picked up.

How should I proceed to debug this?

2 Likes

Same issue here, been flawless until this morning.

2 Likes

Sorry to hear that. Could you provide debug logs as shown in the first post and step back to the previous version in the meanwhile? What exactly isnā€™t working?

I too am having issues. When you try and turn them off, they switch off, show in HA that they switch off, and then HA shows them back on even tho the lights are still off.

They always toggle back to the same ā€œOnā€ position in HA.

Started happening today.

2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] get_states
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 87 in 0.23123598098754883 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': '69:81:XX:XX:XX:XX', 'model': 'H6110', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 12}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='69:81:XX:XX:XX:XX', model='H6110', device_name='Kitchen LED 1', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=30, color=(255, 71, 6), color_temp=0, timestamp=1618548407.275923, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 97 in 40.223937034606934 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': 'E7:12::XX:XX:XX:XX', 'model': 'H6110', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 12}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='E7:12::XX:XX:XX:XX', model='H6110', device_name='Kitchen LED 2', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=30, color=(255, 71, 6), color_temp=0, timestamp=1618548407.357462, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 96 in 40.16008496284485 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': 'ED:D0::XX:XX:XX:XX', 'model': 'H6110', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 20}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='ED:D0::XX:XX:XX:XX', model='H6110', device_name='Toe Light 1', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=50, color=(255, 71, 6), color_temp=0, timestamp=1618548407.421307, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 95 in 40.09617209434509 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': '70:0F::XX:XX:XX:XX', 'model': 'H6159', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 20}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='70:0F::XX:XX:XX:XX', model='H6159', device_name='Toe Light 2', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=50, color=(255, 71, 6), color_temp=0, timestamp=1618548407.485226, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 99 in 59.96388292312622 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': '6C:3A::XX:XX:XX:XX', 'model': 'H6159', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 20}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='6C:3A::XX:XX:XX:XX', model='H6159', device_name='Toe Kick 3', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=50, color=(255, 71, 6), color_temp=0, timestamp=1618548407.547507, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 98 in 59.90989899635315 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': 'F5:21::XX:XX:XX:XX', 'model': 'H6110', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 78}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='F5:21::XX:XX:XX:XX', model='H6110', device_name='Dry Bar', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=198, color=(255, 71, 6), color_temp=0, timestamp=1618548407.601494, source='api', error=None, lock_set_until=1618548368.969842, lock_get_until=1618548369.969849, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 94 in 39.92178416252136 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': '74:37::XX:XX:XX:XX', 'model': 'H6159', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 9}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='74:37::XX:XX:XX:XX', model='H6159', device_name='Stairs', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=22, color=(255, 71, 6), color_temp=0, timestamp=1618548407.659613, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] Rate limit total: 100, remaining: 97 in 59.792661905288696 seconds
2021-04-15 23:46:47 DEBUG (MainThread) [govee_api_laggat.govee_api_laggat] state returned from API: {'data': {'device': '10:4B::XX:XX:XX:XX', 'model': 'H6110', 'properties': [{'online': 'true'}, {'powerState': 'on'}, {'brightness': 45}, {'color': {'r': 255, 'b': 6, 'g': 71}}]}, 'message': 'Success', 'code': 200}, resulting state object: GoveeDevice(device='10:4B::XX:XX:XX:XX', model='H6110', device_name='Island', controllable=True, retrievable=True, support_cmds=['turn', 'brightness', 'color', 'colorTem'], support_turn=True, support_brightness=True, support_color=True, support_color_tem=True, online=True, power_state=True, brightness=114, color=(255, 71, 6), color_temp=0, timestamp=1618548407.718758, source='api', error=None, lock_set_until=0, lock_get_until=0, learned_set_brightness_max=None, learned_get_brightness_max=100, before_set_brightness_turn_on=False, config_offline_is_off=False)
2021-04-15 23:46:47 DEBUG (MainThread) [custom_components.govee.light] Finished fetching govee data in 0.717 seconds
1 Like

Also having issues today, something must be up, or has changed with the API. I can issue commands to the LEDs, but after 10 seconds when the integration fetches the state from the API, it will show itā€™s off, even though the light is on.

1 Like

Can someone please help
I run my lights via USB from my TV, Iā€™ve just updated and now when I turn the lights off HA shows it on again within a few seconds.

Is there away to resolve this?

1 Like

Hi, think this is all the same.
Just got something like that right now in my system too, Iā€™ll start my dev env to debug it.

Iā€™ll tell you here when an update is ready.

3 Likes

Uhm ā€¦ seems the error isnā€™t on my side ā€¦ I really get the power state as ā€œoffā€.

Interestingly enough, the Govee Home App knows the correct state, even with BLE off.
I wrote Govee API support.

1 Like

Hi, just switched from manual installation to install from HACS but now after install from HACS and restart it can not be found on the integration page. The integration is definitely installed.

Any idea how I can make it visible? Or do I need to switch back to manual installation?

1 Like

Iā€™m having the same behavior as above but slightly different. I can turn lights on or off in HA but icon reverts to ā€œoffā€ state after about 10 secs. Also, if I turn lights on or off from another source, state of light not recognized or changed in HA.

2 Likes

Yes, it depends on your settings how long it takes and if you see two buttons. Itā€™s the same issue.
Hope Govee fixes this soon, and i implement an option you could set on API errors to ignore given attributes when received from API. This should enable you, the users, to work around such issues if needed.