HeadlinesBriefing favicon HeadlinesBriefing.com

Pantalla de tinta electrónica como impresora

Hacker News •
×

Planeé construir una pantalla de tinta electrónica y encontré la Xteink X3, que era totalmente programable. Se sentía sólida y plana, pero cargar contenido era tedioso: tenía que usar su punto de acceso y un cargador web. Quería que actuara como papel, así que exploré el Protocolo de Impresión de Internet (IPP).

IPP permite que una computadora consulte las capacidades de una impresora, envíe documentos y verifique el estado de los trabajos a través de HTTP. Anuncié salida monocromática a 300 ppp, una copia, una cara, aceptando formatos de trama de Apple y PWG. Luego la Mac convirtió las páginas en píxeles.

Declaré papel A5 y Carta, medios normales y una bandeja de salida boca arriba, nombrándola "penguin" con Bonjour para descubrimiento sin controladores en macOS. El desafío era la memoria: una página Carta a 300 ppp sin comprimir es 8.4 MB, pero la X3 solo tenía 400 KB de RAM. Usé una tubería de transformación para decodificar, escalar y aplicar tramado a las filas directamente en la pantalla, evitando una segunda imagen completa.

La RAM de la pantalla servía como búfer de trama, y procesé filas secuencialmente, mostrando bandas como alimentación de papel. Cada actualización tomaba medio segundo, así que cambié a mostrar la página completa de una vez. Guardé la imagen final como BMP en la tarjeta SD usando el escritor de capturas existente.

Esto liberó suficiente memoria para los búferes de red. Imprimir una página de manga desde Preview funcionó: apareció en la pantalla de tinta electrónica en aproximadamente un segundo, y la imagen permaneció allí. El proyecto tuvo éxito, convirtiendo una simple pantalla de tinta electrónica en una impresora funcional.