Un agente AI che scrive e legge pin fisici su un circuito embedded reale. Non è una simulazione e non è un banco di prova virtuale: è una Raspberry Pi Pico 2 standard che diventa uno strumento di debug controllabile da Claude Code o da qualsiasi client MCP, via USB. Il progetto è di MRBElectronics e si chiama agent_fingers.
La scheda offre un banco di I/O digitale bidirezionale a 8 canali, ADC a 3 canali, PWM, UART, I2C e SPI. Il firmware espone un protocollo binario personalizzato su USB full-speed. Un server MCP, chiamato rp2350-signal-mcp, rende ogni periferica uno strumento chiamabile dall’agente. In questo modo l’AI può pilotare il circuito, leggere sensori e verificare il comportamento del sistema.
Sicurezza a doppio livello sulle scritture
Il punto più delicato è la protezione. Le scritture su pin digitali e PWM richiedono un arm esplicito con un lease a tempo limitato, che scade automaticamente. Il firmware forza uno stato sicuro in caso di watchdog, disconnessione o errore di protocollo. Inoltre, il layer MCP nega tutte le operazioni di scrittura per impostazione predefinita. Serve una doppia autorizzazione esplicita tramite variabili d’ambiente.
Questo modello impedisce che l’agente AI, magari durante un ragionamento sbagliato, mandi in corto un pin o accenda un attuatore per errore. Il sistema costringe a un gesto esplicito di conferma, così il rischio di scritture accidentali resta sotto controllo. È una scelta progettuale che rende lo strumento utilizzabile anche in contesti di test non supervisionati.
Prestazioni e strumenti software
I numeri raccontano un dispositivo pensato per un uso serio. L’acquisizione digitale arriva fino a 200.000 Hz su 8 canali, con un anello di 1024 campioni. La scansione ADC raggiunge 200.000 Hz totali in round-robin su 3 canali, con un anello di 2048 campioni. La frequenza PWM arriva fino a 100.000 Hz, limite software. L’orologio SPI va da 10.000 a 1.000.000 Hz, sempre per scelta di sicurezza. L’I2C è fisso a 100 kHz in modalità standard.
Il frame di comunicazione ha un header di 20 byte, un payload fino a 16.384 byte e un CRC32C di 4 byte. Sulla USB full-speed a 12 Mbit/s, 512 byte sono bufferizzati sul dispositivo. Il firmware occupa circa 48 KB di flash e circa 18 KB di RAM. Ogni periferica è stata testata su hardware fisico, con round-trip completi a livello di bit su I2C, UART e SPI.
Oltre al server MCP, il progetto include una CLI, una libreria Python e una GUI desktop standalone per il controllo manuale. Chi vuole può quindi usare lo strumento anche senza agente AI. Il codice sorgente, il firmware e tutta la documentazione sono nel repository di MRBElectronics, dove si trova anche la procedura per compilare e caricare il firmware con OpenOCD.
- Firmware agent_fingers per Raspberry Pi Pico 2
- Server MCP rp2350-signal-mcp
- CLI rp2350-signal-cli
- GUI rp2350-signal-gui (PySide6)
- Libreria Python rp2350-signal
Per la programmazione serve una Raspberry Pi Debug Probe, che fornisce il debugger e l’interfaccia con OpenOCD. La toolchain arriva dalla Raspberry Pi Pico VSCode extension. Il progetto repository di MRBElectronics raccoglie tutto il necessario per replicare il banco di prova.
Questo strumento apre scenari interessanti per chi lavora con sistemi embedded. Un agente AI può eseguire test di regressione, verificare il comportamento di un driver o cercare un bug in un protocollo di comunicazione, agendo direttamente sui pin fisici. La combinazione di un modello di sicurezza robusto e di prestazioni elevate lo rende un complemento credibile per la cassetta degli attrezzi di chi sviluppa firmware.
