AIOC – Der Wunderadapter für Handfunkgeräte – Teil 2 (Aufspielen der Firmware)

Im zweiten Teil über das AIOC erklären wir euch, wie ihr die Firmware unter Linux und Windows aufspielen könnt.

Im ersten Teil des Beitrages über das AIOC (All-In-One-Cable) von Simon Küppers, haben wir beschrieben, was das AIOC kann und wie ihr euch selbst ein oder mehrere AIOCs fertigen lassen könnt. Wer dieses noch einmal nachlesen möchte findet den Beitrag hier:

Nach nur kurzer Zeit lag das Paket mit den bestellten und vor-bestückten AIOC-Platinen dann auch schon vor unserer Haustür. Die stabile Außenbox schien zunächst etwas über-dimensioniert, war in Anbetracht der inneren Verpackung der Platinen aber auch notwendig.

Die vor-bestückten Platinen wurden in einer blauen Box geliefert
Die Platinen selbst sind sehr gut verpackt

Die Platinen wurden mit den für die automatisierte Bestückung benötigten Randleisten ausgeliefert. Diese sind aber angeritzt, so dass sich die eigentliche AIOC-Platine sehr einfach und ohne Werkzeug heraustrennen lässt.

Die Platine wurde hier noch nicht vom Panel herausgetrennt
Die Oberseite der herausgetrennten Platine: Die Klinkenstecker müssen selbst bestückt werden.

Wenn die Platine zu euch kommt, hat sie noch keine Firmware oder mit anderen Worten: Das AIOC weiß zu diesem Zeitpunkt noch nicht, dass es eins ist. Wir zeigen euch im Folgenden jeweils unter Linux Debian`10 und Windows 10, wie ihr die Firmware aufspielen könnt.

Wer die Firmware nicht selbst kompilieren möchte, findet auf der Seite https://github.com/skuep/AIOC/releases/ die vor-kompilierten Binaries. Zum Zeitpunkt des Schreibens dieses Artikels liegt eine stabile Firmware in der Version 1.2.0 vor, die wir im folgenden verwenden. Die experimentelle Version 1.3.0-rc.1 bietet einige Neuerungen, die wir uns aber erst in einem späteren Artikel noch genauer ansehen werden.

Screenshot von github.com

Download der vorkompilierten AIOC Firmware

Vorbereitungen

Unabhängig davon, ob ihr die Firmware unter Linux oder Windows aufspielen wollt, müsst ihr durch das Stecken einer Brücke (s. Foto) erwirken, dass der auf der Platine vorhandene Mikroprozessor im Bootloader-Modus startet. Erst jetzt verbinden wir das AIOC mit einem USB Typ-C Kabel mit einem PC. Bitte achtet darauf, dass es sich bei dem USB-Kabel um ein Datenkabel und nicht nur um ein Ladekabel handelt! Wundert euch bitte nicht, wenn nach dem Einstecken keine LED aufleuchtet, das hat zu diesem Zeitpunkt seine Richtigkeit.

Je nachdem ob ihr unter Linux oder Windows fortfahren wollt, könnt ihr jetzt eines der beiden nächsten Kapitel überspringen.

Aufspielen der Firmware unter Linux (Debian10)

Zunächst vergewissern wir uns mit dem folgenden Befehl, dass sich der Mikroprozessor im Bootloader-Modus befindet und erkannt wurde.

dmesg

Jetzt solltet ihr eine Ausgabe wie in dem folgenden Bild erhalten.

Nun installieren wir die benötigten Software-Komponenten.

sudo apt update
sudo apt install -y libusb-1.0-0 dfu-util

Im nächsten Schritt laden wir die Firmware herunter und flashen (schreiben) sie auf das AIOC.

wget https://github.com/skuep/AIOC/releases/download/v1.2.0/aioc-fw-1.2.0.bin
dfu-util -d 1209:7388 -a 0 -s 0x08000000:leave -D aioc-fw-1.2.0.bin

Jetzt könnt ihr das USB-Kabel trennen, die Steckbrücke abziehen und das USB-Kabel wieder anstecken. Nun sollte die grüne LED auf dem AIOC dauerhaft leuchten und die rote LED zweimal kurz aufblinken. Das AIOC meldet sich nun als “Product: All-In-One-Cable” und stellt sowohl eine Soundkarte als auch einen seriellen COM-Port bereit.

dmesg

Aufspielen der Firmware unter Windows 10

Zunächst öffnet ihr den Windows Gerätemanager. Hier wird der STM32 BOOTLOADER als nicht erkanntes Gerät angezeigt. Bevor ihr die Firmware aufspielen könnt, müsst ihr also zunächst den Treiber korrigieren.

Dieses erledigt ihr mit dem Tool Zadig. Wer schon einmal einen DVB-T USB-Stick als SDR-Receiver unter Windows nutzen wollte, wird dieses Tool sicher schon kennen und ggf. sogar schon auf dem heimischen PC haben. Falls nicht, kann es von hier heruntergeladen werden: https://github.com/pbatard/libwdi/releases/download/v1.5.1/zadig-2.9.exe. Beim schreiben dieses Artikels liegt das Tool in der Version 2.9 vor.

Nach dem Herunterladen führt ihr das Tool aus. Als device wählt ihr hier STM32 BOOTLOADER und als Zieltreiber libusb-win32. Nun betätigt ihr die Schaltfläche “Install Driver”und wartet, bis der Treiber installiert wurde.

Zur Sicherheit prüft ihr im Windows Gerätemanager noch einmal, ob das Gerät STM32 BOOTLOADER jetzt richtig erkannt wurde.

Ist dieses der Fall, ladet ihr euch als nächstes das Tool herunter, mit welchem ihr die Firmwaredatei aufspielen könnt. Dazu eignet sich dfu-util, welches ihr euch als vor-kompilierte Version für Windows 64 Bit von hier herunterladen könnt: https://dfu-util.sourceforge.net/releases/dfu-util-0.9-win64.zip

Entpackt den Inhalt der zip-Datei am besten direkt in das Stammverzeichnis eures C-Laufwerks, also z.B. nach “C:\dfu-util“.

Nun ladet ihr noch die vor-kompilierte Firmwaredatei herunter und legt sie der Einfachheit-halber im gleichen Verzeichnis wie das dfu-util ab.

Als nächstes öffnet ihr die Windows PowerShell oder auch einfach nur die Windows Eingabeaufforderung. Hier wechselt ihr zunächst in das von euch gewählte Verzeichnis (in meinem Fall C:\dfu-util) und führt den folgenden Befehl aus:

cd C:\dfu-util\
./dfu-util.exe -d 1209:7388 -a 0 -s 0x08000000:leave -D aioc-fw-1.2.0.bin

Erscheint die Meldung “File download successfully”, dann war die übertragung erfolgreich und ihr könnt das USB-Kabel trennen, die Steckbrücke abziehen und das USB-Kabel wieder anstecken. Nun sollte die grüne LED auf dem AIOC dauerhaft leuchten und die rote LED zweimal kurz aufblinken. Ein letzter Blick in den Windows Gerätemanager zeigt unter Audio, Video und Gamecontroller das AIOC sowohl als Eingabegerät (Mikrofon) als auch als Ausgabegerät (Lautsprecher). Ebenso erhaltet ihr unter Anschlüsse (COM & LPT) ein neues Kommunikationsgerät. Um herauszufinden, welche Com-Port Nummer dem AIOC zugeordnet wurde, zieht den USB-Stecker einfach noch einmal ab, steckt ihn dann wieder ein und beobachtet, welches Gerät hinzukommt. In meinem Fall war es COM31.

Im nächsten Teil beschreiben wir dann, wie ihr die Klinkenstecker an das AIOC anlöten könnt um es zu komplementieren und packen es zudem noch in ein 3D-gedrucktes Gehäuse ein.

Habt ihr zu den hier beschriebenen Punkten weitere Fragen? Dann schreibt sie uns gerne in die Kommentare unter diesem Beitrag oder diskutiert sie mit uns in unserer Telegram- und oder WhatsApp-Gruppe.

Team DL-Nordwest, Stephan 9V1LH/(9M2/)DG1BGS


Möchtest du das DL-Nordwest Projekt unterstützen? Dann freuen wir uns über deinen Gastbeitrag, das Teilen unserer Inhalte oder eine (kleine) Spende 🤑 Vielen Dank für deine Unterstützung! 😘