Host USB en RP2040
La gente de [Adafruit] está mostrando un buen truco: host USB en RP2040, usando el ahora famoso periférico PIO. [Adafruit] construye muchas placas RP2040 y, naturalmente, debe probarlas antes de enviarlas a los clientes. Han estado usando Teensies muy específicos para eso, y en algún momento, se convirtieron en unobtainium. Con base en el trabajo de [sekigon-gonnoc] y con la ayuda de [Thach], lograron que su biblioteca TinyUSB sea compatible con bitbanging de USB a través de PIO y transfirieron con éxito el firmware de su plantilla de prueba.
El repositorio base Pico-PIO-USB de [sekigon-gonnoc] muestra una situación bastante impresionante: admite modos de host USB de velocidad completa y de baja velocidad y de dispositivo USB de velocidad completa, y bastantes ejemplos para comenzar . El trabajo de [Adafruit] integra este código en su pila TinyUSB, centrándose específicamente en las características de MST (almacenamiento masivo), ya que esto es lo que necesita para programar un RP2040. Por supuesto, ¡también proporcionan un ejemplo de almacenamiento masivo para arrancar!
Las plantillas de prueba son muy importantes cuando se fabrican varias piezas de una placa, y con RP2040 que admite más y más interfaces gracias a PIO, suena como el chip perfecto para su próxima producción de PCB destinada a pruebas. Con el cerebro de la plantilla resuelto, querrá considerar la construcción de una parte mecánica no menos importante, y hemos cubierto bastantes formas de solucionarlo: aquí hay un script OpenSCAD que genera archivos de corte por láser a partir de placas KiCad, o una plantilla construida con chatarra FR4 revestida de cobre, y un tutorial bastante extenso sobre cómo hacer sus propias plantillas cortables con láser, para empezar.