Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

LV-PUR131S Returning Text Value for Air_Quality #165

Open
BrettEBowman opened this issue Sep 14, 2023 · 7 comments
Open

LV-PUR131S Returning Text Value for Air_Quality #165

BrettEBowman opened this issue Sep 14, 2023 · 7 comments
Labels
wontfix This will not be worked on

Comments

@BrettEBowman
Copy link

My system log is showing this error for the vesync air quality value. I believe this is why it is no longer being reported in HA.

Source: components/sensor/__init__.py:595
Integration: Sensor (documentation, issues)
First occurred: 3:37:03 PM (6 occurrences)
Last logged: 3:51:33 PM

Error adding entities for domain sensor with platform vesync
Error while setting up vesync platform for sensor
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 593, in state
    numerical_value = float(value)  # type:ignore[arg-type]
                      ^^^^^^^^^^^^
ValueError: could not convert string to float: 'Excellent'

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

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 510, in async_add_entities
    await asyncio.gather(*tasks)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 750, in _async_add_entity
    await entity.add_to_platform_finish()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1004, in add_to_platform_finish
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 746, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 808, in _async_write_ha_state
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 752, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 595, in state
    raise ValueError(
ValueError: Sensor sensor.air_purifier_air_quality has device class 'aqi', state class 'measurement' unit 'None' and suggested precision 'None' thus indicating it has a numeric value; however, it has the non-numeric value: 'Excellent' (<class 'str'>)

Do you have the LV-PUR131S by any chance?

Originally posted by @vlebourl in #160 (comment)

Yes! My unit is an LV-PUR131S. I will share it with you so that you can test it.

@BrettEBowman
Copy link
Author

I'm getting that same error about telling the user to upgrade to the latest version for both of your addresses. I wonder if it is because when you connect from HA with the pyvesync library it makes their system think that you are using an older version.

At any rate, can you create a new account for me to share with?

@BrettEBowman
Copy link
Author

BrettEBowman commented Sep 14, 2023

I just updated to the latest 1.1.1 release and am still getting the same error.

I also noticed in the system logs (and device entities) that there is a problem with the Display switch:

Source: custom_components/vesync/switch.py:177
Integration: Switch (documentation, issues)
First occurred: 11:07:39 AM (3 occurrences)
Last logged: 11:07:39 AM

Error adding entities for domain switch with platform vesync
vesync: Error on device update!
Error while setting up vesync platform for switch
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 507, in async_add_entities
    await asyncio.gather(*tasks)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 752, in _async_add_entity
    await entity.add_to_platform_finish()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1002, in add_to_platform_finish
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 730, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 830, in _async_write_ha_state
    state, attr = self._async_generate_attributes()
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 771, in _async_generate_attributes
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 736, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1238, in state
    if (is_on := self.is_on) is None:
                 ^^^^^^^^^^
  File "/config/custom_components/vesync/switch.py", line 177, in is_on
    return self.device.details["display"]
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'display'

@bubbleytea
Copy link

+1 seeing the same error about the display switch in the logs

@mikelykzit
Copy link

I'm seeing the same thing as well as HA crashing (hopefully unrelated?) so I reverted to the Core/native Home Assistant Vesync integration. Air quality for the LV-PUR131S is reflected properly there, but I lose out on my other humidifier data/automations.

Is there a way to mimic the process that Core uses for air quality to update this HACS addon?

@vlebourl vlebourl added the wontfix This will not be worked on label Oct 18, 2023
@vlebourl
Copy link
Owner

Unfortunately, I no longer have time to maintain this repo. I am therefore looking for someone to take it over before archiving it.

Copy link
Contributor

'There hasn't been any activity on this issue recently. Is this issue still present?
Please make sure to update to the latest Home Assistant version and version of this integration to see if that solves the issue. Let us know if that works for you by adding a comment 👍.
This issue now has been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.'

@latez
Copy link

latez commented Nov 21, 2023

Sadly, this is still an issue and without this reading it makes this integration unusable presently - hoping a compassionate community member takes over! Is there any chance your added features get merged into the main VeSync integration? Would love to see that happen - either way thank you very much for your contributions @vlebourl

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

5 participants