For people looking for an affordable wearable device that can control your Home Assistant and update Health / Fitness data to Home Assistant, this might be interesting for you.
ZeppOS app that uses the Home Assistant REST API to control entities and updates the wearable sensors to Home Assistant including:
Daily Heart Rate values
Recent Sleep data
Battery %
PAI values
Daily Steps
Daily Calories burnt
Daily Standing hours
Wear status
A few months ago, I “upgraded” my wearable device from an old, slow and expensive Fossil smart watch to a €35,- smart band (Xiaomi Mi Band 7). The main features that I require from my wearable is that it can control my Home Assistant entities, and keep track of my health / fitness (and of course display the time).
I became aware of the Smart Band concept, but most of them do not support the Home Assistant Companion App (which is on WearOS watches only), or app development at all. The brand that I found that allows app development on their smart bands/watches is Zepp Health through their wearable operating system called ZeppOS. The company owns the Amazfit brand which has a line of wearable products that use ZeppOS, but also some other wearables have ZeppOS, such as the Xiaomi Mi Band 7.
I found the ha-zepp repository which already has (limited) Home Assistant entity control using the REST API. I added some extra entity types that I required myself, and asked the owner of the repository if I could post about it here, which was fine. I am currently working on the feature that updates the wearable sensors to Home Assistant and trying to make this a stable background updater. The picture on the top of the HA lovelace is an example UI for the wearable sensors. I might follow up on this post if there is any interest.
NOTES:
The Mi Band 7 is not officially supported for ZeppOS app development, but its possible to pair it as the Amazfit Band 7 device using this modified Android APK of the Zepp App.
The ha-zepp app is created specifically for the Mi Band 7, but could also be built for any other Zepp OS 1.0 device.
No it has to be a modified version of the Zepp app (can’t be downloaded via the play store). It seems that the all the download links on the russian forum linked on the github page are down. Here is a temporary download link from the apk I used (bit older version though)
I also found this very good documentation explaining how to write the modified apk while I was trying to find the modified APK so if we want to build it ourselves it appears possible Пишем приложение на Mi Band 7 с сервисной частью / Хабр
I am planning on getting an Amazfit Band 7 in the future, since it has official support for the ZeppOS app development and you can just use the official Zepp app with all its features (I believe the map is missing now). I like the Mi Band 7 for its size and form (especially during sport activities).
Do note that the updating of sensor data to Home Assistant is not perfect. After a while it suddenly stops updating (did not find the reason yet) and you have to reset it. The PAI sensor also seems to round the values (e.g. 85 is shown as 80). Feel free to update the code (I am not the owner of the linked repository, but the man will respond to pull requests).
I might share my HA lovelace configuration later so you are able to build the graphs for the sleep data etc. Let me know if you need anything.
Got my mi band 7 all setup. While I was at it I decided to rewrite the app to make it easier to navigate. I added 3 categories: Devices, scripts, and sensors
I don’t know how the pairing process went again, it’s been a while. You should either be able to select the Amazfit Band 7 in the pairing process or it should just pair automatically as that device. Can you provide some images of your issue?