- Se desarrolló Timeframe, un dashboard basado en e-paper, para mostrar calendario, clima e información del hogar inteligente dentro de casa
- Aprovechando la función de actualización en tiempo real del Boox Mira Pro de 23 pulgadas, se hizo posible contar con una pantalla grande y visualización de estado en tiempo real
- El backend fue rediseñado desde Ruby on Rails hacia una arquitectura centrada en Home Assistant, lo que simplificó la integración de datos y el mantenimiento
- Actualmente se ha consolidado como la interfaz principal para mostrar en tiempo real el estado del hogar, y también se están evaluando opciones de menor costo
Trasfondo del desarrollo de Timeframe
- El proyecto comenzó después del matrimonio, cuando la pareja buscaba una forma de consultar el calendario y el clima manteniendo un entorno sin pantallas en la habitación
- El primer intento fue crear Magic Mirror con un botiquín y una pantalla LCD, pero surgieron problemas de baja legibilidad en ambientes luminosos y emisión de luz durante la noche
- Después, mediante el hackeo de un dispositivo Kindle, se creó un prototipo basado en e-paper configurado para actualizar la pantalla cada 30 minutos
- Los datos de Google Calendar y Dark Sky se obtenían en una app de Ruby on Rails y se renderizaban como PNG con IMGKit
- Se confirmó que el e-paper era adecuado porque no se veía afectado por el entorno de iluminación
Etapa de estabilización con Visionect
- El sistema basado en Kindle requería mantenimiento continuo, por lo que su confiabilidad era baja
- Se adoptaron pantallas e-paper de Visionect (6”/10”/13”/32”), con 2 a 3 meses de uso por carga
- La de 6” se colocó para el clima en la entrada, la de 13” al costado del refrigerador y la de 10” en la habitación
- En una Raspberry Pi se ejecutaba el backend en Rails, y las imágenes generadas con IMGKit se enviaban a la API de Visionect cada 5 minutos
- La lógica relacionada se separó en la librería visionect-ruby
- Funcionó de forma estable durante varios meses sin fallos
Prueba de mercado y limitaciones
- El interés de los visitantes llevó a realizar la primera prueba piloto con clientes
- Se probaron varios formatos, como una vista de calendario mensual en una pantalla de 13”
- Sin embargo, el precio cercano a $1000 y el costo de licencia mensual de $7 de Visionect resultaban pesados
- Al convertirlo en un servicio por suscripción, habría sido necesario cobrar más de $10 al mes
Cambio a Boox Mira Pro
- Tras perder por completo la vivienda en el Marshall Fire de 2021, el sistema se reconstruyó durante el proceso de diseño de la nueva casa
- Con el lanzamiento del Boox Mira Pro (25.3”), se volvió posible implementar e-paper de alta resolución con actualización en tiempo real
- Funciona mediante conexión HDMI a través de una Mac Mini
- Permite mostrar en tiempo real elementos como la canción que suena en Sonos, el pronóstico de lluvia y el reloj
- En la nueva casa se diseñó un espacio de instalación dedicado (“phone nook”) y también cableado eléctrico para pantallas Visionect adicionales
Reconfiguración del backend
- La necesidad de actualizaciones en tiempo real llevó a una gran reestructuración del backend existente en Rails
- En vez de renderizar imágenes, se cambió a un método de renderizado directo por URL
- Se adoptó Home Assistant (HA) como fuente principal de datos, integrando Google Calendar, Apple Weather y Sonos
- Se eliminó más de la mitad del código, y la arquitectura se simplificó al quitar la base de datos y Redis
- Las tareas en segundo plano se ejecutan con Rufus Scheduler, y los resultados se guardan con el backend de caché de archivos de Rails
- Se configuró para mostrar automáticamente el estado de sensores con el prefijo sensor.timeframe
- Ejemplo: detecta el consumo eléctrico del lavavajillas para mostrar una alerta si está funcionando después de las 8
Forma actual de operación
- Después de mudarse a la nueva casa, la visualización de estado en tiempo real pasó a cumplir un papel central
- Muestra visualmente el estado del hogar, como apertura y cierre de puertas o si terminó la lavadora
- Si la pantalla está vacía, se interpreta como “estado normal”
- Al separar el control de dispositivos y la visualización de estado, se puede entender la situación de inmediato sin tener que buscar información innecesaria
Retos a futuro
- Estabilizar el despliegue: se está mejorando el manejo de errores en tiempo de ejecución, y hace falta diseñar un sistema embebido que no requiera mantenimiento
- Integración completa con Home Assistant: el objetivo es migrar todas las fuentes de datos a HA y luego distribuirlo en forma de app de HA
- Reducir el costo del hardware: actualmente la pantalla Boox de 25” cuesta alrededor de $2000, lo que la hace pesada para el consumidor
Conclusión
- Timeframe ha evolucionado como un proyecto personal que mejora la eficiencia de la vida diaria en el hogar
- A diferencia del desarrollo de software para grandes cantidades de usuarios, se sigue impulsando como un trabajo creativo que mejora directamente la vida de su familia
2 comentarios
El ONYX BOOX Mira Pro se ve genial, pero el precio sí se siente pesado.
Comentarios en Hacker News
Si esta tecnología se masificara, podría generar un gran cambio en áreas como la señalización digital de alto consumo energético o las pantallas públicas
Recuerdo que antes la innovación se veía frenada por algunas patentes agresivas, no sé si eso siga pasando ahora
En cambio, la IA está reestructurando industrias enteras
Pero la pantalla principal cuesta $2000, así que para un hogar promedio es un precio difícil de justificar
La carcasa la imprimí en 3D y funciona con dos baterías. El costo total fue de menos de $100 y usé la API de OpenWeather gratis
Integrando HomeAssistant y ESPhome, se puede hacer perfectamente por menos de $100
El proyecto original es excelente, pero esto es mucho más práctico
Por ejemplo, la Samsung EM32DX es un letrero e-ink color de 32 pulgadas por menos de $1300, o menos de $1000 en oferta
Eso sí, la velocidad de refresco es lenta. Otra opción es la SVD rE 32" LCD reflectiva, aunque se ve bien solo con iluminación intensa
(Por cierto, soy parte de ese equipo)
No tiene integración con hogar inteligente, pero muestra calendario, clima, calidad del aire y alertas del metro
Hice la UI con Bootstrap 3 y corre bien incluso en un iPad Air 2 viejo. También quería reutilizar un dispositivo antiguo
Hay muchos modelos que se pueden rootear, y el Nook Simple Touch me gusta especialmente
Hace tiempo conseguí un panel e-ink que usaban en una tienda y logré hacerlo funcionar mediante ingeniería inversa
Modifiqué un Adafruit ThinkInk y escribí mi propia capa de drivers; como el primer panel funcionó perfecto, ya no seguí desarrollándolo
Enlace al proyecto
Enlace al proyecto
Bromas aparte, las pantallas e-ink siempre se ven increíbles
Hice un panel de vidrio con un marco de madera y lo uso como pizarrón blanco
Se volvió un espacio donde la familia se deja notas o dibujos para comunicarse, y fue un proyecto barato y divertido
Los EV6 e Ioniq de Kia y Hyundai estuvieron cerca de incluir carga inalámbrica, pero al final no funcionó
Lo atractivo de las pantallas eInk es que pueden entrar en modo suspensión completo entre actualizaciones, así que es posible usar carga por goteo
Cosas como la lavadora ya son tan familiares que no creo que necesiten información en tiempo real
Automatizar ese seguimiento repetitivo da más tranquilidad mental
No me gustan los electrodomésticos inteligentes conectados a la nube, pero sí prefiero integraciones locales como Home Assistant
Yo soy así, así que un sistema de alertas como este me ayuda
(Claro que las aletas de enfriamiento cerebral también ayudaron)
Ya tenemos el smartphone siempre al lado, así que no veo necesidad de sumar más pantallas
Cada hobby tiene un costo de entrada distinto, pero en esencia es lo mismo
Si no te interesa, puedes simplemente seguir de largo. Incluyéndome a mí, hay muchos que agradecemos publicaciones como esta
En cambio, una pantalla en la pared solo requiere mirarla
Ver el pronóstico hace mucho más fácil planear actividades
La información que más consulto en mi Apple Watch es el índice UV. Es mucho más importante que la temperatura o la batería