Una aplicación web responsive que utiliza la Web Bluetooth API para conectarse a sensores de ciclismo y mostrar datos en tiempo real.
- Interfaz responsive: Funciona perfectamente en dispositivos móviles y computadoras
- Conexión Bluetooth: Se conecta a sensores de frecuencia cardíaca, cadencia y potencia
- Visualización en tiempo real: Muestra datos en una grilla clara y fácil de leer
- Grabación de datos: Permite iniciar/detener la grabación de sesiones
- Exportación CSV: Descarga los datos registrados en formato CSV
- Diseño moderno: Interfaz atractiva con animaciones y efectos visuales
- Frecuencia Cardíaca (bpm)
- Potencia (watts)
- Cadencia (rpm)
- Distancia (km) - calculada automáticamente
- Velocidad (km/h) - calculada automáticamente
- Tiempo de sesión (h:m:s)
- Navegador compatible: Chrome, Edge u otro navegador que soporte Web Bluetooth API
- Dispositivos Bluetooth: Sensores de ciclismo compatibles con los protocolos estándar:
- Heart Rate Service (0x180D)
- Cycling Speed and Cadence Service (0x1816)
- Cycling Power Service (0x1818)
- Abrir la aplicación: Abre
index.htmlen un navegador compatible - Conectar sensores:
- Haz clic en "Conectar Sensores"
- Selecciona qué tipos de sensores quieres conectar
- Haz clic en "Buscar Dispositivos"
- Selecciona tus sensores de la lista que aparece
- Iniciar grabación:
- Una vez conectados los sensores, haz clic en "Iniciar Grabación"
- Los datos comenzarán a registrarse automáticamente
- Detener y descargar:
- Haz clic en "Detener Grabación" cuando termines
- Haz clic en "Descargar CSV" para obtener los datos
cycling-sensors-app/
├── index.html # Archivo principal HTML
├── styles.css # Estilos CSS responsive
├── script.js # Lógica JavaScript y Web Bluetooth API
└── README.md # Este archivo
- Búsqueda automática de dispositivos Bluetooth LE
- Conexión a múltiples sensores simultáneamente
- Lectura de características en tiempo real
- Manejo de desconexiones automáticas
- Velocidad: Calculada basada en la cadencia y circunferencia de rueda (2.1m)
- Distancia: Acumulada durante la sesión de grabación
- Tiempo: Cronómetro automático durante la grabación
El archivo CSV incluye las siguientes columnas:
- Timestamp (ISO 8601)
- Frecuencia Cardíaca (bpm)
- Cadencia (rpm)
- Potencia (watts)
- Velocidad (km/h)
- Distancia (km)
- ✅ Chrome 56+
- ✅ Edge 79+
- ✅ Opera 43+
- ❌ Firefox (no soporta Web Bluetooth API)
- ❌ Safari (no soporta Web Bluetooth API)
- ✅ Computadoras con Bluetooth 4.0+
- ✅ Teléfonos Android con Chrome
- ❌ iPhone/iPad (Safari no soporta Web Bluetooth)
- Usa Chrome, Edge u Opera
- Asegúrate de que el navegador esté actualizado
- En Android, usa Chrome como navegador
- Verifica que el Bluetooth esté activado
- Asegúrate de que los sensores estén en modo de emparejamiento
- Los sensores deben estar cerca del dispositivo (< 10 metros)
- Verifica la conexión Bluetooth
- Reinicia los sensores si es necesario
- Recarga la página y vuelve a conectar
La aplicación está construida con:
- HTML5: Estructura semántica
- CSS3: Diseño responsive con Flexbox y Grid
- JavaScript ES6+: Web Bluetooth API y manejo de datos
- Sin dependencias externas: Funciona completamente offline una vez cargada
Este proyecto es de código abierto y puede ser modificado según tus necesidades.