Debuggen eines Pi Zero 2W BadUSB mit Claude Code: Behebung eines 'unmöglichen' Bugs

Vor etwa 10 Monaten baute ein Entwickler ein Pi Zero 2W BadUSB-Toolkit, aber eine Funktion – „vollständiger Reset zwischen Angriffen“ – funktionierte nie. Als WIP markiert, wurde das Projekt aufgegeben. Diese Woche baute der Entwickler das Projekt mit Claude Code als Pair-Programmierer von Grund auf neu auf. Das Ergebnis: Die „unmögliche“ Funktion funktioniert jetzt, und die Sitzung förderte mehrere subtile Fehler zutage.
Was Claude Code tat
- Ursache auf einen Blick erkannt: Der Listener prüfte nur die Existenz von
/dev/hidg0– diese war von Anfang an gegeben – daher wurden Payloads sofort nach dem Einschalten ausgeführt, unabhängig davon, ob ein Host angeschlossen war. Das korrekte Signal ist/sys/class/udc/<udc>/state == "configured". - Hardware-Limit empirisch bestätigt: Als die erste Korrektur nicht vollständig funktionierte, meldete sich Claude per SSH an, forderte den Entwickler auf, ein-/auszustecken, während er sysfs und das dwc2 debugfs
regdump-Register abfragte. Dabei stellte er fest, dass dasGOTGCTL-Register bei0x000d0000einfriert, unabhängig vom Kabelzustand – der Pi Zero 2W hat keine VBUS-Erkennung, die mit dem OTG-Block des SoC verbunden ist. Claude wechselte zu einem Workaround mit aktivem Unbind, Abkühlphase und Ratenbegrenzung. - Stillen Python-Fehler entdeckt:
open(udc_path, "w").write("")ruftwrite(2)nicht mit null Bytes auf – CPythonsTextIOWrapperunterlässt den Aufruf. Der Unbind war eine Stunde lang eine Nulloperation. Behoben durchos.write(fd, b"\n"), um einen Syscall zu erzwingen. - Verbotene Löschung bei Configfs behoben:
rm -rfschlug fehl, weil Configfs das Entfernen von kernelverwalteten Attributdateien verbietet. Die korrekte Reihenfolge istrmdirnur, von Blatt zu Wurzel. - Pytest-Suite mit 34 Tests geschrieben gegen eine simulierte HID-Engine, ermöglicht Parsertests auf jedem Host ohne Pi.
- KI-Gedächtnis aktualisiert: Der Entwickler nutzt Postgres als Langzeitspeicher für Claude – diese Fehlereinträge werden nun in ähnlichen Configfs/USB-Gadget-Projekten referenziert.
Die gesamte Arbeitssitzung dauerte etwa 4 Stunden, hauptsächlich Wartezeit bei physischem Ein-/Ausstecken. Der Pull Request enthielt sechs gut abgegrenzte Commits mit korrekten Co-Author-Tags und einem Testplan. Das Projekt (Pi-Zero-2W-Bad-USB) ist MIT-lizenziert und bietet eine Ducky-Script-ähnliche Payload-Sprache, Variablen, IF/WHILE, HOLD/RELEASE, INJECT MOD, RANDOM *, US/UK-Tastaturlayouts, optionalen RO-Massenspeicher-Gadget, systemd-Integration und idempotentes Installationsskript.
Für Entwickler, die Hardware-in-the-Loop-Workflows mit Claude Code einsetzen, ist dies eine überzeugende Fallstudie zur KI-gestützten Fehlersuche auf Sysfs- und Registerebene.
📖 Vollständige Quelle lesen: r/ClaudeAI
👀 Siehe auch

Entwickler erstellt Cloud-Zertifizierungs-Quiz-App mit Claude AI
Ein Entwickler hat Kwizeo erstellt, eine Cloud-Zertifizierungs-Quiz-App für AWS, GCP und Azure, die Claude AI nutzt, um Fragen zu generieren, Fortschrittslogik zu entwerfen und die Entwicklung zu beschleunigen.

Entwickler baut Paartherapie-App mit Claude und teilt Einblicke in Prompt Engineering
Ein Entwickler hat TherapAI erstellt, eine progressive Web-App für Paare, bei der jeder Partner einen privaten KI-Begleiter erhält, der von Claude Sonnet angetrieben wird. Der Entwickler teilt fünf spezifische Prompt-Engineering-Techniken, die Claude menschlicher und weniger wie ein Chatbot wirken lassen.

OpenClaw-Einrichtung auf einem 8 Jahre alten Raspberry Pi mit 0 € Ausgaben
Ein Entwickler hat OpenClaw erfolgreich auf einem alten Raspberry Pi 4 mit 8 GB RAM eingerichtet, der drei Wochen lang rund um die Uhr mit minimalen Kosten lief. Das Setup umfasst grundlegende Fähigkeiten wie ClawHub, Notion, GOG, lokales Whisper und Nano Banana, zusätzlich ein menschenähnliches Gedächtnissystem und fünf Agenten.

Verwendung der kostenlosen Version von Claude zur automatischen Aktualisierung von Notion-Forschungsdatenbanken
Ein Entwickler hat ein System mit Claudes kostenloser Version erstellt, um Recherchen automatisch zu strukturieren und in Notion-Datenbanken zu speichern. Der Workflow nimmt rohe Recherchenotizen und formatiert sie in strukturierte Datenbankeinträge mit konsistenten Feldern, Kategorien und Zusammenfassungen.