Firebase: la nube de Google para IoT
Firebase es la plataforma de desarrollo de Google que incluye base de datos en tiempo real (Realtime Database), autenticación, hosting y almacenamiento. Para proyectos IoT, Firebase Realtime Database es especialmente útil: cualquier cambio en la base de datos se sincroniza instantáneamente a todos los clientes conectados (ESP32, app Android, navegador web).
El plan gratuito Spark incluye 1 GB de almacenamiento y 10 GB de transferencia mensual, más que suficiente para proyectos personales. Necesitas un ESP32 de Especificar.cl y una cuenta gratuita de Google.
Configuración en Firebase Console
- Crea un proyecto en console.firebase.google.com
- Habilita Realtime Database en modo de prueba (sin autenticación para empezar)
- Copia la URL de la base de datos (ej: https://mi-proyecto.firebaseio.com)
- Copia la API Key del proyecto
- Instala la librería Firebase-ESP-Client de Mobizt en Arduino IDE
Escritura de datos desde ESP32
Con Firebase.RTDB.setFloat(&fbdo, "/sensores/temperatura", 25.6) escribes el valor de temperatura en la ruta /sensores/temperatura de la base de datos. Cualquier app Angular, React o móvil escuchando esa ruta recibirá el nuevo valor en menos de 100ms.
Lectura y control bidireccional
Para control bidireccional, el ESP32 puede escuchar cambios en una ruta de la base de datos. Cuando alguien escribe "true" en /controles/led desde una app web, el ESP32 lo detecta en el próximo polling o via Stream y activa el LED correspondiente. Este patrón permite control remoto de cualquier dispositivo conectado al ESP32 desde cualquier parte del mundo.
¿Nuevo con el ESP32? Te recomendamos partir por la guía completa del ESP32: especificaciones, cómo programarlo con Arduino IDE y precio en Chile.