bramstroker / homeassistant-powercalc

Custom component to calculate estimated power consumption of lights and other appliances
MIT License
1.01k stars 261 forks source link

Tapo L900 light strip power meters became unavailable #2147

Closed seba1337 closed 6 months ago

seba1337 commented 7 months ago

System Health details

System Information

version core-2024.3.1
installation_type Home Assistant Supervised
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.12.2
os_name Linux
os_version 6.1.0-rpi7-rpi-v8
arch aarch64
timezone Europe/Berlin
config_dir /config
Home Assistant Community Store GitHub API | ok -- | -- GitHub Content | ok GitHub Web | ok GitHub API Calls Remaining | 4979 Installed Version | 1.34.0 Stage | running Available Repositories | 1474 Downloaded Repositories | 23 HACS Data | ok
Home Assistant Cloud logged_in | false -- | -- can_reach_cert_server | ok can_reach_cloud_auth | ok can_reach_cloud | ok
Home Assistant Supervisor host_os | Debian GNU/Linux 12 (bookworm) -- | -- update_channel | stable supervisor_version | supervisor-2024.03.0 agent_version | 1.6.0 docker_version | 24.0.7 disk_total | 938.5 GB disk_used | 47.4 GB healthy | true supported | failed to load: Unsupported supervisor_api | ok version_api | ok installed_addons | Terminal & SSH (9.10.0), Silicon Labs Multiprotocol (2.4.4), Silicon Labs Flasher (0.2.0), Matter Server (5.4.1), Spotify Connect (0.13.0), Log Viewer (0.17.0), Studio Code Server (5.15.0), VLC (0.3.0), Mosquitto broker (6.4.0)
Dashboards dashboards | 5 -- | -- resources | 3 views | 4 mode | storage
Recorder oldest_recorder_run | 14 March 2024 at 08:50 -- | -- current_recorder_run | 22 March 2024 at 08:11 estimated_db_size | 507.19 MiB database_engine | sqlite database_version | 3.44.2
Spotify api_endpoint_reachable | ok -- | --

Checklist

Describe the issue

On 14th march TP-Link Tapo L900 power/energy entities stopped working. I have two such strips, both stopped working. Works for normal lights L530E. I use the Tapo implementation from HACS.

Reproduction steps

  1. Create a power sensor for Tapo L900 with HACS version of Tapo.

Debug logs

2024-03-22 08:12:10.497 ERROR (MainThread) [custom_components.powercalc.sensors.power] light.hallway_light: Skipping sensor setup: No lookup file found for mode: color_temp
2024-03-22 08:12:10.497 ERROR (MainThread) [custom_components.powercalc.sensor] No energy sensor created for config_entry 44edcaa8b058cfa843657b42be6da0bc
2024-03-22 08:12:10.499 ERROR (MainThread) [custom_components.powercalc.sensors.power] light.sofa_light: Skipping sensor setup: No lookup file found for mode: color_temp
2024-03-22 08:12:10.500 ERROR (MainThread) [custom_components.powercalc.sensor] No energy sensor created for config_entry 9238bdb8a53738bb22d437b92480523b
2024-03-22 08:12:12.401 WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'hacs' accesses hass.components.frontend. This is deprecated and will stop working in Home Assistant 2024.9, it should be updated to import functions used from frontend directly at custom_components/hacs/frontend.py, line 68: hass.components.frontend.async_register_built_in_panel(, please create a bug report at https://github.com/hacs/integration/issues
2024-03-22 08:12:12.906 WARNING (MainThread) [homeassistant.components.light] None (<class 'custom_components.tapo.light.TapoLight'>) sets invalid supported color modes {<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.BRIGHTNESS: 'brightness'>, <ColorMode.HS: 'hs'>, <ColorMode.ONOFF: 'onoff'>}, this will stop working in Home Assistant Core 2025.3, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
2024-03-22 08:12:12.926 WARNING (MainThread) [homeassistant.components.light] None (<class 'custom_components.tapo.light.TapoLight'>) sets invalid supported color modes {<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.BRIGHTNESS: 'brightness'>, <ColorMode.HS: 'hs'>, <ColorMode.ONOFF: 'onoff'>}, this will stop working in Home Assistant Core 2025.3, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
2024-03-22 08:12:12.944 WARNING (MainThread) [homeassistant.components.light] None (<class 'custom_components.tapo.light.TapoLight'>) sets invalid supported color modes {<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.BRIGHTNESS: 'brightness'>, <ColorMode.HS: 'hs'>, <ColorMode.ONOFF: 'onoff'>}, this will stop working in Home Assistant Core 2025.3, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
2024-03-22 08:12:12.966 WARNING (MainThread) [homeassistant.components.light] None (<class 'custom_components.tapo.light.TapoLight'>) sets invalid supported color modes {<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.BRIGHTNESS: 'brightness'>, <ColorMode.HS: 'hs'>, <ColorMode.ONOFF: 'onoff'>}, this will stop working in Home Assistant Core 2025.3, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
2024-03-22 08:12:12.982 WARNING (MainThread) [homeassistant.components.light] None (<class 'custom_components.tapo.light.TapoLight'>) sets invalid supported color modes {<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.BRIGHTNESS: 'brightness'>, <ColorMode.HS: 'hs'>, <ColorMode.ONOFF: 'onoff'>}, this will stop working in Home Assistant Core 2025.3, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues

Diagnostics dump or YAML config

No response

bramstroker commented 7 months ago

hmm, this change has side effects for Powercalc :-( Also see https://github.com/bramstroker/homeassistant-powercalc/issues/2142, where other integration / light causes similar problems now.

Fact is previously Tapo L900 only reported hs as possible color_mode of the light. That is the color mode for color control. However now the entity suddenly also reports color_temp. This breaks powercalc as there are no measurements made for this color mode. The check No lookup file found for mode is raised upfront during powercalc sensor setup to report issues in early stage, but this error causes the powercalc sensor to not be setup at all.

Not sure how to resolve yet. I'm tempted to just remove the validation on startup all toghether. But than problems will arise whenever a user puts this light on color_temp.

Could you try if color_temp mode is working at all for this lightstrip? Might be that it is falsly reported as a supported_color mode.

bramstroker commented 7 months ago

It's even worse than that, because TapoLight reports following color_modes:

{<ColorMode.COLOR_TEMP: 'color_temp'>, <ColorMode.BRIGHTNESS: 'brightness'>, <ColorMode.HS: 'hs'>, <ColorMode.ONOFF: 'onoff'>}

That combination should never be possible at all. brightness and onoff should be only supported color mode of it's own and never be mixed. According to HA specifications: https://developers.home-assistant.io/docs/core/entity/light/#color-modes

So the main issue is in TapoLight integration which is reporting wrong color modes for the light. I would suggest you to raise an issue in TapoLight repository as this error with the color modes should be fixed in that integration. https://github.com/petretiandrea/home-assistant-tapo-p100/issues

bramstroker commented 7 months ago

Related issue: https://github.com/petretiandrea/home-assistant-tapo-p100/issues/727

github-actions[bot] commented 6 months ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

CloCkWeRX commented 6 months ago

Fixed upstream