Mit Mikrocontroller: Wir bauen unseren eigenen USB-Stick

USB-Massenspeicher (Mass Storage Device, MSD) funktionieren an jedem halbwegs modernen Computer – einfach so. Sie sind damit eine einfache Möglichkeit, Daten mit selbst entwickelten Geräten auszutauschen, sei es, um Messwerte auszulesen oder Firmware-Updates einzuspielen. Auf den ersten Blick sieht das gar nicht kompliziert aus: den USB-Controller eines Mikrocontrollers richtig konfigurieren, ein paar SCSI-Pakete verarbeiten, ein Dateisystem simulieren.
Die praktische Umsetzung erweist sich aber als unerwartet schwierig, insbesondere, da die MSD-Klasse schlechter dokumentiert ist als etwa die Human Interface Devices (HID) . In diesem Artikel erklären wir die technische Basis der USB-Massenspeicher und legen das Fundament für ein eigenes Gerät. Spoiler: Es ist alles ein wenig komplizierter als bei HIDs.