Philips Air Purifier

Can we explicitly determine if a specific model is supported in Kongo’s integration, or is a CoAP model? I’m in the market for a purifier, and so far have narrowed it down to Philips based on both general reviews, and seemingly the greatest likelihood of integrating well with HA. The 2000i / AC2939/70 model seems to be the most affordable option to meet my needs, but I’m really struggling to understand whether it would integrate nicely after an hour of searching - it looks like support for a similar model - AC2939/10 was added in Betaboon’s repo, which I understand Kongo’s is based on, but I’m not sure if this means the /70 model is also supported.

The integration doesn’t distinguish between the sub models.

Against all odds the connection between HA and my AC2889/10 seems to be fairly stable. Until now it always has reacted to preset or percentage changes.
But the sensor data will get stuck at some point. Even after changing the preset it will not update.
From my testing this always happens after loss off power (moving between outlets) and after some time (a few hours to a day).
However the Air Quality Index (sensor.name_air_quality_index) seems to be stuck at a constant value of 4.0.
I will generate a diagnostic mail next time this happens and report my findings.

1 Like

Hi!
I think I am doing something wrong, but I am unable to run this repository, on my Home Assistant.
I am getting to the point where I need to input the IP of Philips AirPuifier, and that is it- after 10 minutes of “searching” I get an error: unrecognized error occurred".
My Philips is AC279/10, it is in the same LAN as my RPi with Home Assistant OS. Philips is on the static IP.
Is it the connection problem, or am I forgetting to do something obvious?
Please help!

Can you please enable logging and share the result?

I had the same issue while I was able to connect the purifier before.
After I had to reboot my router the purifier was automatically discovered by Home Assistant and I was able to integrate easily. Now I only have the problem that updating status of the device stops after a couple of hours.

I have tried rebooting everything- noting works.
Should I just copy everything from home-assistant.log and paste it here?
Is it safe for me to do so :slight_smile: ?
I am sorry for those questions, but I am complete newbie in home assistant.

You can set the general log level to error and the integration level to debug

Hi!
When i set general to error and integration to debug i got this:

2022-04-21 21:19:03 WARNING (SyncWorker_0) [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
2022-04-21 21:19:03 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration philips_airpurifier_coap 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
2022-04-21 21:19:53 DEBUG (MainThread) [custom_components.philips_airpurifier_coap.config_flow] trying to configure host: 192.168.1.28
2022-04-21 21:19:53 DEBUG (MainThread) [aioairctrl.coap.client] syncing
2022-04-21 21:19:53 DEBUG (MainThread) [coap] Sending request - Token: 713a, Remote: <UDP6EndpointAddress 192.168.1.28>
2022-04-21 21:19:53 DEBUG (MainThread) [coap] Sending message <aiocoap.Message at 0x7f80a758b0: Type.NON POST (MID 44925, token 713a) remote <UDP6EndpointAddress 192.168.1.28>, 1 option(s), 8 byte(s) payload>

And that’s it?

Feels like your device doesn’t reply to the request for whatever reason. Are you sure it is reachable on the network from HA? If you put in a wrong IP that for sure is NOT reachable, does that look the same?

Did any other integration like the one from betaboon ever work for you?

Hi
I also added <homeassistant.components.ssdp> to debug:
2022-04-21 22:13:42 WARNING (SyncWorker_1) [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
2022-04-21 22:13:42 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration philips_airpurifier_coap 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
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] SSDP: ssdp_device: <SsdpDevice(uuid:73796E6F-6473-6D00-0000-0011326be2bb)>, dst: upnp:rootdevice, source: SsdpSource.SEARCH_CHANGED
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] Discovery info: SsdpServiceInfo(upnp={‘deviceType’: ‘urn:philips-com:device:DiProduct:1’, ‘friendlyName’: ‘Sypialnia’, ‘manufacturer’: ‘Royal Philips Electronics’, ‘modelName’: ‘AirPurifier’, ‘modelNumber’: ‘AC2729’, ‘UDN’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ‘cppId’: ‘e8c1d7fffe060657’}, ssdp_usn=‘uuid:12345678-1234-1234-1234-e8c1d7060657::upnp:rootdevice’, ssdp_st=‘upnp:rootdevice’, ssdp_location=‘xttp://192.168.1.28/upnp/description.xml’, ssdp_nt=None, ssdp_udn=‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ssdp_ext=’’, ssdp_server=‘ThreadX/5.6 UPnP/1.1 Sypialnia/3’, ssdp_headers={‘CACHE-CONTROL’: ‘max-age=1800’, ‘EXT’: ‘’, ‘SERVER’: ‘ThreadX/5.6 UPnP/1.1 Sypialnia/3’, ‘ST’: ‘upnp:rootdevice’, ‘USN’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657::upnp:rootdevice’, ‘BOOTID.UPNP.ORx’: ‘3263’, ‘_location_original’: ‘xttp://192.168.1.28/upnp/description.xml’, ‘location’: ‘xttp://192.168.1.28/upnp/description.xml’, ‘_timestamp’: datetime.datetime(2022, 4, 21, 22, 13, 45, 476079), ‘_host’: ‘192.168.1.28’, ‘_port’: 1900, ‘_local_addr’: (‘192.168.1.199’, 42648), ‘_remote_addr’: (‘192.168.1.28’, 1900), ‘_udn’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’}, x_homeassistant_matching_domains={‘deconz’})
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] Discovered deconz at xttp://192.168.1.28/upnp/description.xml
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] SSDP: ssdp_device: <SsdpDevice(uuid:12345678-1234-1234-1234-e8c1d7060657)>, dst: uuid:12345678-1234-1234-1234-e8c1d7060657, source: SsdpSource.SEARCH_CHANGED
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] Discovery info: SsdpServiceInfo(upnp={‘deviceType’: ‘urn:philips-com:device:DiProduct:1’, ‘friendlyName’: ‘Sypialnia’, ‘manufacturer’: ‘Royal Philips Electronics’, ‘modelName’: ‘AirPurifier’, ‘modelNumber’: ‘AC2729’, ‘UDN’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ‘cppId’: ‘e8c1d7fffe060657’}, ssdp_usn=‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ssdp_st=‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ssdp_location=‘xttp://192.168.1.28/upnp/description.xml’, ssdp_nt=None, ssdp_udn=‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ssdp_ext=’’, ssdp_server=‘ThreadX/5.6 UPnP/1.1 Sypialnia/3’, ssdp_headers={‘CACHE-CONTROL’: ‘max-age=1800’, ‘EXT’: ‘’, ‘SERVER’: ‘ThreadX/5.6 UPnP/1.1 Sypialnia/3’, ‘ST’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ‘USN’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ‘BOOTID.UPNP.ORx’: ‘3263’, ‘_location_original’: ‘xttp://192.168.1.28/upnp/description.xml’, ‘location’: ‘xttp://192.168.1.28/upnp/description.xml’, ‘_timestamp’: datetime.datetime(2022, 4, 21, 22, 13, 45, 488337), ‘_host’: ‘192.168.1.28’, ‘_port’: 1900, ‘_local_addr’: (‘192.168.1.199’, 42648), ‘_remote_addr’: (‘192.168.1.28’, 1900), ‘_udn’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’}, x_homeassistant_matching_domains={‘deconz’})
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] Discovered deconz at xttp://192.168.1.28/upnp/description.xml
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] SSDP: ssdp_device: <SsdpDevice(uuid:12345678-1234-1234-1234-e8c1d7060657)>, dst: urn:philips-com:device:DiProduct:1, source: SsdpSource.SEARCH_CHANGED
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] Discovery info: SsdpServiceInfo(upnp={‘deviceType’: ‘urn:philips-com:device:DiProduct:1’, ‘friendlyName’: ‘Sypialnia’, ‘manufacturer’: ‘Royal Philips Electronics’, ‘modelName’: ‘AirPurifier’, ‘modelNumber’: ‘AC2729’, ‘UDN’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ‘cppId’: ‘e8c1d7fffe060657’}, ssdp_usn=‘uuid:12345678-1234-1234-1234-e8c1d7060657::urn:philips-com:device:DiProduct:1’, ssdp_st=‘urn:philips-com:device:DiProduct:1’, ssdp_location=‘xttp://192.168.1.28/upnp/description.xml’, ssdp_nt=None, ssdp_udn=‘uuid:12345678-1234-1234-1234-e8c1d7060657’, ssdp_ext=’’, ssdp_server=‘ThreadX/5.6 UPnP/1.1 Sypialnia/3’, ssdp_headers={‘CACHE-CONTROL’: ‘max-age=1800’, ‘EXT’: ‘’, ‘SERVER’: ‘ThreadX/5.6 UPnP/1.1 Sypialnia/3’, ‘ST’: ‘urn:philips-com:device:DiProduct:1’, ‘USN’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657::urn:philips-com:device:DiProduct:1’, ‘BOOTID.UPNP.ORx’: ‘3263’, ‘_location_original’: ‘xttp://192.168.1.28/upnp/description.xml’, ‘location’: ‘http://192.168.1.28/upnp/description.xml’, ‘_timestamp’: datetime.datetime(2022, 4, 21, 22, 13, 45, 489502), ‘_host’: ‘192.168.1.28’, ‘_port’: 1900, ‘_local_addr’: (‘192.168.1.199’, 42648), ‘_remote_addr’: (‘192.168.1.28’, 1900), ‘_udn’: ‘uuid:12345678-1234-1234-1234-e8c1d7060657’}, x_homeassistant_matching_domains={‘deconz’})
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] Discovered deconz at xttp://192.168.1.28/upnp/description.xml
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] SSDP: ssdp_device: <SsdpDevice(uuid:19968fe0-1dd2-11b2-8a83-0021ffc2806a)>, dst: upnp:rootdevice, source: SsdpSource.SEARCH_CHANGED
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] SSDP: ssdp_device: <SsdpDevice(uuid:19968fe0-1dd2-11b2-8a83-0021ffc2806a)>, dst: uuid:19968fe0-1dd2-11b2-8a83-0021ffc2806a, source: SsdpSource.SEARCH_CHANGED
2022-04-21 22:13:45 DEBUG (MainThread) [homeassistant.components.ssdp] SSDP: ssdp_device: <SsdpDevice(uuid:19968fe0-1dd2-11b2-8a83-0021ffc2806a)>, dst: urn:schemas-upnp-org:device:MediaServer:2, source: SsdpSource.SEARCH_CHANGED

Hm, so your devices seems to be reachable but doesn’t respond to the integration call. Did you try aioairctrl from the command line?

I guess it is the same everywhere, HA no longer receives data.
Could have 2 causes, either philips stops sending, or HA stops receiving.

And I believe it is HA, as:

  • a restart of HA fixes it (most of the time, occasionally more restarts)
  • a restart of the philips does not help
  • when communication stops, it stops for both AC3829 as well as AC1214.
  • philips remains accessible by (cloud) app al the time.

So i think the issue arises when the coap reply of yhe device is timed out… maybe a buffer issue somewhere??

That I also still need to try…but it seems i never get the time to do so (a restart of HA is faster :thinking:)

That is normal. It happens all the time with me. The device stop sending updates to HA, as being a Local Push setup. Try to reload the integration when you cut power to the device. (Or restart HA, but the reload integration should work.)

What is this?
after this one we get a new discovery???

x_homeassistant_matching_domains={‘deconz’} ???

And then again:

source: SsdpSource.SEARCH_CHANGED ??

Hello @kongo09 and thanks for trying to bring this to life! I am a victim of… my own updating :grinning: Things were fine with the betaboon fork that I forked, and just added some bits and pieces as I am not a dev. Long story short - can’t stay with old HA versions, don’t want that, updated HA to Home Assistant 2022.4.6 = no more Philips purifiers for me and all the beautiful entities in cards are “unknown”; they are just dangling there in the Entities section with no way to remove them for now, will eventually look into it. Ah, I have two AC2729/50, in a different VLAN with no internet, wasn’t a problem.

Thingy is - found your work, figured to switch so I added to hacs as a custom repo. But I don’t get anything “Philips Air”, is this how it is supposed to work? I removed everything related in config files, the automation, secrets, is there something I should fill back in maybe, or? Thanks.

BTW: I restarted and rebooted countless times. Tried 0.9.6, 0.9.7 and all the three betas for 0.9.7…

Now that’s strange. It should be there right next to Philips TV.

And don’t try the betas…

So back to 0.9.6, updated via hacs proposed update to 0.9.7, restarted HA and it is the same…

Later edit: also got rid of the betaboon stuff, of course

Do you see any message in the log regarding custom component, not tested with Home Assistant, etc?

Maybe a message regarding dependency conflict?

I have just tested today, reloading fixed the no update issue. You can build an Automation to this for you automatically.