Nel post dell’8 ottobre 2026, Joshua Kennedy racconta di aver completato nello stesso anno il suo progetto di glitch di tensione per Xbox 360, ripreso dopo averlo accantonato. Aveva acquistato un Matrix CoolRunner Rev D nel 2017; il primo tentativo di usare un programmatore basato su porta LPT non era riuscito. Nel progetto completato, il Raspberry Pi Pico ha svolto due compiti di programmazione, mentre il CoolRunner è rimasto il chip incaricato del glitch. Kennedy racconta il progetto sul suo blog.
Che cosa fa il glitch al processore?
Il glitch consiste in una brevissima alterazione del segnale di reset della CPU, cioè del processore. Kennedy spiega che il segnale CPU_RESET viene commutato rapidamente: così, il processore può eseguire in modo errato un’istruzione. Nel caso descritto, il Matrix CoolRunner Rev D genera un impulso di circa 100 nanosecondi, secondo Kennedy.
Tom’s Hardware collega questo tipo di errore a una possibile esecuzione di codice arbitrario e all’elusione dei controlli crittografici della Xbox 360. È il risvolto di sicurezza della tecnica: alterare per un istante il funzionamento atteso del processore può aprire una strada diversa da quella prevista dal software della console. Tom’s Hardware spiega la conseguenza sul piano della sicurezza.
Che cosa faceva il Pico e quale componente generava il glitch?
Il Pico non ha sostituito il chip glitch. Kennedy dice di averlo usato prima per leggere la NAND, la memoria flash della console, e poi per programmare i file di timing del CoolRunner. Le due operazioni richiedevano strumenti diversi:
| Attività | Strumento o componente | Funzione |
| Dump della NAND | Raspberry Pi Pico con PicoFlasher | Legge la memoria NAND della console; Kennedy riferisce che il dump richiese pochi secondi. |
| Programmazione dei file di timing | Raspberry Pi Pico con Pico-dirtyJTAG e urjtag | Programma sul CoolRunner gli Octal450 Timing Files. |
| Generazione del glitch | Matrix CoolRunner Rev D | È il chip glitch che invia il breve impulso. |
Per la seconda operazione, Kennedy dice di aver installato urjtag partendo dal codice sorgente. Il Pico, quindi, ha fatto da strumento per il dump e per la programmazione; il Matrix CoolRunner Rev D è rimasto il componente che produceva il glitch.
Perché conta il timing?
Il glitch deve arrivare in una finestra temporale adatta. Kennedy attribuisce la precisione del Pico ai blocchi PIO e indica un clock di 133 MHz, da cui deriva una risoluzione temporale effettiva di circa 7,5 nanosecondi. Sono valori riportati nel suo resoconto; non descrivono una misurazione indipendente del progetto.
La finestra utile varia tra le revisioni hardware della Xbox 360, secondo Tom’s Hardware. Perciò il dato sul timing aiuta a capire il ruolo del Pico nella programmazione, ma non equivale a una regola universale per ogni console.