Harnesses

Christian Schaller utiliza Claude Code para desarrollar controladores de Linux

20 de octubre de 2026 · 2 min de lectura

turned on monitor displaying function digital_best_reviews
Shahadat Rahman / Unsplash

Christian Schaller, director de ingeniería en Red Hat y colaborador de GNOME y Fedora, utilizó Claude Code para crear un controlador de Linux para un escáner Plustek OpticFilm 8200i. El dispositivo no funcionaba debido a que el fabricante cambió el chipset GL845, soportado por SANE, por un Genesys GL128, el cual no era reconocido por ningún controlador de Linux.

Tras intentos iniciales fallidos, Schaller implementó un método que permitió a Claude ejecutar el software de Windows del fabricante y capturar el tráfico USB. El agente de inteligencia artificial comparó esta implementación funcional con la versión defectuosa de Linux para identificar errores y realizar cambios. Este proceso implicó analizar protocolos de dispositivos no documentados a través de capturas de USB, valores de registro y transferencias de control.

Como resultado de este trabajo, Schaller lanzó un proyecto de código abierto bajo licencia MIT llamado hw-harness. Esta herramienta agrupa la instrumentación necesaria para capturar el comportamiento de un dispositivo y comparar una implementación operativa frente a una fallida, proporcionando la información requerida para que un agente de codificación trabaje en hardware que Linux aún no soporta.

El controlador desarrollado por Schaller permite el escaneo en color y escala de grises desde 300 hasta 7,200 ppp, además de soportar el ajuste de exposición para negativos densos y la eliminación de polvo por infrarrojos. En una prueba de un solo cuadro a 3,600 ppp, su controlador completó el escaneo en 34.6 segundos, mientras que la versión de SANE tardó 54.4 segundos.

Además, Schaller creó una aplicación llamada Negative Vibes, escrita en Rust con ayuda de Claude, que mantiene los datos de escaneo originales de 16 bits y permite exportar archivos en formatos TIFF, JPEG, PNG o DNG.

Schaller también aplicó una técnica similar para solucionar problemas de imagen en la cámara de una computadora Lenovo ThinkPad X1 Carbon Gen 14 Aura Edition, que utiliza un sensor Sony IMX471 y el sistema de imagen IPU7 de Intel. Al no haber tráfico USB, proporcionó a Claude archivos de configuración de Windows, entradas de registro, tablas ACPI y propiedades del dispositivo, comparándolos con una cámara web USB.

Este proceso permitió generar parches para el núcleo de Linux y libcamera. Las correcciones abordaron un error de selección de recorte, un registro de patrón de prueba definido incorrectamente y un límite de ganancia analógica que reducía la sensibilidad en aproximadamente 1.8 pasos. También se corrigió la corrección de sombreado de la lente, que dejaba las esquinas 2.7 pasos más oscuras que el centro, y se ajustó el balance de blancos. En pruebas de poca luz, el brillo del cuadro aumentó de 31.1 a 90.9.