MomBoard, una pantalla E-ink para un padre o madre con amnesia
(jan.miksovsky.com)- Es un tablero E-ink de visualización permanente creado para que una madre con dificultad para formar nuevos recuerdos a largo plazo pudiera seguir viendo el estado y la agenda de su familia mientras vive sola
- El hardware usa la serie BOOX Note Air2; su navegador web, página de inicio automática, pantalla no luminosa, apariencia hogareña y tamaño legible a varios pies de distancia cumplían con los requisitos
- El software se divide en una página Board para mostrar mensajes y una página Compose para redactarlos; Board usa una estructura de marco externo y página interna para resistir fallas de red y permitir actualizaciones remotas
- Los datos se guardan en un único objeto JSON de JsonStorage; Compose guarda con POST y Board obtiene con GET cada 5 minutos, manteniendo una estructura simple
- Tras instalarse el 12 de noviembre de 2022, resultó útil en la vida real durante 2 años, y mantener mensajes actualizados con una baja necesidad de interacción fue clave para reducir la confusión
Estado de la madre y necesidades reales
- En junio de 2022, como efecto secundario de una larga cirugía, la madre sufrió amnesia anterógrada permanente
- Ya no puede formar nuevos recuerdos a largo plazo
- Aunque escuche algo o vea algo, por lo general lo olvida pocos minutos después
- Para el personal médico puede parecer similar a la demencia, pero en este caso no lo es
- La demencia es una enfermedad progresiva, mientras que esta amnesia es una condición estable
- No existe tratamiento
- La madre sigue viviendo sola en su departamento y mantiene un nivel bajo de ansiedad sobre dónde están sus hijos y si están bien
- Esa ansiedad la lleva a intentar llamarles o escribirles con mucha frecuencia
- Los recordatorios existentes no duraban mucho
- Las notas en papel se perdían o enseguida quedaban desactualizadas
- Aunque sus hijos la llamaran, cinco minutos después volvía a preocuparse
- Los mensajes de texto, una vez leídos, no volvía a desplazarse para revisarlos, así que en la práctica desaparecían
Objetivos de diseño de la pantalla
- La meta era un dispositivo discreto de visualización permanente instalado dentro del departamento, para que sus hijos pudieran dejar mensajes cortos y la madre pudiera seguir viéndolos
- Las condiciones para la pantalla eran las siguientes
- Poder permanecer encendida durante meses
- Que sus hijos pudieran publicar mensajes cortos fácilmente y que estos siguieran visibles hasta ser reemplazados
- Ser lo bastante grande y fácil de leer incluso sin lentes
- No requerir interacción para activarse o leerse, y que tocarla no rompiera el funcionamiento
- Ser resistente a fallas de red
- No emitir luz por la noche
- No requerir hacks de hardware
- Mostrar el mensaje en cuanto arranca
- No depender de servicios por suscripción ni de tiendas de aplicaciones propietarias
- No tener un precio excesivamente alto
- No verse fuera de lugar dentro de una casa
Elección de BOOX Note Air2
- Se eligió un BOOX Note Air2 Series como dispositivo que cumplía las condiciones
- En ese momento costaba US$500, mucho menos que las pantallas para señalización comercial
- Aunque se vende como dispositivo de escritura y lector de libros electrónicos, tiene un navegador web utilizable
- La pantalla es lo bastante grande como para leerse a varios pies de distancia
- Antes de comprarlo, la gran duda era si podía iniciar el navegador web automáticamente y mostrar una página de inicio definida
- Cuando llegó el dispositivo, se confirmó que ambas funciones eran posibles
- Su aspecto físico no se veía exageradamente tecnológico y la pantalla E-ink era nítida y fácil de leer
- La velocidad de refresco de pantalla no resultaba distractora
- La luz frontal, que venía encendida por defecto, podía apagarse
- Se colocó con un pequeño soporte metálico para que pareciera un marco de fotos
Estructura del software web
- El sitio se compone de dos páginas
- Página Board: la pantalla que muestra los mensajes, y la página que el dispositivo E-ink abre al arrancar
- Página Compose: la pantalla donde los hijos redactan y guardan mensajes
- La página Board se divide en un marco externo y una página interna para soportar ejecución prolongada, manejo de fallas y actualizaciones remotas
- El marco externo actúa como una carcasa delgada que envuelve la página interna
- Cada hora en punto vuelve a cargar la página interna para reflejar posibles cambios de software
- Si la red se cae y no puede volver a cargar la página interna, lo intenta de nuevo una hora después
- Por confiabilidad, el marco externo tiene muy poca lógica y no depende de recursos externos
- La página interna muestra el mensaje real
- Cada 5 minutos solicita los datos del mensaje a un servicio web simple
- Incluye muy poca lógica y reduce al mínimo las dependencias
- Como depurar problemas en el dispositivo es prácticamente difícil, se usó HTML/CSS vanilla tanto como fue posible
- Solo se usa una pequeña cantidad de JavaScript
- No se usan frameworks ni otras bibliotecas
- La página Compose está hecha como un formulario web simple
- Está diseñada para funcionar bien en la pantalla del teléfono y permitir escribir mensajes incluso estando fuera de casa
- Puede guardarse como ícono en la pantalla de inicio del teléfono mediante un pequeño manifiesto de app web
- Todo el sitio es muy pequeño, no tiene proceso de build y, salvo la parte de servicio, está compuesto por archivos estáticos
Diseño de pantalla y manejo del tamaño de letra
- Para reducir la posibilidad de quemado en E-ink, la página Board cambia aleatoriamente la posición donde se muestra el mensaje
- Otros elementos visuales, como la fecha y la hora, también alternan entre izquierda y derecha
- La intención es evitar que un mismo píxel permanezca siempre encendido
- Para darle al texto de las notas una sensación de letra manuscrita, se usó la fuente Architect’s Daughter
- Esta fuente funciona bien en pantallas E-ink
- Para las etiquetas se usó Open Sans
- Los mensajes a veces eran de una o dos palabras y otras veces de varias oraciones, por lo que era difícil resolverlo con un solo tamaño de letra
- No se encontró una forma en CSS puro de maximizar automáticamente el tamaño de letra de un elemento con saltos de línea sin que el texto se cortara
- Se implementó la maximización del tamaño de letra con una pequeña función en JavaScript
- El texto se oculta con
visibility: hidden - Se intenta mostrarlo empezando por un tamaño muy grande
- Se prueban tamaños de letra cada vez más pequeños hasta encontrar uno en el que quepa todo el texto
- Una vez encontrado el tamaño adecuado, vuelve a hacerse visible
- El texto se oculta con
Servicio de almacenamiento de datos e instalación
- Como los datos a mostrar eran solo pequeñas cantidades de texto, JsonStorage encajaba bien en el proyecto
- Guarda en un único objeto JSON el texto y los metadatos del conjunto actual de mensajes
- La página Compose guarda con una solicitud POST
- La página Board obtiene los datos con una solicitud GET
- Al principio se usó el nivel gratuito, pero después se pagó el plan básico de US$1 al mes
- Se añade que ese plan actualmente parece costar US$5 al mes
- El software se desarrolló durante varias semanas y se hicieron pruebas de ejecución prolongada
- La pantalla Boox funcionó mejor de lo esperado y parecía permanecer siempre encendida
- El 12 de noviembre de 2022 se llevó el dispositivo al departamento de la madre y se instaló
- Se encendió y se conectó al Wi-Fi
- Se reinició para confirmar que funcionaba en el nuevo entorno
- Al principio se pensó en el mostrador del baño, pero como la madre prefería el dormitorio, se colocó en el alféizar de la ventana
- A la madre le gustó la pantalla desde el momento de la instalación
Resultado tras 2 años de uso
- A pesar de su amnesia, la madre llegó a recordar que esta pantalla existe y para qué sirve
- Espera ver las actualizaciones de sus hijos
- Cuando le cuentan algo programado, a veces pregunta si ese evento ya fue publicado en MomBoard
- Los mensajes deben mantenerse actualizados
- Si no se retiran los mensajes que ya no aplican, la madre se confunde
- Se considera casi la única intervención intentada que realmente mejoró la calidad de vida de la madre y de su familia
- Una de las razones del éxito es que la madre no necesitó aprender nada nuevo
- Como no puede recordar cosas nuevas, formar nuevos hábitos o aprender nueva tecnología es prácticamente imposible
- La estabilidad del dispositivo superó las expectativas
- Hubo un período en que parecía haber dejado de funcionar, pero la causa fue un hub Wi-Fi defectuoso
- Después de reemplazar el hub, volvió a funcionar sin problemas
- Mantener el software lo más simple posible y usar tecnologías web vanilla ayudó a evitar bugs
- Incluso después de 2 años, la pantalla sigue viéndose bien y mostrando mensajes todos los días
- El código fuente de MomBoard está publicado en GitHub
1 comentarios
Opiniones de Hacker News
Es un hermoso uso de la tecnología para proteger la personalidad de alguien y su sensación de ser amado. Desde hace mucho quería un dispositivo eInk de pared que, con solo configurar la URL y los datos de Wi-Fi, renderizara un archivo Markdown y se actualizara más o menos una vez por hora.
Soy sacerdote parroquial, así que podría usarlo para avisos de eventos, cancelaciones de servicios religiosos, la lista actual de oraciones, y los usos parecen infinitos. Si fuera un producto resistente, que se pudiera colgar en la pared y solo hubiera que cargar cada uno o dos meses, estaría dispuesto a pagar unos cientos de dólares por dispositivo.
Yo también quería un dispositivo eInk genérico de ese tipo, y dicen que este es bastante hackeable.
index.htmlen algún lugar, pones en la etiquetaheaduna metaetiqueta que lo actualice cada hora y luego ejecutaspython -m http.serveren la misma carpeta; con eso se levanta un servidor web de un solo hilo en el puerto 8000.Después verificas desde otro dispositivo que se pueda entrar a
http://firstmachine:8000/, compras una pantalla eInk y configuras esa dirección como página de inicio predeterminada. De ahí en más, con solo modificarindex.htmlse actualiza la pantalla, así que basta con la funcionalidad básica de Python, sin servicios de suscripción ni Kickstarter.Puedes comprar solo el módulo, o también productos con batería y carcasa para colgar en la pared. Si te cuesta confiar en un sitio web al azar, parece que la mayoría de los modelos también están en Digikey y Mouser.
https://soldered.com/categories/inkplate/
Ojalá este artículo hubiera aparecido en HN hace unos años, cuando mi madre pasó por el mismo estado cruel durante los últimos 4 años de su vida, o que a mí se me hubiera ocurrido una idea así. Su cuerpo, sus recuerdos antiguos y una inteligencia considerable estaban en general intactos, pero varias veces al día tenía momentos de lucidez en los que comprendía por completo la situación terrible y desesperanzadora en la que estaba.
Sin embargo, en cuestión de segundos, ese pensamiento y las decisiones que surgían de él desaparecían en el agujero negro de su memoria de corto plazo dañada, y aunque hubiera querido, ni siquiera habría tenido la capacidad de terminar con su vida por sí misma. Mis hermanos y yo intentamos muchas cosas para mejorar aunque fuera un poco su vida, pero en realidad pocas tuvieron algo de éxito.
Dos de ellas fueron dispositivos digitales. Lo que más le gustaba era un marco digital LCD que mostraba en bucle infinito fotos familiares desde una tarjeta SD, y lo mantenía encendido con bastante constancia. El otro era una bocina MP3 con varias horas de su música favorita en una tarjeta SD, que podía usar como una radio, solo con botones de reproducir/detener y volumen, y a veces podía disfrutarla. Les deseo suerte al autor, a su madre y a todos los que estén en una situación parecida.
Mi esposa tuvo amnesia anterógrada después de un accidente de tránsito. No sé si este dispositivo le habría funcionado, aunque probablemente habría redescubierto el aparato cada 10 minutos y quizá se habría alegrado cada vez.
Por suerte se recuperó por completo después de unas semanas. Cuidar a alguien en ese estado requiere una paciencia enorme, y se veía que a la propia persona también le causaba una gran frustración con frecuencia. En la práctica, casi cada 10 minutos.
Me conmovió profundamente, algo poco común en un post de HN. Es un uso hermoso y simple de la tecnología que mejora de forma clara y enorme la vida de alguien.
La parte en que su madre recuerda la existencia de la tablet suena parecida al famoso caso de neuropatología de Henry Molaison. Debido a cierto daño cerebral, él no podía formar recuerdos nuevos, igual que la madre del autor del post original, pero los estudios mostraron que podía recordar algunas cosas, aunque no de forma consciente.
Por ejemplo, aunque no recordaba a la persona que lo cuidaba, sentía afecto por ella; y aunque decía no recordar haber jugado un juego de cartas, lo aprendía más rápido con la repetición. El hecho de que recuerde la tablet también parece muy similar si se lo ve junto con la sensación de que sus hijos la recuerdan y la aman.
El texto dice que es un estado que uno no le desearía ni a su peor enemigo. La descripción de “sentirse ansiosa por no saber dónde están sus hijos ni si están bien, y sentir que hace mucho que no tiene noticias de ellos” no parece la de alguien congelado en el tiempo, sino una combinación terrible de cierto grado de aprendizaje o “memoria”, percepción del paso del tiempo y ausencia de memoria episódica que pueda explicarlo.
También me pregunto si esos sentimientos cálidos son más fuertes hacia alguien que recuerda a una persona conocida del pasado. Algo como: “Esta enfermera me recuerda a la tía Sarah, que fue tan buena conmigo cuando murió mi perro”.
Es interesante la parte de maximizar el tamaño del texto de los mensajes. A veces el mensaje tiene una o dos palabras y otras veces varias oraciones, así que es difícil manejarlo con un único tamaño de fuente; dice que no encontró una forma en CSS puro de agrandar automáticamente al máximo un elemento de texto con saltos de línea sin que se recorte.
Al final, usó una función de JavaScript que pone el texto en
visibility: hidden, prueba desde un tamaño muy grande, lo va reduciendo hasta encontrar uno que encaje y luego lo vuelve a mostrar. Parece una función que sería muy útil como funcionalidad básica de CSS, no solo por accesibilidad. En conjunto, es un uso de la tecnología que calienta el corazón.CSS cruzó una línea, y si fuera hoy votaría por descartarlo por completo. Sé que es una afirmación fuerte y polémica, pero viniendo de haber crecido con Microsoft Word y Aldus PageMaker, se puede decir que la autoedición era mejor en los años 80 que hoy. Incluso mucho antes de la web o del soporte técnico, en pequeños negocios familiares se podía hacer trabajo real.
No entiendo por qué hoy escribimos interfaces en algo que, en la práctica, se siente como lenguaje ensamblador. Recién hace poco entendí cómo se suponía que debía funcionar originalmente
floatjunto conshape-outside, y el ejemplo se puede ver con el botón Run code snippet.https://stackoverflow.com/a/33953666
Al ver cómo este pequeño marcado fluye como un artículo de revista, queda claro que los navegadores debieron poder hacer esto desde el principio. Pero los hicieron personas del mundo Unix y PC, no expertos en interfaces humanas como Bill Atkinson. Basta ver cuánto tardó en aplicarse correctamente trazo y sombra a las fuentes de contorno para entender por qué los primeros sitios web parecían Myspace cuando ponían texto sobre imágenes.
A CSS le ayudaría poder conocer mejor las dimensiones del elemento contenedor, como con
calc()o las consultas@media. Aunque tampoco deberíamos tratar lo móvil como algo aparte, así que@mediaen sí también es debatible. Necesitamos una metáfora de composición tipográfica más potente quejustify, y debería ser posible ajustar automáticamente el tamaño de la fuente al contenedor.El pecado original de CSS fue intentar darle a todo el mundo una herramienta de diseño de plantilla genérica y neutral respecto del medio. Habría sido mejor tomar como base el flujo automático intuitivo de Qt y, cuando hiciera falta, bajar a una matriz de restricciones al estilo Apple Auto Layout. Como referencia, soy desarrollador backend, y me deja boquiabierto ver cuánto esfuerzo hace falta en frontend para lograr tan poco.
font-size: "as-big-as-possible-while-still-fitting-parent-container";o simplementefont-size: max;.Hay varias formas de hacerlo, pero si uno imagina que existiera una solución de CSS en una sola línea como
font-size: 12-18px 400px;, todas las demás son rodeos molestos. Ojalá hubiera algo que lo hiciera automáticamente.Para el problema de que “si no se quitan los mensajes que ya no aplican, su madre se confunde”, estaría bueno ponerle a cada mensaje una fecha y hora de inicio/fin y que el tablero lo gestione. Así se podrían programar con anticipación y hacer que desaparezcan automáticamente.
Me inspiré en Poetry clock (https://www.theverge.com/23669343/ai-clock-chatgpt-poems-rhy...) para crear una pantalla eInk con Raspberry Pi para mantenerme en contacto con mis padres.
A mi padre no le gustó Poetry clock, pero sí le gustó la generación de imágenes. Así que conecté una Inky Impression 7.3 a color a una Raspberry Pi.
Creé un bot básico de Telegram para que, al enviarle un prompt de voz como “un día de nieve”, preguntara en qué estilo de sus pintores favoritos debía crear la imagen. Cuando combinaba dos estilos y los mostraba como lista, los resultados salían más interesantes. El prompt traía una cita aleatoria relacionada con el tema y, al enviar la cita y el estilo a Stable Diffusion, unos 30 segundos después aparecían en la pantalla una nueva imagen y la cita.
Después mi padre preguntó si simplemente podía enviar imágenes directamente, y ahora prefiere subir cada día una imagen acorde a lo que se conmemora ese día, por ejemplo el 13 de noviembre, “World Kindness Day”, y de vez en cuando fotos familiares. Mi madre espera con ilusión ver qué día eligió mi padre cada día.
Según Webb, aproximadamente una vez cada 15 minutos el reloj simplemente miente sobre la hora para hacer que rime. Por ejemplo, cuando en realidad son “two past one”, dice “one past two”. Se podría corregir, pero por ahora es una característica divertida, y me llamó la atención la frase de que “los mecanismos de relojería tienen deriva de precisión y los dispositivos de IA tienen deriva de alucinación”.
La demencia se parece más a una falla progresiva multisistema en la que se dañan juntos la CPU, la RAM, el SSD y la placa madre; si uno mira solo la amnesia anterógrada, es una falla en la que no se puede escribir en el SSD.
Que a un aficionado a la medicina le cueste distinguir ambas cosas es parecido a lo que pasa con un aficionado a la tecnología, pero un experto médico debería distinguirlas igual que un experto técnico. Si no se puede actualizar el SSD, compensar el SSD dañado con la CPU y la RAM es un hack excelente. Cosas así son justamente la razón por la que reviso Hacker News casi todos los días.
Pimoroni tiene varias pantallas eInk de hasta 7,3 pulgadas, incluidos modelos con botones y LED. Puedes hacer lo que quieras.
https://shop.pimoroni.com/search?q=inky
Todas las tablets y lectores de ebooks Boox simplemente ejecutan Android. Para quienes preguntan por cargar y mostrar una página web, Android puede hacer literalmente todo lo que Android puede hacer, y también hay varias apps de kiosco y navegadores con modo kiosco. También hay herramientas de automatización para Android bastante caras.
También se pueden comprar solo los módulos, o productos con batería y carcasa para montar en la pared. Si no te da confianza un sitio web cualquiera, parece que la mayoría de los modelos también están en Digikey y Mouser.
https://soldered.com/categories/inkplate/
En la demo del video de presentación, varios colores parpadean durante bastante tiempo mientras se realiza la actualización larga, lo cual podría ser muy confuso para alguien cuya memoria de corto plazo quizá no dure tanto.
[0] https://www.youtube.com/watch?v=TluopgSoSWY&t=500s
Es una historia realmente excelente, y me alegra que el autor haya encontrado algo que le funciona bien a su madre. Lo más interesante es que, aun con pérdida de memoria, su madre llegó a recordar la existencia y el propósito de esta pantalla, y espera las actualizaciones de sus hijos.
El cerebro es realmente asombroso. Sería bueno saber si esto es una tendencia particular de su madre o si también podría ayudar a otras personas en estados similares.
[1] https://en.wikipedia.org/wiki/Henry_Molaison
[2] https://en.wikipedia.org/wiki/Repetition_priming