De hobby personal a pieza de museo con USB: la historia de USBSID-Pico
En febrero de 2024, un ingeniero de software holandés que se hace llamar LouD se topó en GitHub con un reproductor de SID basado en Raspberry Pi Pico. En menos de dos años, esa curiosidad se convirtió en USBSID-Pico, una placa open source certificada por la OSHWA que conecta chips MOS 6581 y 8580 originales del Commodore 64 a cualquier工作站, teléfono o reproductor moderno vía USB, MIDI o WebUSB. La versión v1.5 llegó en julio de 2026 con detección automática de voltaje y soporte para sockets ZIF duales, y la versión USBSID-Pro para estudios de grabación está en desarrollo con cuatro sockets previstos para fines de 2026 o principios de 2027.
Para una comunidad tech acostumbrada a hablar de APIs y cloud, el proyecto sirve como recordatorio de que sigue habiendo valor real en tocar silicio de los años 80 con hardware de 2024.
¿Qué es el chip SID y por qué importa todavía?
El MOS Technology 6581 (y su sucesor 8580) fue el chip de sonido del Commodore 64, diseñado por Bob Yannes en apenas cinco meses a finales de 1981 y presentado en el CES de enero de 1982. Yannes se inspiró en sintetizadores profesionales y dotó al chip de tres osciladores con envolventes ADSR, filtros analógicos multipolo y moduladores en anillo: capacidades muy por encima de sus contemporáneos, según Wikipedia. Suficiente para iniciar la demoscene y para que, cuatro décadas después, siga habiendo quien quiera escucharlo en hardware original en lugar de en emulación.
👥 ¿Quieres ir más allá de la noticia?
En nuestra comunidad discutimos las tendencias, compartimos oportunidades y nos ayudamos entre emprendedores. Sin humo, solo acción.
👥 Unirme a la comunidadEl SID dejó de fabricarse alrededor de 1992, lo que disparó una economía paralela de réplicas y reemplazos: FPGA, microcontroladores AVR, emulaciones DSP dentro de sintetizadores comerciales como el SidStation de Elektron (1997). USBSID-Pico se inserta en esa misma tradición, pero con un giro importante: en lugar de fabricar un clon del SID, construye un controlador que respeta el chip vintage.
El hardware en pocas palabras
La placa usa un Raspberry Pi Pico (rp2040 o rp2350) y admite hasta dos chips SID en sus versiones comerciales actuales, con planes para cuatro en la versión Pro. Las iteraciones publicadas son:
- v1.0 (octubre de 2024): soporte dual-SID con socket de voltaje fijo, USB nativo, WebUSB, MIDI y ASID. Certificación OSHWA NL000035.
- v1.3 (abril de 2025): permite mezclar un 6581 de 12 V en el socket 1 con un 8580 de 9 V en el socket 2, con switch físico mono/estéreo. Certificación OSHWA NL000045.
- v1.5 (julio de 2026): detección y configuración automática de voltaje sin jumpers, sockets ZIF opcionales, espacio ampliado para reemplazos FPGA grandes, diodos ESD en la entrada de audio.
Toda la documentación esquemática y los archivos Gerber se publican en el repositorio de GitHub y pueden pedirse preensamblados a través de PCBWay.
Cómo se hace el truco técnico: PIO, DMA y -O3
El desafío de fondo no es eléctrico sino de timing. El SID no usa un bus asíncrono: depende de una fase de reloj precisa para sus filtros de capacidades conmutadas, sus envolventes y su DAC. Cualquier jitter en la línea de reloj se traduce en desafinación audible, filtros con saltos o samples digitales rotos.
USBSID-Pico descarga todo el trabajo de timing a dos piezas del rp2040/rp2350 que rara vez se usan así:
- PIO (Programmable I/O): state machines dedicados generan el reloj maestro de 1 MHz (PAL) o 1,022727 MHz (NTSC) sin que ninguna interrupción del USB pueda mover la señal. El divisor fraccional del PIO permite también escalar la frecuencia para reemplazos hardware.
- DMA: los paquetes de escritura a registros (provenientes de WebUSB, ASID o USB-MIDI) se copian casi directamente desde el stack USB a buffers DMA, y dos state machines del PIO controlan lectura/escritura, líneas de Chip Select y el bus de 8 datos + 6 direcciones en paralelo, todo en un solo ciclo de reloj.
El detalle que suele pasar desapercibido: todo esto solo se sostiene compilando con -O3. Bajando el nivel de optimización, el compilador introduce el overhead suficiente alrededor del handoff DMA/PIO para reintroducir jitter, lo que se manifiesta como samples digitales rotos en el reproductor embebido. -O3 no es nice-to-have, es estructural.
El software: dos núcleos, muchas personalidades
El firmware reparte el trabajo entre los dos núcleos ARM del Pico de forma muy concreta:
- Core 0 maneja todo lo USB: CDC, WebUSB, MIDI, configuración persistente.
- Core 1 corre el motor MIDI, el emulador embebido cuando hace falta, los tests de detección de chip y el VU meter.
El dispositivo se presenta al host como un composite USB con tres interfaces TinyUSB (CDC para el protocolo SID propio, MIDI, y vendor para WebUSB), más canales CDC extra para telemetría y UART según el build. Lograr que ese enumerado funcionara limpio en Windows, macOS, Linux y Android fue, según el autor, su propia aventura de debugging.
La detección automática del modelo de SID (6581, 8580 o chip desconocido) tampoco es trivial: aplica varias sondas consecutivas por socket al arranque y en cada recambio, cruzando resultados porque una sola sonda puede fallar. Equivocarse aquí significaría aplicar el voltaje o los filtros incorrectos a un chip que no lo soporta.
El ecosistema que adoptó el proyecto
USBSID-Pico no llegó solo. La lista de software que ya lo soporta, según el blog del autor, es amplia:
- VICE 3.10+ (el emulador de C64) soporta hasta 4 SIDs por la placa.
- JSidplay2 v4.13+, Denise v2.7+ (Amiga), libsidplayfp v2.16+, Acid64 Pro v4.4.0+ y Phosphor lo integran como salida de audio.
- sidfactory2 release 20260308+ permite componer chiptune directamente sobre la placa vía MIDI o ASID.
- En navegador: deepsid (WebUSB/WebSerial), Hippoplayer y el propio USBSID Web config del autor funcionan sin instalar nada.
Además de integraciones oficiales, el proyecto generó drivers paralelos: un driver completo en Rust escrito por sandlbn, otro en Rust por WilfredC64 para Acid64 Pro, y un VST para Windows de Raros que acompaña al reproductor embebido Cynthcart.
¿Qué significa esto para tu startup?
Aunque USBSID-Pico vive en un nicho (preservación de audio retro), el caso es exportable a cualquier founder que construya sobre hardware open source:
- Elige el MCU por su bloque de I/O, no por su CPU. El rp2040/rp2350 resuelve el problema crítico de timing gracias al PIO y al DMA. Para proyectos donde el reloj o el determinismo importan (audio, motores, protocolos serie exóticos), esos periféricos valen más que un núcleo más rápido. Audita tu stack técnico preguntándote qué pieza mueve los bytes en el momento exacto que tienen que moverse.
- Haz que tu hardware se enchufe donde ya está tu usuario. USBSID-Pico no intentó reemplazar al C64 ni inventar un DAW nuevo: se integró a VICE, JSidplay2, Acid64 y navegadores vía WebUSB. La distribución ocurrió porque el proyecto apareció como destino en herramientas que la gente ya abría. Antes de construir plataforma propia, mapea qué herramientas usa tu audiencia y conviértete en el puente.
Lecciones operativas del proyecto
LouD documenta varias decisiones que cualquier maker puede replicar:
- Persistir configuración sin filesystem. El linker divide la flash del rp2040/rp2350 en región de firmware y región de almacenamiento persistente, de modo que un update de firmware nunca borra la configuración ni puede sobrescribir el código en ejecución.
- Certificar el hardware open source. Las certificaciones OSHWA NL000035 y NL000045 dan al proyecto un identificador verificable que blinda la trazabilidad legal del diseño y facilita la fabricación comunitaria.
- Documentar cada iteración, incluso las descartadas. El blog publica las versiones v0.1, v0.2, v1.1 y v1.4 que nunca llegaron a producción. Esa transparencia reduce preguntas repetidas y construye confianza en la hoja de ruta.
Fuentes
- Usbsid-Pico: Bridging Real Commodore 64 Sound to Modern USB (smallrun.net)
- MOS Technology 6581 - Wikipedia
👥 ¿Quieres ir más allá de la noticia?
En nuestra comunidad discutimos las tendencias, compartimos oportunidades y nos ayudamos entre emprendedores. Sin humo, solo acción.
👥 Unirme a la comunidad














