Depurando un BadUSB de Pi Zero 2W con Claude Code: Solucionando un error 'imposible'

✍️ OpenClawRadar📅 Publicado: 26 de mayo de 2026🔗 Source
Depurando un BadUSB de Pi Zero 2W con Claude Code: Solucionando un error 'imposible'
Ad

Hace unos 10 meses, un desarrollador creó un kit BadUSB para Pi Zero 2W, pero una función — "reinicio completo entre ataques" — nunca funcionó. Marcada como WIP, fue abandonada. Esta semana, reconstruyeron el proyecto de principio a fin con Claude Code como programador en pareja. Resultado: la función "imposible" ahora funciona, y la sesión descubrió varios bugs sutiles.

Ad

Lo que hizo Claude Code

  • Diagnosticó la causa raíz de una lectura: El listener monitoreaba la existencia de /dev/hidg0 — verdadera desde el arranque — por lo que ejecutaba payloads al encenderse independientemente de la conexión al host. La señal correcta es /sys/class/udc/<udc>/state == "configured".
  • Confirmó empíricamente una limitación de hardware: Cuando la primera solución no funcionó del todo, Claude accedió por SSH, pidió al desarrollador conectar/desconectar mientras consultaba sysfs y el registro regdump de dwc2 debugfs. Encontró que el registro GOTGCTL se congela en 0x000d0000 independientemente del estado del cable — el Pi Zero 2W no tiene detección VBUS conectada al bloque OTG del SoC. Cambió a una solución de desvinculación activa con enfriamiento y protección de límite de velocidad.
  • Detectó un bug silencioso en Python: open(udc_path, "w").write("") no invoca write(2) con cero bytes — el TextIOWrapper de CPython omite la llamada. La desvinculación fue un no-op durante una hora de pruebas. Se corrigió a os.write(fd, b"\n") para forzar una syscall.
  • Corrigió la destrucción prohibida en configfs: rm -rf fallaba porque configfs prohíbe desvincular archivos de atributos gestionados por el kernel. La secuencia correcta es solo rmdir, de hoja a raíz.
  • Escribió una suite de pruebas pytest de 34 tests contra un motor HID simulado, permitiendo probar el analizador en cualquier host sin un Pi.
  • Actualizó la memoria de IA: El desarrollador usa Postgres como memoria a largo plazo para Claude — esas entradas de bugs ahora se referencian en proyectos similares de configfs/USB-gadget.

Toda la sesión de trabajo tomó unas 4 horas, principalmente esperando la conexión/desconexión física. El PR tuvo seis commits bien delimitados con etiquetas de coautor y un plan de pruebas. El proyecto (Pi-Zero-2W-Bad-USB) tiene licencia MIT, con lenguaje de payload estilo Ducky-Script, variables, IF/WHILE, HOLD/RELEASE, INJECT MOD, RANDOM *, mapas de teclado US/UK, gadget opcional de almacenamiento masivo RO, integración con systemd e instalador idempotente.

Para desarrolladores que trabajan con flujos de hardware en bucle con Claude Code, este es un caso de estudio convincente de depuración asistida por IA a nivel de sysfs y registros.

📖 Lee la fuente original: r/ClaudeAI

Ad

👀 Ver también

El flujo de trabajo de OpenClaw automatiza los seguimientos de reuniones y reemplaza a Granola para el usuario.
Casos de uso

El flujo de trabajo de OpenClaw automatiza los seguimientos de reuniones y reemplaza a Granola para el usuario.

Un usuario reemplazó su suscripción de $14/mes a Granola con un flujo de trabajo de OpenClaw que transcribe reuniones mediante STT, genera resúmenes en WhatsApp, desglosa elementos de acción y crea borradores de correos de seguimiento automáticamente.

OpenClawRadar
Usando el bot SkyClaw de OpenClaw para el seguimiento de gastos personales a través de Discord y Google Sheets.
Casos de uso

Usando el bot SkyClaw de OpenClaw para el seguimiento de gastos personales a través de Discord y Google Sheets.

Un usuario describe el uso de SkyClaw, un bot nativo de la nube impulsado por OpenClaw, para registrar gastos a través de mensajes de Discord e imágenes de recibos, que se añaden automáticamente a una hoja de cálculo de Google sin necesidad de acceder a cuentas personales sensibles.

OpenClawRadar
El Juego de Viaje en el Tiempo de Claude Evoluciona desde un Prompt a un Sistema Completo Desplegado
Casos de uso

El Juego de Viaje en el Tiempo de Claude Evoluciona desde un Prompt a un Sistema Completo Desplegado

Un usuario de Reddit describe cómo evolucionó un prompt de RPG de viajes en el tiempo en Claude hacia un sistema complejo durante 40 días, agregando archivos de estado YAML, más de 50 NPC, desencadenadores de eventos y finalmente desplegándolo en Fly con una base de datos y un servidor MCP personalizado para acceso multiplataforma.

OpenClawRadar
Desarrollador crea un servicio simplificado de alojamiento de agentes de IA para usuarios no técnicos.
Casos de uso

Desarrollador crea un servicio simplificado de alojamiento de agentes de IA para usuarios no técnicos.

Un desarrollador creó una herramienta que maneja automáticamente el alojamiento de agentes de IA con instancias de nube privada, permitiendo a usuarios no técnicos conectarse a través de Telegram usando sus propias claves API. La solución se construyó después de intentos fallidos de guiar a un usuario no técnico a través de configuraciones estándar basadas en Docker.

OpenClawRadar