WH46 missing PM1.0 and PM4.0 sensors
The problem
WH46 missing PM1.0 and PM4.0 sensors
What version of Home Assistant Core has the issue?
core-2024.8.3
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant Core
Integration causing the issue
Ecowitt
Link to integration documentation on our website
No response
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
2024-08-25 17:21:00.836 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm1_co2 value 0.8 2024-08-25 17:21:00.837 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm1_24h_co2 value 0.8 2024-08-25 17:21:00.837 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm4_co2 value 1.3 2024-08-25 17:21:00.837 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm4_24h_co2 value 1.3
Additional information
No response
Hey there @pvizeli, mind taking a look at this issue as it has been labeled with an integration (ecowitt) you are listed as a code owner for? Thanks!
Code owner commands
Code owners of ecowitt can trigger bot actions by commenting:
-
@home-assistant closeCloses the issue. -
@home-assistant rename Awesome new titleRenames the issue. -
@home-assistant reopenReopen the issue. -
@home-assistant unassign ecowittRemoves the current integration label and assignees on the issue, add the integration domain after the command. -
@home-assistant add-label needs-more-informationAdd a label (needs-more-information, problem in dependency, problem in custom component) to the issue. -
@home-assistant remove-label needs-more-informationRemove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.
(message by CodeOwnersMention)
ecowitt documentation ecowitt source (message by IssueLinks)
Hi, I agree, Bought The Ecowitt CO2 sensor WH46 it supports also PM4 and PM1.0 would be nice to see those values also in Home assistant. Thanks in advance.
Logger: aioecowitt.server Bron: components/ecowitt/init.py:30 Eerst voorgekomen: 15:21:47 (60 gebeurtenissen) Laatst gelogd: 15:36:01
Unhandled sensor type pm4_24h_co2 value 8.3
Unhandled sensor type pm1_co2 value 8.2
Unhandled sensor type pm1_24h_co2 value 7.7
Unhandled sensor type pm4_co2 value 9.0
Unhandled sensor type pm4_24h_co2 value 8.5
Regards Frank
Same symptom here with WH46
Enregistreur: aioecowitt.server
Source: components/ecowitt/__init__.py:30
S'est produit pour la première fois: 22:58:11 (8 occurrences)
Dernier enregistrement: 22:59:12
Unhandled sensor type pm4_24h_co2 value 3.5
Unhandled sensor type pm1_co2 value 3.0
Unhandled sensor type pm1_24h_co2 value 2.7
Unhandled sensor type pm4_co2 value 4.0
Unhandled sensor type pm4_24h_co2 value 3.6
I am suffering from the same issues :( Brand new Ecowitt WH46 sensor just installed.
Unhandled sensor type pm4_24h_co2 value 3.3 Unhandled sensor type pm1_co2 value 3.0 Unhandled sensor type pm1_24h_co2 value 3.7 Unhandled sensor type pm4_co2 value 4.1 Unhandled sensor type pm4_24h_co2 value 4.5
seems wh46 is not directly supported, only as wh45 (name in HA is wh45)
Yeah, I am getting that same error as well, as of core.2024.11.0
Maybe related: https://github.com/garbled1/homeassistant_ecowitt/issues/173
I looked into the code to fix the issue, but found that for now the HA architecture team is not eager to add PM4 device class support per https://github.com/home-assistant/architecture/discussions/1058, which would be a prerequisite for a proper fix
I have successfully tested local code changes to fix this issue, and can now see all values (PM1/PM4/PM25/PM10) imported properly. I had to define the PM4 sensor as another PM25 device class as a workaround while HA does not support PM4 class yet.
Code changes are required on two separate projects (home-assistant/core and home-assistant-libs/aioecowitt, which is imported by the first one) so the fix requires two distinct PRs: I have issued the first one, which will needs to be approved before I can issue the other one.
Same here with the newly released WH46D:
Logger: aioecowitt.server Source: components/ecowitt/init.py:30 First occurred: 19:52:27 (8 occurrences) Last logged: 19:57:27
Unhandled sensor type pm1_24h_co2 value 3.6 Unhandled sensor type pm4_co2 value 3.1 Unhandled sensor type pm4_24h_co2 value 4.1 Unhandled sensor type pm1_co2 value 4.2 Unhandled sensor type pm4_co2 value 4.5
If any of you want to try my development fork: https://github.com/GSzabados/ecowitt/
WH45/WH46 support just have been implemented.
Many thanks @GSzabados I confirm it smoothly replaced the Ecowitt core integration for me, keeping all existing entities running, adding those that were unsupported until now, and avoiding thousands of daily warnings in the log !
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
While GSZabados' fork at https://github.com/GSzabados/ecowitt/ has fixed this issue, it is still present in HA Core Ecowitt integration so it should remain open imho. For full certainty I re-checked it today with HA Core 2025.7.2 and still have the same warnings logged about unhandled sensors:
2025-07-15 12:52:57.779 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type vpd value 0.390 2025-07-15 12:52:57.825 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm1_co2 value 465.1 2025-07-15 12:52:57.825 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm1_24h_co2 value 47.3 2025-07-15 12:52:57.825 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm4_co2 value 544.7 2025-07-15 12:52:57.825 WARNING (MainThread) [aioecowitt.server] Unhandled sensor type pm4_24h_co2 value 52.9
Hey Guys, thanks been waiting for a while now, still dont understand why it cant be implemented in the core. How can I implement this fix? replace all files? or?
Thanks in advance, Frank
Technically it could easily be implemented in the core. Unfortunately the code owner may not have the time, availability or interest anymore to follow this integration (and its underlying aioecowitt library), which may happen in a FOSS model. The most frustrating is that duly tested code fixes for the core are already submitted by volunteer developers but remain stuck for months without being looked at by the persons who can review/approve them.
The good side of FOSS though is that you can supersede abandoned code. To replace the core Ecowitt integration by GSZabado's fork that fixes this and other issues, you need to install HACS (if not done already), in HACS click the 3 dots on top right, then click "Custom Repositories" and add https://github.com/GSzabados/ecowitt/ as "Integration"-type repository.
Once done, in HACS search for "Ecowitt" and download this one:
then restart HA completely. On next boot, your core Ecowitt will automatically be superseded by the fork. I'm using it for months now without issues. When I switched to it, all my existing Ecowitt entities just kept working as usual, and a few new entities appeared. If for any reason you want to revert to the core integration, just delete this Ecowitt one in HACS and restart HA again.
Thanks amaurylam,
Works like a charm, finally my W46 can show his full purpose ;-)
Regards Frank
Thank you guys, the custom integration works perfect and easily transfers from the core. Is there a chance to show the AQI values or the smile status as well or are they just calculated? Thanks