HA InBody - Integração com Smart Scale InBody

:balance_scale: HA InBody – A sua balança InBody direto no Home Assistant

Fala pessoal, tudo bem? :waving_hand:

Quem tem uma balança InBody sabe que ela entrega muito mais que o peso: gordura, massa muscular, água corporal… Só que tudo isso fica preso no app. Eu queria esses dados no Home Assistant, junto com o resto da casa, e como não achei nada pronto, criei o HA InBody.

É uma integração customizada (instalável pelo HACS) que busca as suas pesagens na nuvem da InBody e cria os sensores, e traz também um card pronto para o dashboard, com mapa corporal e quadrante de tipo físico.

:warning: Aviso: a InBody não tem API pública para uso pessoal. A integração usa a API do app móvel (descoberta por engenharia reversa, graças ao projeto rwestergren/inbody-api-mcp). Ou seja, é não oficial e pode parar de funcionar se a InBody mudar o app ou os servidores. Também é bom saber que ela depende da nuvem: a pesagem só aparece no HA depois que chega ao app da InBody.

:camera_with_flash: Prints

Aba Composition (mapa do corpo, com água, músculo e gordura)

Composition – tema claro
Composition – tema escuro

Aba Quadrant (IMC × % de gordura)

Quadrant – tema claro
Quadrant – tema escuro

:sparkles: O que ela faz

  • :balance_scale: Sensores de peso, IMC, % de gordura, massa muscular esquelética, massa de gordura e água corporal (em kg e em %)
  • :three_o_clock: Última pesagem como sensor de data/hora
  • :chart_increasing: Importa todo o seu histórico de pesagens, e ele aparece nos gráficos de estatísticas do HA
  • :test_tube: Métricas extras: qualquer outro campo numérico que a sua conta devolver (proteína, minerais, massa magra, relação cintura-quadril…) vira um sensor, desativado por padrão para não poluir a lista
  • :counterclockwise_arrows_button: Atualiza a cada 30 minutos (configurável)
  • :globe_showing_americas: Funciona com qualquer balança InBody que sincronize com o app

:puzzle_piece: O card

O card custom:ha-inbody-card é carregado sozinho junto com a integração, não precisa adicionar recurso nenhum. Ele tem quatro abas:

  • Weight: peso e massas em kg, com gráfico
  • Percentage: gordura, músculo e água em %, com gráfico
  • Composition: um mapa do corpo (homem ou mulher) dividido em faixas: :droplet: água em azul, :flexed_biceps: músculo em verde e :orange_circle: gordura em laranja
  • Quadrant: a grade de tipo físico (IMC × % de gordura), com um ponto na sua posição e a região destacada

Embaixo das abas aparece a data da última pesagem: normal até 1 semana, :orange_circle: laranja depois disso e :red_circle: vermelha depois de 1 mês, como um lembrete para subir na balança. E nas abas Composition e Quadrant dá para voltar e avançar no tempo, pesagem por pesagem.

Tudo é configurável pelo editor visual: abas, sensores de cada aba, período do gráfico, figura masculina ou feminina.

Os limites das regiões do quadrante foram tirados de um gráfico do app da InBody (não são publicados oficialmente), então trate o nome da região como uma aproximação.

:robot: Exemplo de automação

Um lembrete se passar mais de uma semana sem se pesar:

alias: Lembrete de pesagem
triggers:
  - trigger: time
    at: "08:00:00"
conditions:
  - condition: template
    value_template: >
      {% set last = states('sensor.inbody_last_scan') %}
      {{ last not in ['unknown', 'unavailable']
         and (now() - last | as_datetime).days >= 7 }}
actions:
  - action: notify.notify
    data:
      message: "Faz mais de uma semana que você não se pesa ⚖️"

(ajuste o nome da entidade e do serviço de notificação para o seu caso)

:hammer_and_wrench: Instalação

  1. No HACS, abra o repositório pelo botão abaixo (ou adicione https://github.com/jacardbr/ha-inbody como repositório personalizado, categoria Integration)

    Abrir no HACS

  2. Baixe e reinicie o Home Assistant

  3. Em Configurações → Dispositivos e serviços → Adicionar integração, procure