I want to use the purifer-card.js lovelace custom component, however I am not sure which HACS integration to use for the Smartmi Air Purifier P1:
Smartmi is a Xiaomi company, but nowhere in the Xiaomi Miio integration do I see my Smartmi Air Purifier and in fact, Smartmi has its own standalone app which does not integrate with the Mi Home/Xiaomi MiiO apps at all, at least not on iOS.
I search for Smartmi directly in the Integrations section in the configuration tab in Home Assistant. Nada.
So I go searching for one in HACS and I get several options for Xiaomi integrations which make little sense to me as to which one I need, there are just too many to sort through or scan quickly to see what I need.
Maybe through the Aqara Gateway? Not sure.
Don’t really need much handholding with this just need some help being pointed in the right direction. New to HA and just tinkering with things.
It’s really strange because the purifier card has the capability to add a Smartmi card to Lovelace UI but it’s worthless if I can’t even find the purifier in integrations/HACS in the first place.
I’ve added it though adding it on HomeKit on my phone then deleting it and adding it in HomeAssistant - it’s not perfect though as I don’t get all of the controls when it’s exposed through HomeAssistant and the air quality readings don’t seem to update automatically?
I added it via homekit controller too intially but when I did a while back it only had the AQI sensor and not even a switch for the fan. Has that changed? Was going to try it again soon but figured I’d ask anyways.
Don’t think it has changed… Was able to connect to Homekit Controller and initially got AQI readings, but they didn’t correspond with actual readings. Also no option to control the device.
If it had talked with the official MiHome app, I guess one could configure it with the Miio integration. But this is not the case. Talked with SmartMi support and they said it was not possible to add the P1 to MiHome due to hardware issues.
I’ve also successfully added the Smartmi Airpurifier P1 to HA via the HomeKit Controller integration. However, still no fan control. When I go to the device in Devices, I see two sensors in the Sensors section - Air Quality and PM2.5 Density. It also created a Diagnostics section that appears to be useless (unless I’m misunderstanding what the ‘PRESS’ button does)
Thanks to @redphx’s comment, I attempted to get it into HA via LocalTuya and was able to get it integrated🎉.
After much trial and error, I got all of the Tuya IDs of the device mapped out to HA entities (except for one, which I don’t think is useful anyway). Let me know if anyone is interested in getting this setup in HA and I’ll provide the mappings.
My favorite features that I now have access to are being able to turn off the annoyingly loud sound when interacting with the device and being able to automate the screen brightness! It’s the small things. Having access to the filter lifespan and filter use will also open up a really useful notification automation when it’s time to replace the filter.
All updates are instantaneous between HA and the Smartmi Air Purifier P1. I like having it in HomeKit for easily controlling the fan speed via the UI and to quickly see air quality but this opens up a lot of advanced automations for me in node red (HomeKit may send a notification when it’s time to change the filter but I’m not sure - just got the purifier yesterday).
Would love to know how you did this; I haven’t setup localtuya before and don’t know how to pull the localKey. I’m fine using the cloud device lookup but can this be added to Tuya Cloud even?
How to Integrate Smartmi P1 into Home Assistant via LocalTuya
Quick notes before embarking on this journey:
The Tuya integration is not necessary (I'm not using it). However, this process involves setting up a Tuya cloud developer account. Though according to the LocalTuya GitHub:
Cloud API calls are performed only at startup, and when a local_key update is needed.
I've used this integration for a week now and have setup advanced automations in node red and it's worked extremely well. Communication between HA and the P1 are instantaneous.
It also allows access to various settings and features that you would only be able to access/change through the Tuya/Smartmi app (for example, you can't turn off the sound or adjust the display brightness in HomeKit).
1. Add Smartmi P1 to HomeKit
This isn't necessary if your only goal is to get the device in Home Assistant. I use the Home app as my front end (I like the UI) and HA as my backend (all automations are in node red) so I like being able to see and control all of my devices manually through the Home app.
2. Connect the Smartmi P1 to the Tuya Smart app
Download the Tuya Smart app on your phone
If I remember correctly, when you open the app for the first time, it will ask for permission to allow the app to access devices in the Home app. Make sure you allow it.
If you already added the device to HomeKit, in the Tuya app you'll want to select Me > HomeKit Information.
You should see a device called Air Purifier which is your P1. Select "Bind". The device is now connected in Tuya.
3. Obtain Tuya local key, client id, client secret, and device id
Watch this tutorial on getting your device's local key and device id
After you've done that, you can easily get your client id and client secret. Go to Cloud > Development
Select the project you created in the tutorial. I called mine home assistant
Now we start mapping Tuya's internal ID's to different entities in Home Assistant. I won't include a screenshot for every ID/entity but I'll provide the necessary information for each one, which will include:
the Tuya ID followed by what I named it (i.e. 1: Fan means that the Tuya ID is 1 and I named it "Fan")
entity type in HA (sensor, switch, etc)
other relevant details specific to the entity
1: Fan
Here's how I setup ID 1, which is the switch that will turn the fan on/off. I called it Fan but you can also call it Air Purifier or whatever else you want. Select SUBMIT when complete.
Another window will pop up where you will select the next HA entity type that you'll be mapping. In this case, the next entity we'll setup is the PM2.5 Density, which we want to be a sensor in HA. Select "sensor" and unselect "Do not add any more entities". You'll want to uncheck this box each time you see this screen until we're finished.
valid entries (tuya asks for semicolon separated list):
0_hour;1_hour;2_hour;4_hour;8_hour
user friendly options (tuya asks for semicolon separated list):
off;1 hour;2 hours;4 hours;8 hours
104: Filter Lifespan
entity type: sensor
description: current filter life remaining in percent
105: Filter Use
entity type: sensor (or number)
unit of measurement: hours
description: number of hours the current filter has been in use. In the Tuya app, this corresponds to "Filter useh" under "Setting". This can be set as a number that can be adjusted (it's also editable in the Tuya app). However, this number should automatically reset to 0 after following the "Resetting the Filter instructions in the manual". For that reason, I've left it as a sensor.
You can now check the box "Do not add any more entities". Note that I couldn't figure out what Tuya ID 22 was. I set it as a sensor for awhile but it's value never changed from 0 so I ended up removing it.
1 question though, how do you add data points later? For example, I noticed that you have Fan Speed and Screen Brightness, I didn’t see an option for the fan speed, and I missed the screen brightness. Is there a way to go back and add those data points or do I need to delete the device and reconfigure the entire setup?