Christian Schaller s’est servi de Claude Code et du comportement d’un pilote Windows pour étudier la prise en charge Linux d’un scanner Plustek. Le projet hw-harness, publié ensuite, reprend l’idée d’une comparaison entre Windows et Linux, mais ce n’est pas l’outil exact utilisé pour les travaux sur le scanner et la caméra. The New Stack a rapporté ces travaux le 17 octobre 2026.
Claude Code est un agent de programmation, pas un pilote matériel. Son installation sous Linux est prise en charge par Anthropic ; avec l’installateur natif, son exécutable se trouve dans ~/.local/bin/claude (documentation d’installation ; FAQ officielle sur le chemin de l’exécutable). Installer l’agent ne suffit donc pas à faire reconnaître un périphérique : il faut aussi un pilote compatible.
Le pilote Windows comme référence pour le scanner
Le scanner concerné est le Plustek OpticFilm 8200i. Selon The New Stack, les exemplaires plus récents utilisent une puce Genesys GL128, alors que la prise en charge existante dans SANE concernait la puce plus ancienne Genesys GL845. Christian Schaller a utilisé le comportement du pilote Windows pour guider le travail sur la version Linux.
Son implémentation prenait en charge la numérisation couleur et niveaux de gris, de 300 à 7 200 dpi, ainsi que la suppression des poussières par infrarouge et des réglages d’exposition pour les négatifs denses. Un autre développeur a apporté la prise en charge du modèle plus récent à SANE en septembre 2026, selon le même compte rendu.
Comment fonctionne hw-harness
Le projet publié compare les échanges d’un périphérique lorsqu’il fonctionne avec un pilote Windows et lorsqu’il est utilisé sous Linux. Dans le flux décrit par The New Stack, le pilote Windows s’exécute dans une machine virtuelle KVM — une machine virtuelle fondée sur le noyau Linux — à laquelle le périphérique physique est transmis. Claude pilote la session Windows, tandis que usbmon capture les échanges USB sur l’hôte Linux. Le périphérique est ensuite repassé à Linux pour une seconde exécution, dont les traces sont comparées à celles de Windows.
Le projet comprend notamment winctl pour piloter la machine virtuelle, usbcap pour capturer le trafic et hostdev pour basculer le périphérique entre l’hôte et la machine virtuelle. hw-harness est publié sous licence MIT. Le compte rendu du 17 octobre 2026 précise que le projet n’avait pas été testé sur un large éventail de matériels et que des questions de licence subsistaient.
Cette distinction compte : hw-harness est une version généralisée publiée après les travaux sur le scanner et la caméra. The New Stack précise qu’elle ne correspond pas exactement aux outils employés pour ces deux projets.
Ce que montre le test du scanner
Dans une comparaison rapportée par Christian Schaller, un scan pleine résolution a pris 34,6 secondes avec son implémentation, contre 54,4 secondes avec la version amont de SANE. Les deux versions ont résolu le même niveau de détail à 3 600 dpi. Il s’agissait d’un seul scan : ces temps décrivent cette comparaison, pas les performances habituelles du scanner.
Une enquête distincte sur la caméra d’un ThinkPad
Christian Schaller a aussi étudié la caméra du Lenovo ThinkPad X1 Carbon Gen 14 Aura Edition, associée à un capteur Sony IMX471 et au système d’imagerie Intel IPU7. Selon The New Stack, son investigation s’est appuyée sur des fichiers de configuration Windows, des entrées de registre, des tables ACPI, les propriétés du périphérique et une webcam USB de référence.
Le compte rendu attribue à Schaller une hausse de la valeur de luminosité d’une image en faible lumière, de 31,1 à 90,9 après ses modifications. Le canal bleu restait environ 17 % sous la référence de la webcam USB. Au 17 octobre 2026, les modifications destinées au noyau Linux et à libcamera n’étaient pas fusionnées.
L’expertise et les essais sur le matériel restent déterminants
Dans un récit distinct, publié le 7 septembre 2025, Dmitry Brant décrit la modernisation du pilote Linux historique ftape avec Claude Code. Il rapporte plusieurs itérations et corrections manuelles, s’appuie sur son expérience du C et des modules du noyau, puis teste le module avec de vrais lecteurs de bande (récit de Dmitry Brant). Son expérience concerne un autre projet ; elle ne valide pas les mesures du scanner de Christian Schaller.