Changes to Airthings Wave+ BLE Integration in 2023.5.0

I didn’t see any notes about it in the release notes, but upgrading to the 2023.5.0 release has removed two sensors from Airthings that were literally there yesterday. These two sensors should be reading “Low” or “Very Low”:

Screenshot 2023-05-04 at 4.07.01 PM

I have four of these that reported this value yesterday, and I have four that no longer do. I can create them with template sensors that evaluate the actual pCi/L readings but I shouldn’t have to.

1 Like

Hi, I can confirm this issue too.

Mine is just not working at all since the last update

Well airthing is back, but bluetooth keep disconnecting (intel card)

Looks like I’ve got the same issue. The log points to a data type conversion happening that presumably wasn’t happening before.

The bug for this is here: Airthing Wave 2 "very low" cannot be casted to float · Issue #92747 · home-assistant/core · GitHub
And looks like the fix might be on its way here: Resolve warnings due to incorrectly defined entities in airthings_ble by doug-hoffman · Pull Request #92097 · home-assistant/core · GitHub

2023-05-20 22:26:41.154 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 581, in state
    numerical_value = float(value)  # type:ignore[arg-type]
ValueError: could not convert string to float: 'moderate'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 204, in _handle_refresh_interval
    await self._async_refresh(log_failures=True, scheduled=True)
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 349, in _async_refresh
    self.async_update_listeners()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 146, in async_update_listeners
    update_callback()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 406, in _handle_coordinator_update
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 585, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 649, in _async_write_ha_state
    state = self._stringify_state(available)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 591, in _stringify_state
    if (state := self.state) is None:
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 583, in state
    raise ValueError(
ValueError: Sensor sensor.airthings_wave_135154_radon_1_day_level has device class None, state class measurement unit None and suggested precision None thus indicating it has a numeric value; however, it has the non-numeric value: moderate (<class 'str'>)
1 Like