Skip to content

cepds/fitness-ble-hub

Repository files navigation

FitSync

FitSync demo

Android app para peso, calorias, treino e integracao BLE com balanca bluetooth e relogio generico.

Visao geral

O FitSync junta tres frentes no mesmo app:

  • Corpo: peso, meta, alimentacao e saldo calorico
  • Treino: exercicios, series, timer de descanso e dicas
  • Bluetooth: scan BLE, services, payload bruto e diagnostico copiavel

O que ja esta pronto

  • onboarding com 4 passos: nome, idade, peso atual e peso alvo
  • navegacao em duas abas principais: Corpo e Treino
  • calculo de BMR, manutencao e meta diaria com deficit de 500 kcal
  • base inicial de alimentos com busca, refeicoes rapidas e lancamento por gramas
  • registro manual de peso e grafico simples de tendencia semanal
  • catalogo inicial de treinos com exercicio atual, series, descanso e timer
  • scan BLE para descobrir balanca e relogio
  • classificacao heuristica por nome e services GATT
  • conexao BLE com descoberta de services, leitura e subscribe
  • leitura padrao de bateria, frequencia cardiaca, peso e body composition quando o hardware expuser GATT compativel
  • persistencia local de perfil, alimentos, dispositivos, medicoes e payloads brutos
  • bloco Diagnostico BLE para copiar os dados tecnicos do aparelho e fechar parser depois

Estrutura do produto

Corpo

  • dashboard com meta calorica, consumidas, gastas e saldo
  • lancamento de alimentos por gramas
  • refeicoes rapidas
  • registro manual de peso
  • grafico semanal de tendencia
  • scan e conexao BLE no mesmo fluxo

Treino

  • selecao de programa
  • exercicio atual com foco muscular
  • cards de reps, series e descanso
  • timer com ajuste rapido
  • dicas de execucao
  • bloco preparado para integrar dados do relogio

BLE

  • captura de advertising BLE
  • manufacturer ID
  • manufacturer data em hex
  • scan record bruto em hex
  • services e characteristics descobertos
  • payloads recentes
  • eventos persistidos para analise

Stack

  • Kotlin
  • Jetpack Compose
  • Hilt
  • Room
  • Navigation Compose
  • Bluetooth LE nativo

Build local

No Android Studio:

  1. abra a pasta fitness-ble-hub
  2. aguarde o sync do Gradle
  3. rode o modulo app

No PowerShell:

$env:JAVA_HOME='C:\Program Files\Android\Android Studio\jbr'
$env:Path="$env:JAVA_HOME\bin;$env:Path"
.\gradlew.bat :app:assembleDebug --no-build-cache

APK

O build debug gera:

app/build/outputs/apk/debug/app-debug.apk

Limite atual de hardware

  • a balanca ja entra no fluxo de scan, conexao, leitura padrao e captura do payload bruto
  • o relogio generico ja entra no fluxo de scan, conexao e leitura padrao de bateria e frequencia cardiaca quando o firmware expuser services conhecidos
  • o parser proprietario final ainda depende do protocolo real anunciado pelos aparelhos

Como coletar os dados BLE

  1. abrir a aba Corpo
  2. tocar em Permitir BLE
  3. tocar em Buscar aparelhos
  4. conectar na balanca ou no relogio
  5. rolar ate Diagnostico BLE
  6. tocar em Copiar diagnostico BLE
  7. salvar o texto copiado para analisar depois

Continuar depois

Se quiser retomar o projeto sem depender do historico da conversa, use:

CONTINUAR.md

Git independente

Esta pasta tambem pode ser usada como repositorio Git proprio, separado do monorepo maior.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors