wlcrs / huawei_solar

Home Assistant integration for Huawei Solar inverters via Modbus
GNU Affero General Public License v3.0
530 stars 85 forks source link

[Bug]: Checkbox for elevate permissions ticked but no question for password #546

Closed firebowl closed 2 months ago

firebowl commented 9 months ago

Describe the issue

I never got asked for the admin password. I uninstalled, restarted HASS an reinstalled the integration but never got asked for the password. I am using a TCP connection. Everything is working fine with the integration, except the features that need the installer account and password.

Bescribe your Huawei Solar Setup

Inverter Type: SUN2000-5KTL-M1GIN300-5KTL-M1 Inverter Firmware version: V100R001C00SPC153 SDongle present: yes SDongle Firmware version: V100R001C00SPC133 Power meter present: three phase / single phase / no Battery: LUNA2000 10kWh Battery Firmware version: V100R002C00SPC119

How do you connect to the inverter?

Via the SDongle, wireless connection

Upload your Diagnostics File

Drag & Drop your Diagnostics File here. config_entry-huawei_solar-ea0a96c289924ded6c267b9cc54f5191.json (1).txt

Upload your relevant debug logs

2023-11-23 06:40:42.789 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration iphonedetect which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:40:42.790 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:40:42.790 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration meross_lan which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:40:42.791 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration fusion_solar which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:40:42.792 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration huawei_solar which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:40:42.792 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration ecoflow_cloud which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:40:42.793 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration toyota which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2023-11-23 06:41:34.556 WARNING (MainThread) [homeassistant.components.sensor] Setup of sensor platform huawei_solar is taking over 10 seconds.
2023-11-23 06:41:36.680 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template<template=({{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}) renders=2>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1925, in forgiving_float_filter
    return float(value)
           ^^^^^^^^^^^^
ValueError: could not convert string to float: 'unknown'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 568, in async_render
    render_result = _render_with_context(self.template, compiled, **kwargs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 2231, in _render_with_context
    return template.render(**kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "<template>", line 1, in top-level template code
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1928, in forgiving_float_filter
    raise_no_default("float", value)
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1626, in raise_no_default
    raise ValueError(
ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}' but no default was specified

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 694, in async_render_to_info
    render_info._result = self.async_render(
                          ^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 570, in async_render
    raise TemplateError(err) from err
homeassistant.exceptions.TemplateError: ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}' but no default was specified
2023-11-23 06:41:36.686 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}) renders=4>' for attribute '_attr_native_value' in entity 'sensor.energy_pv'
2023-11-23 06:41:36.687 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template<template=({{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}) renders=2>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1925, in forgiving_float_filter
    return float(value)
           ^^^^^^^^^^^^
ValueError: could not convert string to float: 'unknown'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 568, in async_render
    render_result = _render_with_context(self.template, compiled, **kwargs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 2231, in _render_with_context
    return template.render(**kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "<template>", line 1, in top-level template code
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1928, in forgiving_float_filter
    raise_no_default("float", value)
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1626, in raise_no_default
    raise ValueError(
ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}' but no default was specified

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 694, in async_render_to_info
    render_info._result = self.async_render(
                          ^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 570, in async_render
    raise TemplateError(err) from err
homeassistant.exceptions.TemplateError: ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}' but no default was specified
2023-11-23 06:41:36.690 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unknown' when rendering template '{{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}) renders=4>' for attribute '_attr_native_value' in entity 'sensor.energy_pv_daily'
2023-11-23 06:41:36.706 WARNING (MainThread) [homeassistant.components.netatmo] Webhook not registered - https and port 443 is required to register the webhook
2023-11-23 07:10:10.430 WARNING (Recorder) [homeassistant.components.sensor.recorder] Entity sensor.watermeter_raw from integration mqtt has state class total_increasing, but its state is not strictly increasing. Triggered by state 00256.2 (266.2) with last_updated set to 2023-11-23T06:06:57.901366+00:00. Please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+mqtt%22
2023-11-23 07:36:57.686 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N6.2'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N6.2'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N6.2' (<class 'str'>)
2023-11-23 07:51:57.583 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 08:46:57.563 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N6.2'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N6.2'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N6.2' (<class 'str'>)
2023-11-23 11:20:10.431 WARNING (Recorder) [homeassistant.components.sensor.recorder] Entity sensor.energy_pv from integration template has state class total_increasing, but its state is not strictly increasing. Triggered by state 7749.58 (7749.66) with last_updated set to 2023-11-23T10:17:02.707426+00:00. Please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+template%22
2023-11-23 11:20:10.431 WARNING (Recorder) [homeassistant.components.sensor.recorder] Entity sensor.energy_pv_daily from integration template has state class total_increasing, but its state is not strictly increasing. Triggered by state 1.12 (1.2) with last_updated set to 2023-11-23T10:17:02.707767+00:00. Please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+template%22
2023-11-23 12:23:50.007 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter f7e39f56fb3c458fa8ddc83de71d004b
2023-11-23 12:23:50.264 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter 83384cc73fa748de86beba0572a5b422
2023-11-23 12:24:40.698 ERROR (Thread-3 (_thread_main)) [custom_components.ecoflow_cloud.mqtt.ecoflow_mqtt] Unexpected MQTT disconnection: 16. Will auto-reconnect
2023-11-23 12:24:45.698 ERROR (Thread-3 (_thread_main)) [custom_components.ecoflow_cloud.mqtt.ecoflow_mqtt] Unexpected MQTT disconnection: 16. Will auto-reconnect
2023-11-23 12:24:48.132 ERROR (MainThread) [homeassistant.components.roborock.coordinator] Error fetching roborock data: Failed connecting to 192.168.178.84
2023-11-23 12:25:01.710 ERROR (SyncWorker_5) [custom_components.ecoflow_cloud.mqtt.ecoflow_mqtt] [Errno -3] Try again
2023-11-23 12:25:21.807 WARNING (Thread-2 (_thread_main)) [roborock.cloud_api] [WALL-E] Client or broker did not communicate in the keepalive interval.
2023-11-23 12:25:21.807 WARNING (Thread-2 (_thread_main)) [roborock.cloud_api] [WALL-E] Client or broker did not communicate in the keepalive interval.
2023-11-23 12:25:30.390 ERROR (SyncWorker_10) [custom_components.ecoflow_cloud.mqtt.ecoflow_mqtt] [Errno -3] Try again
2023-11-23 12:26:00.391 ERROR (SyncWorker_8) [custom_components.ecoflow_cloud.mqtt.ecoflow_mqtt] [Errno -3] Try again
2023-11-23 12:31:56.820 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 12:42:17.754 ERROR (MainThread) [homeassistant.components.homeassistant_alerts] Timeout fetching homeassistant_alerts data
2023-11-23 12:56:57.012 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 13:16:56.885 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N1.5'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N1.5'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N1.5' (<class 'str'>)
2023-11-23 13:21:56.841 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 13:31:56.868 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 13:36:10.752 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-23 13:36:10.754 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-23 13:43:49.794 WARNING (MainThread) [custom_components.meross_lan] MerossDevice(Smart Switch (2012229371464390837648e1e9435f24)): incorrect timestamp: 4294966 seconds behind HA
2023-11-23 13:51:56.632 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0025N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0025N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0025N.N' (<class 'str'>)
2023-11-23 14:16:56.705 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 14:41:56.642 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'0026N.N'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '0026N.N'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '0026N.N' (<class 'str'>)
2023-11-23 15:12:17.753 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-23 15:12:17.754 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-23 15:12:17.755 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-23 16:05:55.127 ERROR (MainThread) [homeassistant.components.roborock.coordinator] Error fetching roborock data: id=26244 Timeout after 4 seconds
2023-11-23 16:49:39.931 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter f7e39f56fb3c458fa8ddc83de71d004b
2023-11-23 16:49:41.162 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter 83384cc73fa748de86beba0572a5b422
2023-11-23 17:06:56.288 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-23 20:31:55.744 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-23 21:36:29.127 ERROR (MainThread) [homeassistant.components.roborock.coordinator] Error fetching roborock data: id=15264 Timeout after 4 seconds
2023-11-23 21:36:55.709 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-23 23:20:37.008 ERROR (MainThread) [custom_components.huawei_solar] Timeout fetching TA2210025607_data_update_coordinator data
2023-11-23 23:20:37.017 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}) renders=394>' for attribute '_attr_native_value' in entity 'sensor.energy_pv'
2023-11-23 23:20:37.017 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}) renders=392>' for attribute '_attr_native_value' in entity 'sensor.energy_pv_daily'
2023-11-23 23:21:55.243 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-23 23:25:14.580 INFO (MainThread) [backoff] Backing off _do_read(...) for 1.0s (huawei_solar.exceptions.SlaveBusyException: Mismatch between number of requested registers (28) and number of received registers (1))
2023-11-23 23:25:15.958 ERROR (MainThread) [custom_components.huawei_solar] Error fetching TA2210025607_data_update_coordinator data: Could not update TA2210025607 values: Got error while reading from register 37760 with length 28: Exception Response(131, 3, IllegalAddress)
2023-11-23 23:25:15.966 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}) renders=398>' for attribute '_attr_native_value' in entity 'sensor.energy_pv'
2023-11-23 23:25:15.967 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}) renders=396>' for attribute '_attr_native_value' in entity 'sensor.energy_pv_daily'
2023-11-23 23:26:39.009 ERROR (MainThread) [custom_components.huawei_solar] Timeout fetching TA2210025607_data_update_coordinator data
2023-11-23 23:26:39.019 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_total_yield') | float) - (states('sensor.battery_total_discharge') | float) + (states('sensor.battery_total_charge') | float) }}) renders=402>' for attribute '_attr_native_value' in entity 'sensor.energy_pv'
2023-11-23 23:26:39.020 ERROR (MainThread) [homeassistant.components.template.template_entity] TemplateError('ValueError: Template error: float got invalid input 'unavailable' when rendering template '{{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}' but no default was specified') while processing template 'Template<template=({{ (states('sensor.inverter_daily_yield') | float) - (states('sensor.battery_day_discharge') | float) + (states('sensor.battery_day_charge') | float) }}) renders=400>' for attribute '_attr_native_value' in entity 'sensor.energy_pv_daily'
2023-11-24 00:06:55.192 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-24 00:23:45.930 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter f7e39f56fb3c458fa8ddc83de71d004b
2023-11-24 00:23:46.162 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter 83384cc73fa748de86beba0572a5b422
2023-11-24 00:31:55.126 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-24 01:01:54.932 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-24 01:10:50.931 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter f7e39f56fb3c458fa8ddc83de71d004b
2023-11-24 01:10:51.161 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter 83384cc73fa748de86beba0572a5b422
2023-11-24 01:55:27.162 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter 83384cc73fa748de86beba0572a5b422
2023-11-24 01:55:28.000 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter f7e39f56fb3c458fa8ddc83de71d004b
2023-11-24 03:07:59.184 ERROR (MainThread) [homeassistant.components.roborock.coordinator] Error fetching roborock data: Failed connecting to 192.168.178.84
2023-11-24 04:01:54.508 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-24 05:21:54.763 ERROR (MainThread) [homeassistant.components.mqtt.models] Exception raised when updating state of sensor.watermeter_raw, topic: 'watermeter/main/raw' with payload: b'002N7.0'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 621, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: '002N7.0'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/mqtt/models.py", line 305, in process_write_state_requests
    entity.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 743, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 843, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 784, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 749, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 623, in state
    raise ValueError(
ValueError: Sensor sensor.watermeter_raw has device class 'None', state class 'total_increasing' unit 'm³' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: '002N7.0' (<class 'str'>)
2023-11-24 06:05:02.163 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter 83384cc73fa748de86beba0572a5b422
2023-11-24 06:05:02.931 ERROR (MainThread) [homeassistant.components.discovergy.coordinator] Error fetching discovergy data: Error while fetching last reading for meter f7e39f56fb3c458fa8ddc83de71d004b
2023-11-24 06:21:34.753 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-24 06:21:34.754 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-24 06:21:35.753 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-24 06:41:27.752 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-24 06:41:27.753 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-24 06:41:27.754 WARNING (MainThread) [pyatv.protocols.mrp] Artwork not present in response
2023-11-24 06:42:06.705 ERROR (MainThread) [homeassistant.components.analytics] Timeout sending analytics to https://analytics-api.home-assistant.io/v1
2023-11-24 06:54:22.693 DEBUG (MainThread) [pymodbus.logging] recv: 0x37 0x98 0x0 0x0 0x0 0x4f 0x1 0x3 0x4c 0x0 0x1 0x0 0x0 0x9 0x18 0x0 0x0 0x9 0x16 0x0 0x0 0x9 0x16 0xff 0xff 0xff 0x8e 0xff 0xff 0xff 0x9d 0xff 0xff 0xff 0x9a 0xff 0xff 0xfe 0x70 0x0 0x0 0x1 0xd6 0xfd 0xdf 0x13 0x83 0x0 0x5 0xee 0x19 0x0 0x2 0x80 0xfd 0x0 0x0 0x0 0x0 0x0 0x1 0x0 0x0 0xf 0xbf 0x0 0x0 0xf 0xbb 0x0 0x0 0xf 0xbf 0xff 0xff 0xff 0x82 0xff 0xff 0xff 0x9e 0xff 0xff 0xff 0x50 old_data:  addr=None
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] Processing: 0x37 0x98 0x0 0x0 0x0 0x4f 0x1 0x3 0x4c 0x0 0x1 0x0 0x0 0x9 0x18 0x0 0x0 0x9 0x16 0x0 0x0 0x9 0x16 0xff 0xff 0xff 0x8e 0xff 0xff 0xff 0x9d 0xff 0xff 0xff 0x9a 0xff 0xff 0xfe 0x70 0x0 0x0 0x1 0xd6 0xfd 0xdf 0x13 0x83 0x0 0x5 0xee 0x19 0x0 0x2 0x80 0xfd 0x0 0x0 0x0 0x0 0x0 0x1 0x0 0x0 0xf 0xbf 0x0 0x0 0xf 0xbb 0x0 0x0 0xf 0xbf 0xff 0xff 0xff 0x82 0xff 0xff 0xff 0x9e 0xff 0xff 0xff 0x50
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] Factory Response[ReadHoldingRegistersResponse': 3]
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] Getting transaction 14232
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] [1, 0, 2328, 0, 2326, 0, 2326, 65535, 65422, 65535, 65437, 65535, 65434, 65535, 65136, 0, 470, 64991, 4995, 5, 60953, 2, 33021, 0, 0, 1, 0, 4031, 0, 4027, 0, 4031, 65535, 65410, 65535, 65438, 65535, 65360]
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\t\x18']
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\t\x16']
2023-11-24 06:54:22.694 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\t\x16']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xff\x8e']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xff\x9d']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xff\x9a']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xfep']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x01\xd6']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x05', b'\xee\x19']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x02', b'\x80\xfd']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x00\x00']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x0f\xbf']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x0f\xbb']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x0f\xbf']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xff\x82']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xff\x9e']
2023-11-24 06:54:22.695 DEBUG (MainThread) [pymodbus.logging] handle: [b'\xff\xff', b'\xffP']
2023-11-24 06:54:22.746 DEBUG (MainThread) [huawei_solar.huawei_solar] Reading register 37760 with length 28 from slave 1
2023-11-24 06:54:22.746 DEBUG (MainThread) [pymodbus.logging] send: 0x37 0x99 0x0 0x0 0x0 0x6 0x1 0x3 0x93 0x80 0x0 0x1c
2023-11-24 06:54:22.747 DEBUG (MainThread) [pymodbus.logging] Adding transaction 14233
2023-11-24 06:54:23.400 DEBUG (MainThread) [pymodbus.logging] recv: 0x37 0x99 0x0 0x0 0x0 0x3b 0x1 0x3 0x38 0x0 0x32 0x0 0x0 0x0 0x4 0xff 0xff 0x7f 0xff 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x3 0x82 0x62 0x0 0x3 0x6a 0xf2 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 old_data:  addr=None
2023-11-24 06:54:23.400 DEBUG (MainThread) [pymodbus.logging] Processing: 0x37 0x99 0x0 0x0 0x0 0x3b 0x1 0x3 0x38 0x0 0x32 0x0 0x0 0x0 0x4 0xff 0xff 0x7f 0xff 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x3 0x82 0x62 0x0 0x3 0x6a 0xf2 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] Factory Response[ReadHoldingRegistersResponse': 3]
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] Getting transaction 14233
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] [50, 0, 4, 65535, 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 33378, 3, 27378, 0, 0, 0, 0]
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x00\x00']
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x03', b'\x82b']
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x03', b'j\xf2']
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x00\x00']
2023-11-24 06:54:23.401 DEBUG (MainThread) [pymodbus.logging] handle: [b'\x00\x00', b'\x00\x00']

Please confirm the following:

firebowl commented 9 months ago

Help? Nobody an idea? 🥲

Kugelfang666 commented 9 months ago

I don’t remember having to input the PW. I’m also connecting via TCP to the dongle with elevated permissions and ist working fine with me

firebowl commented 9 months ago

Can you change settings like min SOC? If I change them in HASS, nothing happens in the fusion app. Charge / discharge mode is greyed out.

Kugelfang666 commented 9 months ago

yep I can both min SoC and AC charging are adjustable from within HA for me

firebowl commented 9 months ago

Strange, I cannot use this options. 🥲

firebowl commented 8 months ago

Does no one really have any ideas? I have now uninstalled the integration again, restarted HASS and reinstalled and set it up again. I just don't get a question about the password. Can I enter the password manually in a config? I have found an entry for user and password in constant.py, but is it enough to adjust the entry there?

image

To me, this reads like default values and not like the current ones. I also have to select slave 1 instead of 0 during the installation (network) in order to be able to address my inverter. In the const.py the default value is still 0, so I assume that these are only default values and not the current values.

jires commented 8 months ago

If you want to change parameters, you have to do it inside config entry here: /homeassistant/.storage/core.config_entries

When I installed mine, long time ago, I've ticked elevated permission also, and never been asked for user and password, but all functions working as expected. My config looks like this:

      {
        "entry_id": "cfc256bc12e768c9e9f3379cb7f0f2f3",
        "version": 1,
        "domain": "huawei_solar",
        "title": "SUN2000-10KTL-M1\u000001074300-002",
        "data": {
          "host": "192.168.[REDACTED]",
          "port": 502,
          "slave_ids": [
            2
          ],
          "enable_parameter_configuration": true,
          "username": null,
          "password": null
        },
        "options": {},
        "pref_disable_new_entities": false,
        "pref_disable_polling": false,
        "source": "user",
        "unique_id": "HV[REDACTED]",
        "disabled_by": null
      },
firebowl commented 8 months ago

For example, if I activate the "Charge from grid" option, HA shows it as activated but nothing happens. This means that the battery is not charged from the grid. When I look on the Fusion Solar website, the option has not been activated at all. I think this is because no password has been requested and therefore access is read-only. Same behavior when I adjust the minimum SOC, for example. The new value is displayed in the HA but not on the website and the battery charge level also remains unchanged.

I replaced the two "null" with username and password. Unfortunately, HA didn't boot up properly after that and when it did, all devices and integrations were displayed as "not configured". I have now imported a backup.

jires commented 8 months ago

One more thing. You will be asked for password for elevate permissions only, if you have changed default password (00000a). If you connecting via Sdongle, and not directly to inverter wifi, password is still default, even if is changed via device commissioning of inverter. Sdongle has different access control and not sharing password with inverter. So, if you want to check, which password is used, you can log in to sdongle directly (unplug sdongle, wait a while and plug in, when led becomes green, go to device commissioning on the app and scan qr code on sdongle). If default password will be accepted, you don't need to type password to elevate permissions in integration setup.

firebowl commented 8 months ago

Ok, this is important information. I have changed the default password of the inverter but I connect via LAN using the SDongle. Then it should work without a password. But why are the changes I make in the HA not applied?

github-actions[bot] commented 3 months ago

This issue has been automatically marked as stale because it has been open 30 days with no activity. Remove stale label or comment or this issue will be closed in 10 days

github-actions[bot] commented 2 months ago

This issue was automatically closed because of stale in 10 days