Débogage d'un BadUSB Pi Zero 2W avec Claude Code : Correction d'un bogue « impossible »

✍️ OpenClawRadar📅 Publié: May 26, 2026🔗 Source
Débogage d'un BadUSB Pi Zero 2W avec Claude Code : Correction d'un bogue « impossible »
Ad

Il y a environ 10 mois, un développeur a construit un kit BadUSB pour Pi Zero 2W, mais une fonctionnalité — « réinitialisation complète entre les attaques » — n'a jamais fonctionné. Marquée comme en cours, elle a été abandonnée. Cette semaine, ils ont reconstruit le projet de bout en bout avec Claude Code comme binôme. Résultat : la fonctionnalité « impossible » fonctionne désormais, et la session a révélé plusieurs bugs subtils.

Ad

Ce que Claude Code a fait

  • Diagnostic de la cause racine en une lecture : L'observateur surveillait l'existence de /dev/hidg0 — vrai dès le démarrage — donc il déclenchait les charges utiles au démarrage, indépendamment de la connexion hôte. Le bon signal est /sys/class/udc/<udc>/state == "configured".
  • Confirmation empirique d'une limitation matérielle : Quand la première correction n'a pas entièrement fonctionné, Claude s'est connecté en SSH, a demandé au développeur de brancher/débrancher pendant qu'il sondait sysfs et le registre regdump de dwc2 debugfs. Il a constaté que le registre GOTGCTL se fige à 0x000d0000 quel que soit l'état du câble — le Pi Zero 2W n'a pas de détection VBUS câblée au bloc OTG du SoC. Il est passé à une solution de contournement de désactivation active avec période de refroidissement et protection de limitation de débit.
  • Détection d'un bug silencieux en Python : open(udc_path, "w").write("") n'invoque pas write(2) avec zéro octet — TextIOWrapper de CPython élude l'appel. La désactivation était un no-op pendant une heure de test. Corrigé en os.write(fd, b"\n") pour forcer un appel système.
  • Correction d'un démontage interdit sur configfs : rm -rf échouait car configfs interdit de dissocier les fichiers d'attributs gérés par le noyau. La séquence correcte est uniquement rmdir, de la feuille à la racine.
  • Écriture d'une suite de tests pytest de 34 tests contre un moteur HID simulé, permettant de tester le parseur sur n'importe quelle machine sans Pi.
  • Mise à jour de la mémoire IA : Le développeur utilise Postgres comme mémoire à long terme pour Claude — ces entrées de bugs sont désormais référencées dans des projets similaires configfs/USB-gadget.

Toute la session de travail a duré environ 4 heures, principalement à attendre les branchements/débranchements physiques. La PR comprenait six commits bien découpés avec des tags de co-auteur appropriés et un plan de test. Le projet (Pi-Zero-2W-Bad-USB) est sous licence MIT, avec un langage de payload de type Ducky-Script, des variables, IF/WHILE, HOLD/RELEASE, INJECT MOD, RANDOM *, des mappages de touches US/UK, un gadget optionnel RO mass-storage, une intégration systemd et un installateur idempotent.

Pour les développeurs travaillant avec des workflows matériels en boucle avec Claude Code, c'est une étude de cas convaincante de débogage assisté par IA au niveau sysfs et des registres.

📖 Lire la source complète : r/ClaudeAI

Ad

👀 See Also

Construction d'un système d'agent IA autonome avec Claude Code : une étude de cas
Use Cases

Construction d'un système d'agent IA autonome avec Claude Code : une étude de cas

Un développeur a créé Acrid, un agent IA autonome qui dirige une entreprise appelée Acrid Automation en utilisant Claude Code comme système d'exploitation. Le système comprend 14 compétences sous forme de commandes slash, 4 sous-agents pour la délégation, une mémoire basée sur des fichiers sans bases de données vectorielles, et un pipeline de contenu automatisé reliant Claude à n8n via GitHub.

OpenClawRadar
Construire un système d'information personnalisé contextuel avec Claude Code
Use Cases

Construire un système d'information personnalisé contextuel avec Claude Code

Un développeur a créé un système personnel de briefing d'actualités par IA qui fonctionne sur un Mac Mini trois fois par semaine, récupérant des données de 17 sources et utilisant Claude Code avec intégration de mémoire pour créer des briefings personnalisés. Le système coûte 6 à 12 dollars par mois et comprend des sections reliant les actualités aux projets actifs, aux références de code et aux intérêts familiaux.

OpenClawRadar
Mémoire de master rédigé principalement avec Claude : un étudiant en économie obtient la meilleure note
Use Cases

Mémoire de master rédigé principalement avec Claude : un étudiant en économie obtient la meilleure note

Un étudiant en économie a utilisé Claude pour la revue de littérature, l'analyse de données avec des scripts Python et Excel, et la présentation — a obtenu une note proche du niveau doctorat. L'annexe mentionnait l'utilisation de l'IA, aucune question posée.

OpenClawRadar
Épisode 9 de la Construction d'un Magasin Géré par l'IA : Coordination Multi-Agents pour les Agents de Code Claude
Use Cases

Épisode 9 de la Construction d'un Magasin Géré par l'IA : Coordination Multi-Agents pour les Agents de Code Claude

Le dernier épisode de la série sur l'orchestrateur explique comment six agents de code Claude coordonnent leurs efforts pour se passer le travail, éviter les conflits et maintenir l'état entre les sessions lors de la gestion d'une entreprise d'IA.

OpenClawRadar