Sonntag, 2. November 2025

AIOC - All In One Cable

Mein Mecklenburger Hotspot hat vor einiger Zeit seine Dienste arg reduziert. Bemerkt hatte ich das durch eine stark nachlassende Reichweite beim Sendebetrieb, die Empfindlichkeit beim Empfang war unverändert. Die Endstufe im SHARI-Hotspot bringt offensichtlich keine Leistung mehr. Probehalber hatte ich den Raspberry Pi, der auch den SHARI mit Energie versorgt am Labornetzteil angeschlossen und die Differenz der Energieaufnahme zwischen Empfangs- und Sendebetrieb gemessen - da war kaum ein Unterschied messbar. Von den erwarteten 1 Watt Sendeleistung kommen vermutlich nur wenige Milliwatt bei der Antenne an. Auf Nachfrage in der ShariSpot-Telegram-Gruppe meldete sich ein OM, der das gleiche Problem hat. Er teilte mir mit, dass es eine Serie gab, die ein zu langes Gewinde am Antennenstecker hat, so dass die aufgeschraubte Antenne keinen zuverlässigen Mittenkontakt herstellt. Das war bei meinem SHARI auch der Fall und deshalb habe ich das Gewinde gekürzt. Damit ist aber die Endstufe nicht repariert. Bei Gelegenheit muss ich den SA818 auslöten und ersetzen.

Zwischenzeitlich lief mir aber ein anderes Projekt über den Weg, ein Adapter, der ein Handfunkgerät mit einem Rechner per USB-C verbindet. Das AIOC verfügt über 3 Schlüsselfunktionen:

  1. USB-Soundkarte: Das AIOC erscheint als Standard-USB-Audio-Interface und bietet Mono-Mikrofoneingang und Mono-Lautsprecherausgang. Dadurch können die softwaredefinierten digitalen Schnittstellen Audio senden/empfangen.
  2. Virtueller TTY/COM-Port: Der AIOC erstellt einen virtuellen seriellen Port, der als COM-Port auf Windows oder als /dev/ttyACM-Gerät unter Linux und MacOS dargestellt wird. Die serielle Schnittstelle dient zwei Zwecken. Erstens ermöglicht es dem AIOC, als Programmierkabel für das Radio mit Software wie CHIRP zu fungieren. Zweitens liefert es eine traditionelle Methode zur Push-to-Talk (PTT)-Taste, bei der die Software die seriellen Steuerleitungen (normalerweise DTR oder RTS) aktiviert, um zu senden.
  3. HID-Endpunkt: Ab der Firmware-Version 1.2.0, erscheint das AIOC als Human Interface Device (HID), das eine universelle Eingabe / Ausgabe (GPIO) für PTT bereitstellt. Ab Version 1.3.0 kann das AIOC ein CM108 vollständig emulieren und ermöglicht so die Kompatibilität mit einer größeren Vielfalt von Software, einschließlich AllStarLink und SvxLink.

Damit war die Idee geboren, den SHARI erst einmal zu beurlauben und mittels AIOC eines meiner Handfunkgeräte (Quansheng UV-K5) mit dem Hotspot zu koppeln. Die oben verlinkte Artikelserie über das AIOC bezieht sich auf eine ältere Hard- und Software-Version. Bei mir kommt die Hardware-Version 1.2 zum Einsatz (Sleeve-Anschluss der 3.5mm Klinke ist geteilt: PTT / TxD) und die Software-Version 1.4.1 mit dem o.g. HID-Endpunkt.

Die Bestellung bei JLCPCB am 21.10. war dank der Anleitung von DL-Nordwest gut zu bewältigen und am 30.10. hielt ich die bestückten Platinen in der Hand.

Das Objekt der Begierde nach Aufspielen der Firmware

Zwischendurch kam ein Anruf vom Zoll in Deutschland über den Inhalt des Paketes, den ich offensichtlich zufriedenstellend beantworten konnte. Für 5 Platinen waren (nach Abzug eines Neukundenrabattes) umgerechnet 105,56 € fällig. Zwischenzeitlich hat ein befreundeter OM (der auch 2 Exemplare abnimmt) mit seinem 3D-Drucker passende Gehäuse und die notwendige Löthilfe für die Klinkenstecker gedruckt.

Löthilfe (oben), AIOC, Gehäuseteile (unten)

Beim Auspacken der bestellten Klinkenstecker stellte sich heraus, dass die 2,5 mm Variante von Lumberg (KLS 13) unpassende Lötanschlüsse hat (keine Lötfahnen). Glücklicherweise hatte der befreundete OM noch passende Stecker in der Bastelkiste, so dass ich gestern zumindest ein AIOC fertigstellen konnte.

Der erste Test mit CHIRP war (nach einem Downgrade von CHIRP, der nichts mit dem AIOC zu tun hat) erfolgreich. Danach kam der Raspi mit dem SHARI-Image zum Einsatz. Durch mehrere Versuche und Recherchen im Internet wurde dann klar, dass SvxLink bei den Soundkarten sehr wählerisch ist und nur den CM108-Chip von C-Media Electronics akzeptiert. Die Identifikation erfolgt über das Auslesen der USB-Id. Das AIOC emuliert zwar den CM108 vollständig, hat aber eine abweichende USB-Id. An dieser Stelle kommt dann der HID-Endpunkt ins Spiel. Mit Python-Skripten, die den AIOC-Release-Notes beigefügt sind, lassen sich diverse Register permanent verändern, so auch die USB-Id des Bausteins (ID 0d8c:000c, C-Media Electronics). Damit bleibt es fast bei den gleichen Einstellungen wie beim SHARI:

Rx:
AUDIO_DEV = alsa:plughw:0
HID_DEVICE = /dev/cm108gpio
HID_SQL_PIN = VOL_DN

/dev/cm108gpio wird durch eine udev-Regel erzeugt, die auch entsprechende Leseberechtigungen anlegt.

Tx:
AUDIO_DEV = alsa:plughw:0
PTT_TYPE = Hidraw
PTT_PORT = /dev/ttyACM0
PTT_PIN = DTRRTS
HID_DEVICE = /dev/hidraw0
HID_PTT_PIN = GPIO3

Mit diesen Einstellungen und dem UV-K5 als TRx konnte ich dann die ersten QSOs führen. Die Modulation hatte ich offensichtlich korrekt eingestellt, weil diesbezüglich die Rückmeldungen gut waren.

UV-K5 mit AIOC

Beim Provisorium auf dem Schreibtisch traten (trotz abgesetzter Antenne) EMV-Probleme auf, die durch Klappferrite, externe Antenne und verringerte Sendeleistung hoffentlich verschwinden.

 

Keine Kommentare:

Kommentar veröffentlichen