Mi Body Composition Scale 2 not detected

I have an old Mi Body Composition Scale 2. Recently I added a native BLE Monitor to HA and it worked fine but due to a bad range I was unable to use it daily.
So I bought a ESP32 board and configured it with this tutorial https://smarthomepursuits.com/how-to-add-smart-scale-home-assistant/

But now it just don’t work. I’ve tried to increase the interval and window values but with no success.
In the logs I see a few BT devices detected but not this scale.
Any ideas?

I don’t think the scale transmits unless it is reading. Try standing on it.

It transmits frames all the time - I’ve checked on BLE Scanner on Android.

I’ve tried standing on it with no result.

But finally I got it working and here’s my additional config:

esp32_ble_tracker:
  scan_parameters:
    interval: 60s
    window: 20s

binary_sensor:
  - platform: ble_presence
    mac_address: F7:04:XX:XX:XX:XX
    name: "Presence"

sensor:
  - platform: ble_rssi
    mac_address: F7:04:XX:XX:XX:XX
    name: "RSSI"

So I added additional sensor for presence so it’ll be easier to track if from HA and RSSI.
Changing interval to 60s (like it’s on the BLEScanner from HA) and 20s window because of 3 channels inside that interval worked after some time.
I noticed that from cold start when the ESP was shut down it takes about 4 minutes to show scale presence without standing on it.

Does it transmit weight data without standing on it?

Mine doesn’t seem to.

I just use the default scan settings of interval:320ms and window:30ms. Yours seem really long by comparison.

I just use the standard config.

It sends data for some time after standing on it and I see that in my case it’s 30 minutes and it shuts down.

1 Like

I don’t see a reference to xiaomi_miscale in your config.

Because it’s not a full config. But NVM, it’s working fine :slight_smile:

Can you share your config? If you still have the scale