I just released a Home Assistant integration for the Renpho ES-CS20M smart scale (also sold as Renpho Elis 1 and various locale-specific names). It’s local-only - no cloud, no Renpho app required.
Key features:
Real-time weight + on-device body composition (BMI, body fat %, muscle mass, body water %, etc.)
Multi-user support with adaptive weight-history matching. Optionally exclude users marked not_home via Person entities.
Mobile-app actionable notifications for ambiguous measurements — “Assign to Me” / “Not Me” buttons on each candidate user’s phone.
ESPHome Bluetooth proxy support so the scale doesn’t need to be in range of the HA host.
Per-user toggles for the scale’s athlete-tuned and alternative body-fat algorithms.
Fully unofficial — not affiliated with Renpho.
Install via HACS custom repository (HACS default-store submission is in progress). README has install steps.
Tested on my own ES-CS20M; if you have one, I’d love to hear how it works for you. Open issues / feature requests welcome; if you have a different Renpho scale model I’d love to hear if the integration works with that model as well.
Hello! Thank you for your work with the integration!
This is a really nice timing, I just got a Renpho Elis 1 smart scale, and for the last hour I’ve been trying to add the scale to my HA. I have it right next to a BLE Proxy (ESP32) and I can see it in the bluetooth map of Home Assistant (with the name ES-32MD, the model sold here) but for some reason the integration is not picking it up.
I understand this is the same device as Renpho ES-CS20M, on the back the HVIN says ‘ESCS0MB2’.
Any hints for troubleshooting this?
EDIT: I tried changing the local_name in manifest.json to accept ‘ES-32MD’, after that it finds the scale but I can’t get any measurement.
Hi @surubutna, seems to be a different variant. Most likely there are some protocol differences between the two. If you send me some more info I can look into it and try to see if that’s indeed the issue and if it is if the protocol is close enough for me to be able to easily add support for with minor changes to the integration.
Could you generate and send me the diagnostics json? You can generate it with the “Download Diagnostics” button at the bottom of the integrations’s device info card in Home Assistant. The other thing that would be helpful is debug logs showing what happens when you’re stepping on the scale for a measurement. You’d need to turn on debug logging for the integration, as well as the “Enable verbose library logging” checkbox in the integration’s advanced settings, then take the measurements and look for the relevant debug log messages (in the UI you might need to switch to the raw viewer mode to see debug/info messages and not just error/warning ones).
If you want you can open a new github issue with all this info and it will be more convenient to follow up on this. There’s already one similar issue open there (but for another different variant) if you want to take a look there as to the next steps on how to investigate this further and capture the bluetooth logs that would be needed for me to be able to add support for another variant with differences in the protocol (in case you want to already do that if we need it next).