LoRa APRS iGate mit dxlAPRS auf einem OrangePi

Neben dem sehr beliebten RaspberryPi der RasperryPi Foundation gibt es auch Einplatinenrechner von anderen Herstellern. Ich selbst besitze deswegen einen „OrangePi PC Plus“ und einen „BananaPi Pro“. Da der „OrangePi PC Plus“ einen fest installieren EMMC Speicher hat, wäre dieser ideal für Dauerbetrieb geeignet, da SD-Karten leider sehr anfällig sind und regelmäßig getauscht werden müssen. In Anlehnung an das Multi-APRS iGate für den RaspberryPi hatte ich nun die Idee, ein weiteres mit dem OrangePi zu bauen. Ich habe dieses Board gewählt, da der GPIO Anschluss des OrangePi mit dem des RaspberryPi voll kompatibel ist. Beste Voraussetzungen also für den „schnellen Erfolg“ mit den bestehenden LoRa APRS Gatewayplatinen von OE1ROT oder OE1ACM für den RaspberryPi.

Wichtiges Update am 23.11.2021:

Inzwischen hat Chris OE5DXL mit dem Tool ra02 ein Programm entwickelt, welches direkt den LoRa Chip per GPIO ansteuert. Es ist weder SPI noch die Python Geschichte mehr notwendig und auf ARMV7 ohne weitere Libraries oder Abhängigkeiten lauffähig. Auch wird es Versionen für X32 bzw. X64 PCs geben. Die folgende Anleitung ist daher als veraltet anzusehen und bleibt nur aus historischen Gründen online – funktionieren tut sie ja theoretisch auch noch, aber es geht eben inzwischen viel einfacher. Mit dem Tools ra02 ist es unerheblich ob man es auf einem RaspebrryPI, OrangePi oder einem anderen ähnlichem Einplatinenrechner mit ARMV7 Struktur instaliert. Bitte schaut für weitere Infos hier vorbei: LoRa APRS iGate mit dxlAPRS und RA02 auf einem RaspberryPi

Leider funktionierte es auf dem OrangePi nicht so einfach die LoRa Gatewayplatine in Betrieb zu nehmen, aber Matze DM4TZE hatte den richtigen Riecher und steuerte die Lösung dazu bei.

Weiterführende Erklärungen zum LoRa APRS iGate findet man im originalen Artikel hier: http://www.dl1nux.de/lora-aprs-igate-mit-udpgate4/

Installationsanleitung am Beispiel des „OrangePi PC Plus“ mit ARMBIAN als Betriebssystem. Im folgenden Beispiel heißt der User auf dem OrangePi pi und das Home-Verzeichnis ist in /home/pi, genau wie beim RapsberryPi.

1. SPI am OrangePi aktivieren

Die SPI Schnittstelle muss in der Datei /boot/armbianEnv.txt aktiviert werden:

sudo nano /boot/armbianEnv.txt

Folgende Zeilen einfügen bzw. ergänzen:

overlays=spi-spidevparam_spidev_spi_bus=0

Anschließend den OrangePi mit sudo reboot rebooten, damit die Schnittstelle aktiv wird.

2. Pakete installieren

Folgende Pakete müssen in der angegebenen Reihenfolge mit apt und pip installiert werden:

sudo apt install python3 git python3-pip python3-dev
sudo pip3 install wheel setuptools
sudo pip3 install spidev OrangePi.GPIO

3. RPi-LORA-KISS-TNC installieren

cd ~
git clone https://github.com/tomelec/RPi-LoRa-KISS-TNC.git
cd RPi-LoRa-KISS-TNC
git clone https://github.com/mayeranalytics/pySX127x.git

4. Konfiguration anpassen

Auf dem OrangePi muss die Datei board_config.py an drei Stellen, anstatt einer bearbeitet werden.

nano pySX127x/SX127x/board_config.py

4a)
Ersetzen von:
import RPi.GPIO as GPIO
durch
import OPi.GPIO as GPIO

4b)
Ersetzen von:
DIO0 = 22 # RaspPi GPIO 22
durch
DIO0 = 5 # RaspPi GPIO 5

4c)
Und zusätzlich vor dem Eintrag
GPIO.setmode(GPIO.BCM)
den genauen OrangePi Boardtyp angeben, z.B. „PCPCPLUS“ für den „OrangePi PC oder PC Plus“
GPIO.setboard(GPIO.PCPCPLUS)
GPIO.setmode(GPIO.BCM)

Kompatible Boards und Bezeichnungen findet man beispielsweise in den Beispielen hier: https://github.com/Jeremie-C/OrangePi.GPIO

5. Ergebnis

Nach einem Rechnerneustart ist nun das LoRa APRS Gateway auch auf dem OrangePi lauffähig. Allerdings muss python mit root Rechten gestartet werden (sudo python3 …), da der Standarduser keinen Zugriff auf die GPIO hat. Wenn man das nicht möchte, sieht man in Abschnitt 6 wie man dies ändern kann.

Man kann nun mit den bestehenden Startskripten das LoRa APRS iGate auf dem OrangePi starten, siehe und hier. Der Aufruf erfolgt identisch mit dem python Skript python3 Start_lora-tnc.py. Natürlich muss dazu noch die entsprechende iGate Software installiert werden. Im Falle von udpgate4 von den dxlAPRS Tools findet man dazu weitere informationen auf den am Anfang des Absatzes verlinkten Seiten.

6. GPIO Zugriff für Standarduser freigeben

– in Arbeit —

Natürlich kann man auch auf dem OrangePi das LoRa APRS Gateway mit jeder Software betreiben, welche TCP-KISS unterstützt. Dazu zählen unter anderem APRX, Direwolf und natürlich auch die dxlAPRS Tools (udpgate4).


Support

Diese Anleitung wurde mit bestem Wissen und Gewissen erstellt. Aber auch hier kann sich natürlich der Fehlerteufel verstecken. Deshalb sind alle Angaben ohne Gewähr! Auch geht die Entwicklung der dxlAPRS Tools und der LoRa-KISS-TNC Entwickler immer weiter, was auch Veränderungen mit sich bringen kann. Wenn ihr einen Fehler findet oder Fragen habt, zögert nicht mich zu kontaktieren. Gerne auch als Kommentar auf der Webseite.

Kontaktmöglichkeiten:

  • per E-Mail attila [at] dl1nux . de
  • per IRC Chat im Hamnet (HamIRCNet) im Kanal #hamnet-oberfranken
  • per Packet-Radio im DL/EU Converse Kanal 501

Support:

  • dxl-Wiki: http://dxlwiki.dl1nux.de
  • Telegram-Gruppe: https://t.me/joinchat/CRNMIBpKRcfQEBTPKLS0zg

Letztes Update: 23.11.2021

Schreibe einen Kommentar

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

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.