I Connected My Withings Body+ to Home Assistant with an ESP32
21–30 of 35 posts
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#22Withings has a full available API, I wrote a tool to just scrape what I need from the app at https://developer.withings.com/
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#23The app is at https://github.com/DavidVentura/withouthings - the firmware on the watch was leaked as well, and it's been helpful to debug some of the protocol.
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#24You can build your own scale with an ESP32 for like $25 in parts - Hx711, load cells, ESP32, and a handful of trivial components. I threw together one that sits under my gas bottle, so I know when it’s running low. Adding impedance would be a pretty trivial step.
But not the calibration that maps a raw ADC sample to "24.5% body fat, 21 Kg bone ..." etc.
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#25You can build your own scale with an ESP32 for like $25 in parts - Hx711, load cells, ESP32, and a handful of trivial components. I threw together one that sits under my gas bottle, so I know when it’s running low. Adding impedance would be a pretty trivial step.
> Adding impedance would be a pretty trivial step. But not the calibration that maps a raw ADC sample to "24.5% body fat, 21 Kg bone ..." etc.
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#26Earlier quoted context omitted.
> Adding impedance would be a pretty trivial step. But not the calibration that maps a raw ADC sample to "24.5% body fat, 21 Kg bone ..." etc.
Sure, you’ve gotta have some known good values to compare to, but those aren’t hard to come by. Pretty sure you can get a decent idea of BF with callipers or somesuch.
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#27You can build your own scale with an ESP32 for like $25 in parts - Hx711, load cells, ESP32, and a handful of trivial components. I threw together one that sits under my gas bottle, so I know when it’s running low. Adding impedance would be a pretty trivial step.
> Adding impedance would be a pretty trivial step. But not the calibration that maps a raw ADC sample to "24.5% body fat, 21 Kg bone ..." etc.
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#28I'd love to be able to flash a custom firmware on the withings body+ to make the screen truly smart. It's a bummer to know that AI can do all these things if only the firmware was open source / accessible.
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#29If you have a eufy scale, you can do this with no LLM needed - just set up an esp32 Bluetooth proxy, add it to home assistant, and then use the EufyLife integration someone already made. I did this recently with my scale to avoid having to sync it to my phone, go to the cloud, fetch data from the cloud, etc., and it's working fantastically. I have a little Home Assistant integration that pokes scale updates to a Pyth…
Re: I Connected My Withings Body+ to Home Assistant with an ESP32
#30If you have a eufy scale, you can do this with no LLM needed - just set up an esp32 Bluetooth proxy, add it to home assistant, and then use the EufyLife integration someone already made. I did this recently with my scale to avoid having to sync it to my phone, go to the cloud, fetch data from the cloud, etc., and it's working fantastically. I have a little Home Assistant integration that pokes scale updates to a Pyth…
Is there any documentation and a specific esp32 Bluetooth proxy you would recommend?
I'm just using a cheap ESP-WROOM-32 but the recommended way to do it is with an wired ethernet-based ESP32 so you don't have interference with the wifi and btle. For a scale this works well enough. I haven't yet received the athom smart plug so I can't recommend it yet. Should be here in a week or so.
Once you've got the proxy you can just use the eufylife integration: https://www.home-assistant.io/integrations/eufylife_ble/
To setup the esphome bluetooth proxy you install esphome, and then create a yaml file that you'll use to configure the board, like this:
esphome:
name: bluetooth-proxy
esp32:
board: esp32dev
framework:
type: esp-idf
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "YOUR_KEY_HERE"
# Enable OTA updates
ota:
- platform: esphome
# WiFi configuration (matching the settings from your other devices)
wifi:
ssid: "YOUR_WIFI_SSID"
password: "YOUR_WIFI_PASSWORD"
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Bluetooth Proxy Fallback"
password: "proxyfallback"
captive_portal:
# Enable ESP32 BLE Tracker
esp32_ble_tracker:
scan_parameters:
active: true
# Enable Bluetooth Proxy
bluetooth_proxy:
active: true
Once that's done, plug in your board to your system and use esphome run bluetooth-proxy.yaml (you might have to find the device it's showing up as in tty.usbserial or whatever).