Integrar tu báscula en Home Assistant

Monitoriza tu salud y sácale el máximo partido a todos sus sensores, al integrar tu báscula en Home Assistant.

Mi Body Composition Scale 2

Para empezar quiero comentar que la báscula que uso es el modelo Mi Body Composition Scale 2 de Xiaomi y no es casualidad. Antes de comprarla estuve haciendo un estudio de mercado, ya que quería que me diera información más allá del peso. Esta báscula me indica todos estos datos: IMC , porcentaje de grasa corporal, masa ósea, agua, masa Muscular, edad física, proteína, grasa visceral, peso, peso ideal y tamaño. Cabe destacar que la precisión de estas básculas es limitada, pero como referencia en casa me ha ido fenomenal.

*Algún precio puede haber cambiado desde la última revisión

Ya estaba muy contento con ella, tanto por sus funciones como por su estética minimalista, pero me dio una alegría adicional cuando vi que podías integrar tu báscula en Home Assistant. He podido utilizarla como pieza clave de mi ‘personal trainer’ en HA.

No obstante, si tienes otra báscula inteligente siempre puedes probar a integrarla en Home Assistant vía Google Fit.

Integración oficial en Home Assistant

Ahora ya podemos integrar la báscula de forma oficial a través de la integración Xiaomi BLE, así que solo tienes que completar estos pasos:

  1. Como la integración se basa en BLE (Bluetooth Low Energy), primero debes asegurarte de tener activada la integración ‘Bluetooth‘.
  2. Coge tu báscula, sitúala cerca de la Raspberry y pésate.
  3. Cuando vuelvas a tu ordenador deberías tener el mensaje de HA indicando que la a descubierto. Si no es así, haz clic en añadir integración y busca Xiaomi > Xiaomi BLE y haz clic para que la encuentre.
  4. Ahora haz clic en “Configurar” y asígnale una estancia.
  5. Listo! Si te pesas de nuevo, verás que te devuelve una entidad con tu peso.

Para mi gusto esta integración está un poco verde por el momento, y por mi parte prefiero seguir utilizando la integración ‘custom’, ya que te permite obtener más datos y establecer perfiles para distintos usuarios.

Integración ‘custom’ en Home Assistant

Para llevar a cabo la integración vamos a hacer uso del complemento Xiaomi Mi Scale. Previamente necesitas instalar el complemento MQTT, si aun no lo tienes. Sigue estos pasos:

  1. Accede a Ajustes > Complementos > Tienda de complementos
  2. Haz clic en los 3 puntos de la esquina superior derecha, en la opción repositorios y añade el siguiente enlace.
https://github.com/lolouk44/hassio-addons
  1. Baja al final de la página, para encontrar el complemento Xiaomi Mi Scale.
  2. Haz clic en “Instalar”.
  3. Espera unos segundos y activa la opción de “Vigilancia” y “Actualización automática”.
  4. Ahora abre en tu móvil la aplicación en la que tienes vinculada tu báscula (‘Zepp Life’). Entra en tu perfil y, entre tus dispositivos vinculados, haz clic en tu báscula. Al final del todo encontrarás su Dirección Bluetooth. Anótala.
  5. Vuelve a Home Assistant y entra en la pestaña de “Configuración”.
  6. Modifica los siguientes campos y después haz clic en “Guardar”. Si no los recuerdas, revisa la información en Ajustes > Dispositivos y servicios > MQTT > Configurar > Volver a configurar MQTT.
    • MISCALE_MAC. Indica la dirección bluetooth de tu báscula.
    • MQTT_HOST. Por defecto, ‘127.0.0.1’.
    • MQTT_USERNAME. Tu usuario de MQTT.
    • MQTT_PASSWORD. Tu contraseña de MQTT.
  7. Vuelve a la pestaña de Información y haz clic en “Iniciar”.
  8. Accede siempre a la pestaña de registro para verificar que no hay ningún mensaje de error y la instalación se ha realizado correctamente.
  9. Con esta pestaña abierta, haz la siguiente prueba. Lleva la báscula cerca de la Raspberry y pésate. Comprueba que se han publicado una serie de datos en el registro. Si es así ya has integrado tu báscula!

Configuración de perfiles

Como te comentaba, la integración ‘custom’ permite la creación de perfiles para distintos usuarios. Debes tener en cuenta que discrimina a los usuarios por franja de peso. Es decir, si, por ejemplo, tu pesas entre 65 y 75kg, y tu pareja entre 50 y 60kg, no haría problema. Sin embargo, si ambos estáis es una franja común (por ejemplo, 60-65kg) os va a confundir. Tenlo en cuenta a la hora de definir las franjas, ajustándolas todo lo posible.

Sigue estos pasos para crearlos:

  1. Vuelve a Ajustes > Complementos > Xiaomi Mi Scale > Configuración.
  2. Baja hasta el final de la página donde encontrarás el apartado ‘Users’.
  3. Copia el siguiente código para cada uno de los usuarios
- NAME: TiTo # Nombre del usuario
  SEX: male # Sexo (male / female)
  GT: 60 # Peso mínimo del usuario
  LT: 80 # Peso máximo del usuario
  HEIGHT: 176 # Altura
  DOB: "1985-12-20" # Fecha de nacimiento

Creación de sensores

Como has podido comprobar al realizar la prueba en la integración, la báscula proporciona distintos datos del usuario. Sin embargo crea un solo sensor (‘sensor.USARIO_weight’), cuyo valor es el peso, y el resto de datos son atributos del mismo. Puedes verificarlo en Herramientas para desarrolladores > Estados, y buscando el sensor. A la derecha verás todos los datos proporcionados.

Para poder trabajar con ellos de una forma más cómoda, vamos a crear un sensor para cada atributo que nos interese (por ejemplo, grasa, agua y masa muscular). Para ello pega el siguiente código en el fichero ‘sensors.yaml’ y no olvides sustituir donde pone “USUARIO” por el usuario creado en el apartado anterior (por ejemplo, ‘sensor.tito_weight’).

- platform: template
  sensors:
    USUARIO_grasa:
      friendly_name: "USUARIO grasa"
      value_template: >
        {{ state_attr('sensor.USUARIO_weight','body_fat') }}
      icon_template: mdi:human
      unit_of_measurement: "%"

- platform: template
  sensors:
    USUARIO_agua:
      friendly_name: "USUARIO agua"
      value_template: >
        {{ state_attr('sensor.USUARIO_weight','water') }}
      icon_template: mdi:water
      unit_of_measurement: "%"

- platform: template
  sensors:
    USUARIO_masa_muscular:
      friendly_name: "USUARIO masa muscular"
      value_template: >
        {{ state_attr('sensor.USUARIO_weight','muscle_mass') }}
      icon_template: mdi:arm-flex
      unit_of_measurement: "kg"

Tras copiar el código reinicia Home Assistant, y al iniciarse tendrás disponibles los nuevos sensores.

Tarjeta de peso y composición corporal

Después de haber creado los sensores correspondientes, podrías crear una tarjeta como la que ves a continuación, que muestra tu peso, tu composición corporal y una imagen que varía en función de si te encuentras por encima, por debajo o en tu peso objetivo. E incluso puedes utilizarla como base para construir un completo ‘personal trainer’.

En esta entrada te explico como crearla!

tarjeta peso

¿Dudas?¿necesitas ayuda? entra aquí
Y si te ha gustado, compártelo! 🙂
Send this to a friend