4. Pi-Star einrichten
Geprüft mit Pi-Star 4.3.7 und MMDVMHost 20250925_PS4. Das DM-1701 hängt per USB am Pi und steht im
Hotspot-Modus (Menü → Optionen → Hotspot = MMDVM).
Stand dieser Seite: Beide Wege sind geprüft (07.10.2026). Abschnitt A wurde von einem absichtlich falschen Ausgangszustand aus (Simplex, TXDelay 100, RFLevel 100) nur über die Oberfläche eingerichtet; das Ergebnis lief sofort (Quittung, BER 0,1 %).
Die wichtigsten Werte
| Einstellung | Wert | Bemerkung |
|---|---|---|
| Modem | OpenGD77 DMR hotspot (USB) | Pi-Star setzt dann Port=/dev/ttyACM0, Duplex=0 |
| Betriebsart | Duplex Repeater (or Half-Duplex on Hotspots) | nötig für getrennte RX/TX-Frequenzen, siehe unten |
| RX-Frequenz | Eingabe des Hotspots = Sendefrequenz des Funkgeräts | Beispiel 430,500 MHz |
| TX-Frequenz | Ausgabe des Hotspots = Empfangsfrequenz des Funkgeräts | Beispiel 438,100 MHz |
| D-Star | an, Modul B (70 cm) | RPT1 = <CALL> B, RPT2 = <CALL> G |
TXDelay |
200 (ms) | Expert → MMDVMHost, Abschnitt [Modem] |
RFLevel |
25 | Expert → MMDVMHost; D-Star ist in der Firmware ohnehin auf Stufe 4 begrenzt |
Timeout |
240 (Pi-Star-Standard), unter 250 s halten | [General]; MMDVMHost beendet zu lange Durchgänge, die Firmware schaltet erst nach 250 s als Notbremse ab |
TXInvert / RXInvert |
egal | die Firmware ignoriert beide für D-Star |
| Reflektor | Standard-Reflektor eintragen, Verbinden auf „Manual“ | sonst verbindet ircDDBGateway nach jedem Speichern neu |
Frequenzen bitte nach dem örtlichen Bandplan wählen (Hotspot-/Simplex-Bereiche). Die Beispielwerte sind keine Empfehlung. Split-Betrieb (getrennte RX/TX-Frequenz) hat sich bewährt. Simplex auf einer Frequenz ist möglich, aber nicht ausführlich getestet.
A. Einrichtung über die Weboberfläche
- Configuration → General / Modem: Radio/Modem Type =
OpenGD77 DMR hotspot (USB). - Betriebsart „Duplex Repeater (or Half-Duplex on Hotspots)“ wählen und einmal speichern.
Erst danach zeigt die Seite zwei Frequenzfelder (RX und TX). Dann getrennte RX- und TX-Frequenz
eintragen. Mit „Simplex Node“ setzt Pi-Star beim Speichern RX = TX, und der Split ist weg. Der
Modem-Typ OpenGD77 setzt danach trotzdem
Duplex=0, das ist richtig so. - D-Star-Modus einschalten, RPT1 Modul B, Rufzeichen eintragen.
- Reflektor: einen Standard-Reflektor eintragen und auf „Manual“ stellen.
- Speichern.
- Expert → MMDVMHost: im Abschnitt
[Modem]TXDelay=200undRFLevel=25setzen, speichern. Diese Werte gibt es auf der normalen Konfigurationsseite nicht.
B. Einrichtung bzw. Kontrolle per SSH
Die Datei pistar/mmdvmhost_dstar.template enthält die relevanten Abschnitte von /etc/mmdvmhost
mit Platzhaltern (<CALL>, <RX_HZ>, <TX_HZ>). Auf Pi-Star ist das Wurzeldateisystem schreibgeschützt:
sudo mount -o remount,rw /
sudo nano /etc/mmdvmhost # Werte wie in der Vorlage
sudo mount -o remount,ro /
sudo systemctl restart mmdvmhost.service
Prüfen
Im MMDVMHost-Log (/var/log/pi-star/MMDVM-<Datum>.log, Zeiten in UTC) nach einem Neustart:
D-Star: enabled
TX Delay: 200ms
RF Level: 25.0%
TX Frequency: 438100000Hz
MMDVM protocol version: 1, description: OpenGD77_HS v0.1.18 GitID #1c15155 (Radio:DM-1701, Mode:MMDVM)
Die RX-Frequenz steht bei MMDVMHost 20250925_PS4 nicht im Log. Prüfen mit
grep -E '^(RX|TX)Frequency=' /etc/mmdvmhost.
Kurzer Funktionstest: Am D-Star-Funkgerät auf dem Hotspot-Kanal kurz tasten. Im Dashboard erscheint der Header, und nach dem Loslassen kommt die Quittung (BER).
Was Pi-Star selbst überschreibt
- Speichern über die Oberfläche schreibt
/etc/mmdvmhostneu (und weitere Gateway-Dateien). Mit „Simplex Node“ gehen die getrennten Frequenzen verloren (siehe A.2).[Modem] Port=wird immer auf/dev/ttyACM0gesetzt. Nach jedem Speichern die Werte oben kontrollieren. - Nächtliches Update (
pistar-daily.cronüber/etc/cron.daily, Uhrzeit bei jedem Booten zufällig zwischen 03:00 und 04:59, siehe/etc/crontab): Es holt neue Programmversionen (auch MMDVMHost) und hängt fehlende Schlüssel an/etc/ircddbgatewayund/etc/dstarrepeateran. - Vor größeren Änderungen eine Kopie anlegen:
cp /etc/mmdvmhost ~/mmdvmhost.bak.
Dauerbetrieb und Störungen
- Neustart des Pi: MMDVMHost startet etwa 30 s nach dem Booten von selbst (
mmdvmhost.timer). - MMDVMHost abgestürzt: Der Pi-Star-Watchdog startet ihn neu. Er prüft alle ≈ 5 min, gemessen wurden 191 s.
- USB-Kabel gezogen oder Funkgerät ausgeschaltet: MMDVMHost merkt das nicht und verbindet
nicht neu (er hängt mit 100 % CPU und reagiert nicht auf SIGTERM). Das Funkgerät meldet sich beim
Wiederanstecken als
/dev/ttyACM1, während MMDVMHost nochttyACM0festhält. Abhilfe ohne Zusatz: Pi neu starten (sudo reboot). Mit Zusatz: siehe nächster Abschnitt. - Selten hängt nach mehrfachem schnellem Ab- und Anstecken der USB-Anschluss des Pi selbst (
dmesg:device not accepting address …, error -71). Dann hilft nur ein Neustart des Pi.
Optional: automatisch wieder verbinden (pistar/usb_reconnect/)
Eine udev-Regel gibt dem Funkgerät über seine USB-Seriennummer den festen Namen /dev/ttyOpenGD77 und
startet MMDVMHost beim Anstecken und Abziehen neu (beim Abziehen vorher hart beendet). Gemessen: Das
Modem meldet sich ≈ 2 s nach dem Anstecken wieder (ohne Zusatz: nie). Beim Booten tut das Skript
nichts, dort startet Pi-Star MMDVMHost selbst.
Seriennummer des Funkgeräts ermitteln:
udevadm info -q property -n /dev/ttyACM0 | grep ID_SERIAL_SHORTIn
99-opengd77-hotspot.rulesbeide<SERIAL>durch diese Nummer ersetzen.Installieren:
sudo mount -o remount,rw / sudo install -m 644 99-opengd77-hotspot.rules /etc/udev/rules.d/ sudo install -m 755 opengd77-hotplug /usr/local/sbin/ sudo mount -o remount,ro / sudo udevadm control --reload sudo udevadm trigger --action=change --subsystem-match=tty ls -l /dev/ttyOpenGD77Optional
[Modem] Port=/dev/ttyOpenGD77undUARTPort=/dev/ttyOpenGD77in/etc/mmdvmhost(per SSH, siehe B). Die Oberfläche setzt beides beim Speichern auf/dev/ttyACM0zurück. Das Wiederverbinden funktioniert trotzdem, solange kein anderes USB-Seriengerät am Pi hängt: Weil MMDVMHost beim Abziehen beendet wird, wirdttyACM0frei, und das Funkgerät bekommt den Namen wieder.
Entfernen: beide Dateien löschen, sudo udevadm control --reload.
- EMV: Das USB-Kabel zwischen Funkgerät und Pi nicht neben eine sendende Antenne legen, ggf. einen Klappferrit verwenden. Ein starkes Funkgerät direkt neben dem Aufbau kann den USB-Bus stören.