El proyecto zenvision-linux es el primer driver de código abierto para Linux compatible con la pantalla OLED integrada en la tapa del ASUS Zenbook 14X OLED Space Edition (modelo UX5401ZAS), un panel monocromo de 3,5 pulgadas con resolución 256×64. ASUS solo ofrece soporte oficial para esta pantalla en Windows, a través de la aplicación MyASUS, por lo que el protocolo USB del dispositivo, basado en un microcontrolador Nuvoton M480 (identificado como 0b05:8835), tuvo que reconstruirse mediante ingeniería inversa con la herramienta Ghidra.
El driver opera en espacio de usuario y no expone la pantalla como un dispositivo DRM convencional: en lugar de generar un framebuffer en /dev/fb, envía un búfer de 256×64 píxeles en escala de grises de 4 bits a un endpoint bulk tras un breve intercambio de comandos. Los detalles completos del protocolo están documentados en el archivo PROTOCOL.md del repositorio. El software se distribuye bajo licencia MIT y se instala mediante pip (requiere pyusb y Pillow) o desde el AUR de Arch como zenvision-linux-git, que también instala una regla udev para evitar el uso de sudo.
En la práctica, el comando zenvision permite mostrar imágenes estáticas (con redimensionado y conversión a escala de grises automáticos), reproducir secuencias de fotogramas como animaciones suaves a un fps configurable o apagar el panel. El brillo se ajusta con el parámetro --bright 0xff. Un script de ejemplo, spark_demo.py, genera una animación de ráfaga de estrellas lista para alimentar el reproductor. Los usuarios pueden convertir logotipos en SVG con rsvg-convert o extraer fotogramas de GIF con ffmpeg para crear contenido a medida. Existe además una aplicación complementaria, zenvision-studio, pensada para applets en vivo y visualizadores audio-reactivos.
La regla udev incluida utiliza el prefijo 70 para ordenarse antes que 73-seat-late.rules, de modo que se aplique la etiqueta uaccess y el usuario con sesión iniciada acceda al dispositivo sin pertenecer al grupo plugdev, siguiendo el mecanismo estándar de systemd. El firmware de la pantalla sobrevive a desconexiones y el envío de informes incorrectos por la interfaz HID puede provocar un reinicio del microcontrolador, aunque el driver solo utiliza la interfaz del fabricante, por lo que las operaciones son seguras y reversibles con un reinicio del sistema.
El proyecto es independiente y no está afiliado ni respaldado por ASUS, y no incluye firmware, binarios ni código descompilado del fabricante. Su autor invita a quien disponga de otro modelo ASUS con OLED de tapa a abrir una incidencia con la salida de lsusb y el número de modelo, ya que la documentación del protocolo está pensada para facilitar el porte a otros dispositivos.
