# Intégration Balance connecté Mi Scale via ESPHome

**URL:** <https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045>\
**Category:** Intégration\
**Created:** [Novembre 27, 2020, 11:45 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045 "2020-11-27T23:45:58Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Novembre 27, 2020, 11:45 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/1 "2020-11-27T23:45:58Z")

</div>

Salut a tous,

Suite au message poster par notre ami @dckiller dans le sujet cidessous et son integration de la balance Miscale 1 et 2 via ESPHome, je vais vous faire un petit tutoriel rapide.

[https://forum.hacf.fr/t/integrer-les-balances-xiaomi-mi-scale/](https://forum.hacf.fr/t/integrer-les-balances-xiaomi-mi-scale/)

> **[Xiaomi Miscale Sensors](https://esphome.io/components/sensor/xiaomi_miscale/)**
>
> Instructions for setting up Xiaomi Miscale bluetooth-based sensors in ESPHome.

> **[Xiaomi Miscale2 combined into Xiaomi Miscale](https://esphome.io/components/sensor/xiaomi_miscale2/)**
>
> Xiaomi Miscale2 combined into Xiaomi Miscale

### Matériels requis.

- Extenstion ESPHome (1.17.0).
- Un ESP 32 avec Bluetooth
- Une balance Xiaomi Miscale V1 ou V2
- Récupérer son adresse MAC (au début de [cet l’article](https://forum.hacf.fr/t/integrer-les-balances-xiaomi-mi-scale/701)).

Liens affiliés :

## Configuration de l’extension et du matériel.

Lancer ensuite l’extension.

[Configurer votre matériel sous ESPHome](https://forum.hacf.fr/t/esphome-installation-et-premier-projet/223), puis dans la configuration ajouter ceci.

Config Esphome Miscale 1 (XMTZC01HM & XMTZC04HM)

```
esp32_ble_tracker:

sensor:
  - platform: xiaomi_miscale
    mac_address: 'XX:XX:XX:XX:XX:XX'
    weight:
      name: "Xiaomi Mi Scale Weight"

```

Config Esphome Miscale 2 (XMTZC02HM & XMTZC05HM)

```
esp32_ble_tracker:

sensor:      
  - platform: xiaomi_miscale2
    mac_address: 'XX:XX:XX:XX:XX:XX'
    weight:
      name: "Xiaomi Mi Scale Weight"
    impedance:
      name: "Xiaomi Mi Scale Impedance"

```

## Intégration dans Home Assistant.

Puis dans votre [fichier de configuration](https://forum.hacf.fr/t/organisation-du-fichier-configuration-yaml/205) Home Assistant ajouter ceci (a modifier avec vos infos) :

### Explication du fonctionnement.

Vous pouvez régler plusieurs profils avec la notion de poids.

Exemple avec trois utilisateurs.  
Anthony poids environs 95Kg  
Claire poids environ 60Kg  
Agathe poids environ 12Kg

### Code dans un `packages` nommé `balance.yaml`

```auto
sensor:
## Anthony
  - platform: template
    sensors:
      poids_anthony:
        friendly_name: "Poids Anthony"
        value_template: >-
          {% if states('sensor.xiaomi_mi_scale_weight') | float >= 85 and states('sensor.xiaomi_mi_scale_weight') | float <= 99 %}
            {{ states("sensor.xiaomi_mi_scale_weight") }}
          {% else %}
            {{ states("sensor.poids_anthony") }}
          {% endif %}
        unit_of_measurement: 'kg'
        icon_template: mdi:weight-kilogram
  - platform: template
    sensors:
      imc_anthony:
          friendly_name: 'IMC Anthony'
          value_template: >-
            {% set HEIGHT = (1.93)|float %}
            {% set WEIGHT = states('sensor.poids_anthony')|float %}
            {{- (WEIGHT/(HEIGHT*HEIGHT))|float|round(1) -}}
          icon_template: >
            {{ 'mdi:human' }}
  - platform: template
    sensors:
      # Indice de masse corporelle (IMC)	Interprétation (d'après l'OMS)
      imc_anthony_interpretation:
        friendly_name: "Interprétation IMC Anthony"
        value_template: >-
          {% if states("sensor.imc_anthony") | float < 18.4 %}
            Insuffisance pondérale
          {% elif states("sensor.imc_anthony") | float >= 18.5 and states("sensor.imc_anthony") | float <= 25 %}  
            Corpulence normale
          {% elif states("sensor.imc_anthony") | float >= 25.1 and states("sensor.imc_anthony") | float <= 30 %}
            Surpoids
          {% elif states("sensor.imc_anthony") | float >= 30.1 and states("sensor.imc_anthony") | float <= 35 %}  
            Obésité modérée
          {% elif states("sensor.imc_anthony") | float >= 35.1 and states("sensor.imc_anthony") | float <= 40 %}  
            Obésité sévère
          {% else %}  
            Obésité morbide
          {% endif %}
## Claire
  - platform: template
    sensors:
      poids_Claire:
        friendly_name: "Poids claire"
        value_template: >-
          {% if states('sensor.xiaomi_mi_scale_weight') | float >= 60 and states('sensor.xiaomi_mi_scale_weight') | float <= 75 %}
            {{ states("sensor.xiaomi_mi_scale_weight") }}
          {% else %}
            {{ states("sensor.poids_claire") }}
          {% endif %}
        unit_of_measurement: 'kg'
        icon_template: mdi:weight-kilogram
  - platform: template
    sensors:
      imc_Claire:
          friendly_name: 'IMC claire'
          value_template: >-
            {% set HEIGHT = (1.68)|float %}
            {% set WEIGHT = states('sensor.poids_claire')|float %}
            {{- (WEIGHT/(HEIGHT*HEIGHT))|float|round(1) -}}
          icon_template: >
            {{ 'mdi:human' }}
  - platform: template
    sensors:
      # Indice de masse corporelle (IMC)	Interprétation (d'après l'OMS)
      imc_Claire_interpretation:
        friendly_name: "Interprétation IMC claire"
        value_template: >-
          {% if states("sensor.imc_claire") | float < 18.4 %}
            Insuffisance pondérale
          {% elif states("sensor.imc_claire") | float >= 18.5 and states("sensor.imc_claire") | float <= 25 %}  
            Corpulence normale
          {% elif states("sensor.imc_claire") | float >= 25.1 and states("sensor.imc_claire") | float <= 30 %}
            Surpoids
          {% elif states("sensor.imc_claire") | float >= 30.1 and states("sensor.imc_claire") | float <= 35 %}  
            Obésité modérée
          {% elif states("sensor.imc_claire") | float >= 35.1 and states("sensor.imc_claire") | float <= 40 %}  
            Obésité sévère
          {% else %}  
            Obésité morbide
          {% endif %}
## Agathe
  - platform: template
    sensors:
      poids_agathe:
        friendly_name: "Poids agathe"
        value_template: >-
          {% if states('sensor.xiaomi_mi_scale_weight') | float >= 10 and states('sensor.xiaomi_mi_scale_weight') | float <= 20 %}
            {{ states("sensor.xiaomi_mi_scale_weight") }}
          {% else %}
            {{ states("sensor.poids_agathe") }}
          {% endif %}
        unit_of_measurement: 'kg'
        icon_template: mdi:weight-kilogram
  - platform: template
    sensors:
      imc_agathe:
          friendly_name: 'IMC agathe'
          value_template: >-
            {% set HEIGHT = (0.89)|float %}
            {% set WEIGHT = states('sensor.poids_agathe')|float %}
            {{- (WEIGHT/(HEIGHT*HEIGHT))|float|round(1) -}}
          icon_template: >
            {{ 'mdi:human' }}
  - platform: template
    sensors:
      # Indice de masse corporelle (IMC)	Interprétation (d'après l'OMS)
      imc_agathe_interpretation:
        friendly_name: "Interprétation IMC agathe"
        value_template: >-
          {% if states("sensor.imc_agathe") | float < 18.4 %}
            Insuffisance pondérale
          {% elif states("sensor.imc_agathe") | float >= 18.5 and states("sensor.imc_agathe") | float <= 25 %}  
            Corpulence normale
          {% elif states("sensor.imc_agathe") | float >= 25.1 and states("sensor.imc_agathe") | float <= 30 %}
            Surpoids
          {% elif states("sensor.imc_agathe") | float >= 30.1 and states("sensor.imc_agathe") | float <= 35 %}  
            Obésité modérée
          {% elif states("sensor.imc_agathe") | float >= 35.1 and states("sensor.imc_agathe") | float <= 40 %}  
            Obésité sévère
          {% else %}  
            Obésité morbide
          {% endif %}

```

## Lovelace.

Pour la partie lovelace je ne vais pas refaire ce qui existe déjà, je vous propose d’aller voir [l’article sur l’intégration de la balance via l’addons](https://forum.hacf.fr/t/integrer-les-balances-xiaomi-mi-scale/701).

#### Trucs & Astuces.

- Custom components pour récupérer le score [GitHub - dckiller51/bodymiscale: Custom\_components Body Metrics for Xiaomi Miscale 1 and 2 (esphome or BLE monitor for Homeassistant)](https://github.com/dckiller51/bodymiscale)
- Card Lovelace en cours d’adaptation [GitHub - dckiller51/lovelace-body-miscale-card: Card for data of Xiaomi scales in the Lovelace user interface of Home Assistant The card is linked to the Bodymiscale custom components for Xiaomi scales. https://github.com/dckiller51/bodymiscale](https://github.com/dckiller51/lovelace-body-miscale-card)
- Une autre manière de récupérer le poids du bon utilisateur. Vous avez besoin de configurer que le sensor poids et impedance dans Esphome. [Exemple Xiaomi Miscale select the person who weighs himself "notif action" - Node-RED - Home Assistant Community](https://community.home-assistant.io/t/exemple-xiaomi-miscale-select-the-person-who-weighs-himself-notif-action/299321)

#### To Do List.

- Ajouter les liens affiliés.

#### Mise à jour.

- _04/05/2021 :_ Création de l’article. @Clemalex, @dckiller, @McFly.

---

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Novembre 27, 2020, 11:45 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/2 "2020-11-27T23:45:58Z")

</div>

15 messages ont été fusionnés à un sujet existant : [Intégrer les balances Xiaomi Mi scale](https://forum.hacf.fr/t/integrer-les-balances-xiaomi-mi-scale/701)

---

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Novembre 27, 2020, 11:48 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/22 "2020-11-27T23:48:00Z")

</div>



---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Décembre 5, 2020, 1:30 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/23 "2020-12-05T13:30:45Z")

</div>

Slt,

Peux-tu tester ma dernière maj ? Les changements sont :

1. une plateform pour les deux balance.
2. Création des utisateurs sur esphome comme ca en cas de reboot de HA les données redescendent après le redémarrage.
3. Mode Stabilisé afin que la balance envoi les données 1 seul fois quand elle clignotent et plus en permanence pendant 5min

Sur la mienne tout fonctionne bien maintenant j’ai besoin qu’un utilisateur de la 2 test notamment pour l’impédance.

Il faut changer uniquement l’adresse mac, chaque above et below pour déterminer les utilisateurs cela correspond à leur poids (entre x kg et x kg) et changer le Prénom dans name: Poids «&nbsp;Prénom&nbsp;» et name: Impédance «&nbsp;Prénom&nbsp;».

Pense avant à supprimer tes sensor poids\_anthony.,poids\_Claire… Tu peux garder les IMC et l’indice corporelle les noms seront ok.

```auto
sensor:
  - platform: xiaomi_xmtzc0xhm
    mac_address: 'C8:47:8C:9F:7B:0A'
    weight:
      name: "Xiaomi Mi Scale Weight"
      on_value_range:
        - above: 69
          below: 72.99
          then:
          - lambda: return id(weight_user1).publish_state(x);
        - above: 73
          below: 80
          then:
          - lambda: return id(weight_user2).publish_state(x);
        - above: 46
          below: 60
          then:
          - lambda: return id(weight_user3).publish_state(x);
        - above: 28
          below: 45
          then:
          - lambda: return id(weight_user4).publish_state(x);
        - above: 5
          below: 20
          then:
          - lambda: return id(weight_user5).publish_state(x);
    impedance:
      name: "Xiaomi Mi Scale Impedance"
      id: impedance_xiaomi
      on_value:
        then:
          - lambda: |-
              if (id(weight_user1).state) {
                return id(impedance_user1).publish_state(x);
              } else if (id(weight_user2).state) {
                return id(impedance_user2).publish_state(x);
              } else if (id(weight_user3).state) {
                return id(impedance_user3).publish_state(x);
              } else if (id(weight_user4).state) {
                return id(impedance_user4).publish_state(x);
              } else if (id(weight_user5).state) {
                return id(impedance_user5).publish_state(x);
              }
  - platform: template
    name: Poids Aurélien
    id: weight_user1
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Aurélien
    id: impedance_user1
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Siham
    id: weight_user2
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Siham
    id: impedance_user2
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Théo
    id: weight_user3
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Théo
    id: impedance_user3
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Sacha
    id: weight_user4
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Sacha
    id: impedance_user4
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Noham
    id: weight_user5
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Noham
    id: impedance_user5
    unit_of_measurement: 'ohm'
    icon: mdi:omega

```

---

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Décembre 13, 2020, 7:56 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/24 "2020-12-13T19:56:41Z")

</div>

Salut désolé je n’étais pas présent,

Pour ma part il ne me reconnais pas  
`platform: xiaomi_xmtzc0xhm`  
j’ai aussi essayé avec `platform: xiaomi_xmtzc05hm`  
Je suis sur ton repo dans ESPHome je vis essayé dans le dev classique.

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Décembre 13, 2020, 9:02 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/25 "2020-12-13T21:02:29Z")

</div>

Slt,

J’espère rien de grave. Effectivement on ne ta pas beaucoup vue ces dernières jours.  
Pour la platform finalement j’ai abandonné le regroupement cela ne fonctionne pas. Donc il faut continuer avec la version xiaomi\_miscale2 par contre pour les utilisateurs il faut utiliser cette version avec l’autre (below, above) il y a des problèmes si le même utilisateur se pèse. Il faut qu’un autre utilisateur passe avant pour prendre en compte.

Voici la dernière version.

```auto
sensor:
  - platform: xiaomi_miscale
    mac_address: 'C8:47:8C:9F:7B:0A'
    weight:
      name: "Xiaomi Mi Scale Weight"
      on_value:
        then:
          - lambda: |-
              if (id(weight_miscale).state >= 69 && id(weight_miscale).state <= 72.99) { 
                return id(weight_user1).publish_state(x);}
              else if (id(weight_miscale).state >= 73 && id(weight_miscale).state <= 83) {
                return id(weight_user2).publish_state(x);}
              else if (id(weight_miscale).state >= 46 && id(weight_miscale).state <= 65) {
                return id(weight_user3).publish_state(x);}
              else if (id(weight_miscale).state >= 28 && id(weight_miscale).state <= 45) {
                return id(weight_user4).publish_state(x);}
              else if (id(weight_miscale).state >= 5 && id(weight_miscale).state <= 20) {
                return id(weight_user5).publish_state(x);}

  - platform: template
    name: Poids Aurélien
    id: weight_user1
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Poids Siham
    id: weight_user2
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Poids Théo
    id: weight_user3
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Poids Sacha
    id: weight_user4
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Poids Noham
    id: weight_user5
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
Config Esphome Miscale 2 (XMTZC02HM & XMTZC05HM)

sensor:
  - platform: xiaomi_miscale2
    mac_address: 'C8:47:8C:9F:7B:0A'
    weight:
      name: "Xiaomi Mi Scale Weight"
      on_value:
        then:
          - lambda: |-
              if (id(weight_miscale).state >= 69 && id(weight_miscale).state <= 72.99) { 
                return id(weight_user1).publish_state(x);}
              else if (id(weight_miscale).state >= 73 && id(weight_miscale).state <= 83) {
                return id(weight_user2).publish_state(x);}
              else if (id(weight_miscale).state >= 46 && id(weight_miscale).state <= 65) {
                return id(weight_user3).publish_state(x);}
              else if (id(weight_miscale).state >= 28 && id(weight_miscale).state <= 45) {
                return id(weight_user4).publish_state(x);}
              else if (id(weight_miscale).state >= 5 && id(weight_miscale).state <= 20) {
                return id(weight_user5).publish_state(x);}

  - platform: template
    impedance:
      name: "Xiaomi Mi Scale Impedance"
      id: impedance_xiaomi
      on_value:
        then:
          - lambda: |-
              if (id(weight_user1).state) {
                return id(impedance_user1).publish_state(x);
              } else if (id(weight_user2).state) {
                return id(impedance_user2).publish_state(x);
              } else if (id(weight_user3).state) {
                return id(impedance_user3).publish_state(x);
              } else if (id(weight_user4).state) {
                return id(impedance_user4).publish_state(x);
              } else if (id(weight_user5).state) {
                return id(impedance_user5).publish_state(x);
              }
  - platform: template
    name: Poids Aurélien
    id: weight_user1
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Aurélien
    id: impedance_user1
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Siham
    id: weight_user2
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Siham
    id: impedance_user2
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Théo
    id: weight_user3
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Théo
    id: impedance_user3
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Sacha
    id: weight_user4
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Sacha
    id: impedance_user4
    unit_of_measurement: 'ohm'
    icon: mdi:omega
  - platform: template
    name: Poids Noham
    id: weight_user5
    unit_of_measurement: 'kg'
    icon: mdi:weight-kilogram
    accuracy_decimals: 2
  - platform: template
    name: Impedance Noham
    id: impedance_user5
    unit_of_measurement: 'ohm'
    icon: mdi:omega

```

---

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Décembre 17, 2020, 11:55 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/26 "2020-12-17T23:55:15Z")

</div>

Ben j’ai bien essayé ton code, je n’ai plus d’erreurs mais je n’ai aucune information qui remonte dans HA.

Je regarderais un peu plus demain

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Janvier 2, 2021, 10:30 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/27 "2021-01-02T22:30:24Z")

</div>

Slt, j’ai acheté la miscale 2 pour faire les test. Maintenant c’est tout bon. Attention j’ai refait la config en début de la page l’impedance ne se coller pas au bonne utilisateur. Pour le component j’y suis presque je but sur 1 problème mais je continue mes recherches. Il me manque juste à récupérer le poids avant le démarrage du component car pour l’instant il bloque la dessus. Mais si je le renseigne manuellement pas de soucis les données sont correct. Maintenant que j’ai la miscale 2 faut juste que j’adapte le components en ajoutant l’impedance pour les calculs supplémentaires mais si je solutionnes mon 1er problème le reste sera facile.

---

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Janvier 3, 2021, 12:18 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/28 "2021-01-03T00:18:47Z")

</div>

Merci bien pour le travail dessus. Je testerai un peu plus tard pas trop de temps en ce moment.

Meilleures vœux

---

<div class="post-metadata">

**Author:** ![bougnier](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/b/a587f6/32.png) [@bougnier](https://forum.hacf.fr/u/bougnier)\
**Post date:** [Février 11, 2021, 10:08 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/29 "2021-02-11T10:08:52Z")

</div>

Bonjour à tous,  
J’ai suivi le tuto, tout verifié mais quand je relance HA j’ai ce message d’erreur, pourriez vous me guider pour le corriger, svp? Envous remerciant par avance.

```auto
Logger: homeassistant.setup
Source: custom_components/bodymiscale/ __init__.py:280
First occurred: 11:04:24 (1 occurrences)
Last logged: 11:04:24

Error during setup of component bodymiscale
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 213, in _async_setup_component
    result = await task
  File "/config/custom_components/bodymiscale/ __init__.py", line 114, in async_setup
    await component.async_add_entities(entities)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 315, in async_add_entities
    await asyncio.gather(*tasks)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 506, in _async_add_entity
    await entity.add_to_platform_finish()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 531, in add_to_platform_finish
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 296, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 322, in _async_write_ha_state
    attr.update(self.state_attributes or {})
  File "/config/custom_components/bodymiscale/ __init__.py", line 280, in state_attributes
    ATTR_WEIGHT: "{:.2f} kg".format(weight),
TypeError: unsupported format string passed to NoneType. __format__

```

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Février 14, 2021, 12:22 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/30 "2021-02-14T00:22:01Z")

</div>

Slt,

Je n’ai arrive pas à corriger cette erreur. Mais normalement cela n’affecte pas le fonctionnement. Tu devrais avoir un bodymiscale.xxxx de créer. Vérifie dans l’outils de développement.

---

<div class="post-metadata">

**Author:** ![bougnier](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/b/a587f6/32.png) [@bougnier](https://forum.hacf.fr/u/bougnier)\
**Post date:** [Février 14, 2021, 6:19 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/31 "2021-02-14T18:19:58Z")

</div>

Merci pour ta réponse, je viens de vérifier et je n’ai pas de bodymiscale.xxxx dans l’outils de développement.

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Février 14, 2021, 6:38 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/32 "2021-02-14T18:38:01Z")

</div>

Regarde mon échange avec une personne sur github dans l’issue closes. Tu trouveras certainement la solution. Sinon ouvre un nouveau problème.

---

<div class="post-metadata">

**Author:** ![bougnier](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/b/a587f6/32.png) [@bougnier](https://forum.hacf.fr/u/bougnier)\
**Post date:** [Février 14, 2021, 9:21 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/33 "2021-02-14T21:21:24Z")

</div>

Merci beaucoup je fais ça demain. J’ai lu le post sur le suivi de poids pour plusieurs personnes, est ce que c’est fonctionnel? En te remerciant pour ton investissement.

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Février 14, 2021, 9:24 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/34 "2021-02-14T21:24:46Z")

</div>

Oui cela fonctionne. J’ai écrit la doc [ici](https://github.com/dckiller51/esphome-docs/blob/current/components/sensor/xiaomi_miscale2.rst) pour la futur intégration en stable.

---

<div class="post-metadata">

**Author:** ![bougnier](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/b/a587f6/32.png) [@bougnier](https://forum.hacf.fr/u/bougnier)\
**Post date:** [Février 14, 2021, 9:35 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/35 "2021-02-14T21:35:25Z")

</div>

Merci beaucoup, je teste ça demain 😉

---

<div class="post-metadata">

**Author:** ![McFly](https://forum.hacf.fr/user_avatar/forum.hacf.fr/mcfly/32/1077_2.png) [@McFly](https://forum.hacf.fr/u/McFly)\
**Post date:** [Février 14, 2021, 10:08 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/36 "2021-02-14T22:08:41Z")

</div>

Si tu veux mettre le post à jour pas de soucis

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Février 14, 2021, 10:21 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/37 "2021-02-14T22:21:58Z")

</div>

Slt, je vais attendre que tout passe en stable.

---

<div class="post-metadata">

**Author:** ![dckiller](https://forum.hacf.fr/user_avatar/forum.hacf.fr/dckiller/32/532_2.png) [@dckiller](https://forum.hacf.fr/u/dckiller)\
**Post date:** [Mai 4, 2021, 8:41 UTC](https://forum.hacf.fr/t/integration-balance-connecte-mi-scale-via-esphome/1045/38 "2021-05-04T20:41:15Z")

</div>

Bonjour à tous,

Voila l’intégration est enfin disponible dans Esphome 1.17.0. Je vous ai ajouté un components pour récupérer votre score du corps et je suis en cours d’adaptation d’une carte pour rendre tout ça harmonieux dans votre Homeassistant.  
Je vous ai également mis un lien de mon noeud rouge pour choisir l’utilisateur qui vient de se peser. Cela envoi une notification sur votre smartphone, vous cliquez sur l’utilisateur et cela envoi les données dans votre sensor.

Dans mon poste il y a aussi une carte manuel si vous êtes impatient. [https://community.home-assistant.io/t/lovelace-body-miscale-card-2-0-0-inprogress-help-me/300362](https://community.home-assistant.io/t/lovelace-body-miscale-card-2-0-0-inprogress-help-me/300362)
