1k2 Packet Radio mit FT-991A unter Linux

Von | 2. Juni 2026

Als erstes müssen Wir einige Einstellungen am FT-991A vornehmen.

076FM PKT PTT SELECTRTSLegt die PTT-Steuerung für das FM-Signal fest.
077FM PKT PORT SELECTUSBWählt die Eingangsbuchse des FM Packet-Signals
aus
078FM PKT TX GAIN50Legt die Sendeverstärkung während des FM-
Packetbetriebs fest.
079FM PKT MODE9600Legt die Baudrate Kommunikationsgeschwindigkeit)
während des FM Packet-Betriebs fest.

Soll der Trasciver mit FLRIG oder ähnlichen gesteuert werden, muss die 076 FM PKT PTT SELECT wieder auf DAKY gestellt werden. Sonnst geht der FT-991A sofort auf Sendung, wenn die serielle Schnittstelle von FLRIG initialisiert wird!

Dann können wir prüfen, ob der 991A von Linux erkannt wurde. Wir suchen nach dem CP2105 und PCM2903. Ein LSUSB sollte folgenden Zeilen enthalten:

lsusb 
Bus 001 Device 008: ID 10c4:ea70 Silicon Labs CP2105 Dual UART Bridge
Bus 001 Device 009: ID 08bb:29b3 Texas Instruments PCM2903B Audio CODEC

Jetzt müssen wir noch ermitteln, welche tty für den 991A vergeben wurde. Hier sind die Zeilen mit cp210x interessant:

sudo dmesg | grep tty
...
[189636.375492] usb 1-1.1: cp210x converter now attached to ttyUSB0
[189636.390577] usb 1-1.1: cp210x converter now attached to ttyUSB1

Wir haben ttyUSB0 (/dev/ttyUSB0) und ttyUSB1 (/dev/ttyUSB1) erhalten. Wobei der erste Port der „Enhanced Port“ ist. Diesen benötigen wir in diesem Setup nicht.
Der zweite Port (/dev/ttyUSB1) ist der „Standard Port“ der auch für die PPT mittels RTS verwendet wird.

Nun müssen wir noch die Soundkarte, die der FT-991A zur Verfügung stellt, ermitteln. Wir suchen mit arecord -l nach der Karte mit dem USB Audio CODEC:

arecord -l
Karte 5: CODEC [USB Audio CODEC], Gerät 0: USB Audio [USB Audio]
  Sub-Geräte: 1/1
  Sub-Gerät #0: subdevice #0

Hier also die Karte 5 & Sub-Gerät 0

Mit diesen Daten können wir uns jetzt an die Konfiguration von Direwolf machen. Dazu übernehmen wir die zuvor ermittelten Daten in die Konfiguration:

nano direwolf.conf

###############################################################################
# Direwolf Konfiguration für 1200 Baud (VHF)
###############################################################################
## 1. AUDIO-HARDWARE
# Mit 'arecord -l' die Kartennummer prüfen (hier Karte 5, Gerät 0)
# plughw:Card,Device
# Lautstärke einstellen auf ca. 50%
# arecord -D hw:5,0 -vv --format=S16_LE /dev/null
ADEVICE plughw:5,0
# Wenn du nur einen Audio-Kanal nutzt (Stereo=1):
CHANNEL 0
## 2. IDENTITÄT
# Ersetze MYCALL durch dein Rufzeichen mit SSID (z.B. -5 für Handy/Tracker)
MYCALL DL1XXX
## 3. MODEM-EINSTELLUNGEN
# Standard für 1200 Baud (VHF)
MODEM 1200
SLOTTIME 10
PERSIST 63
TXDELAY 50
TXTAIL 10
FULLDUP OFF
## 4. PTT (Sende-Steuerung)
# WICHTIG: Hier festlegen, wie das Funkgerät auf Sendung geht.# Für USB-Interfaces (z.B. Signalink) oft 'NONE' (VOX-gesteuert) 
# oder Angabe des GPIO-Pins / COM-Ports:
PTT /dev/ttyUSB1 RTS
## 5. AGWPE & KISS INTERFACE
# Damit Programme wie Xastir oder Pinpoint APRS zugreifen können
AGWPORT 8000
KISSPORT 8001
# 6. Sendet alle 30 Minuten eine reine Text-Information ohne Standortdaten
CBEACON delay=1 every=30 dest=IDENT info="Hier ist DL1XXX - Packet Radio Station aus Magdeburg / JO52SD"

Jetzt können wir dirwolf mit dem Kommandozeilenparameter -p starten, um ein virtuelles KISS-Modem bereitzustellen.

$ direwolf -p
Dire Wolf version 1.7
Includes optional support for:  gpsd hamlib cm108-ptt
Reading config file direwolf.conf
Audio device for both receive and transmit: plughw:5,0  (channel 0)
Channel 0: 1200 baud, AFSK 1200 & 2200 Hz, A+, 44100 sample rate.
Ready to accept AGW client application 0 on port 8000 ...
Ready to accept KISS TCP client application 0 on port 8001 ...
Virtual KISS TNC is available on /dev/pts/9
Created symlink /tmp/kisstnc -> /dev/pts/9

Die Ausgabe sollte in etwa wie oben aussehen. Möchtest Du eine alternative Konfiguration benutzen, kannst Du diese mit -c übergeben.
PS: Das Fenster muss offen bleiben, sonnst wird direwolf beendet!
Alternative kann man den Prozess auch mit „&“ in den Hintergrund verschieben:

$ direwolf -p -c /home/Benutzer/direwolf.conf &

Wenn Du direwolf beenden möchtest benötigst Du die Pozess-ID, diese wird Dir beim Starten angezeigt.

kill 205177


Oder Du benutzt das überaus praktische PKILL:

pkill direwolf


Für die weitere Konfiguration benötigen wir den Port des „Virtual KISS TNC“. Dieser wurde Dir beim starten von direwolf angezeigt. Hier „/dev/pts/9“
Damit können wir jetzt fast schon unseren TNC verbinden. Vorher müssen wir aber noch einen PORT in der axports konfigurieren:

sudo nano /etc/ax25/axports 

# /etc/ax25/axports
#
# The format of this file is:
#
# name callsign speed paclen window description
#
991A    DL1XXX          9600    255     1       144.675 Mhz (1200 bps)

Ich habe hier den Port 991A genannt. Und nicht vergessen, dass eigene Rufzeichen einzutragen.

Jetzt aber. Wir verbinden den KISS TNC von Direwolf mit dem Port aus der axports:

sudo kissattach /dev/pts/9 991A 10.0.0.140

Die IP-Adresse ist übrigens optional und kann weggelassen werden.
Wenn alles geklappt hat erhalten wir folgende Meldung:

AX.25 port 991A bound to device ax0

Jetzt können wir eventuell bereits erste Daten empfangen. Einen Monitor kannst du mit

sudo axlisten

starten.

sudo axlisten
991A: fm DL1RMT-2 to ALL ctl UI^ pid=F0(Text) len 65 14:42:26.382960 
0000  TEST - TNC2S + RT95 / 5 Watt + x300 - DL1RMT-2 - Magdeburg - Tes
0040  t

Auch unsere Bake, die wir in direwolf gesetzt haben, wird hier zu lesen sein ;)

Als Packet Radio Terminal können wir Linpac nutzen. Es ist einfach und läuft im Terminal.
Gestartet wird es mit

linpac

IP-Route setzen (optional)

sudo ip route add 10.0.0.0/24 dev ax0

Es kann vorkommen, dass kissattach bereits eine Route gesetzt hat. wir können das prüfen und gegebenenfalls vorher löschen. z.B::

sudo ip route list
sudo ip route del 10.0.0.0/8

Webseiten aufrufen

lynx http://10.0.0.136

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert