APRS Bake mit Linux

Oftmals will man seine Station auch im APRS-Netzwerk mittels einer Bake bekannt machen. Nach einer längeren Suche für eine schnelle und einfache Lösung bin ich auf einen Beitrag von Marco Kubon (DL1MX) gestossen, den ich hier gern weiter verbreiten möchte.

Als Voraussetzung ist ein lauffähiges Linux mit Internetverbindung. Als erstes werden alle Pakete auf den neuesten Stand gebracht.

sudo apt update 
sudo apt upgrade 

Dann holt man sich die benötigten Pakete und legt ein entsprechendes Arbeitsverzeichnis an.

sudo apt install -y nano netcat 
mkdir ~/aprs
cd ~/aprs

Um sich auf einem der APRS-Server einzuloggen braucht man ein Passwort, dass vom Benutzernamen abhängt. Dieses Passwort kann komfortabel online auf diversen Seiten erstellt werden. Der Suchbegriff dafür ist „aprs-passcode“. Ich verwende dafür folgende Seite https://www.iz3mez.it/aprs-passcode/. Das ab hier beispielhaft verwendete Rufzeichen „CB0XXX“ ist durch das Eigene zu ersetzen.

Nun erstellen wir eine Datei mit den APRS Daten, die an den APRS Server gesendet werden sollen und unsere Position sowie den Status darstellen.

nano CB0XXX.txt

In diese Datei fügen wir (beispielsweise) folgendes hinzu.

user CB0XXX pass xxxxx
CB0XXX>APRS,TCPIP*:!0102.03N/00405.06Er1750 R20k 145.600MHz DB0XXX
CB0XXX>APRS,TCPIP*:>http://www.darc.de

In der ersten Zeile steht unser Rufzeichen und das Passwort. Die zweite Zeile enhält das APRS-Frame für die Position mit ergänzendem Text. Die dritte Zeile ist ein APRS-Frame für den Statustext. Der Aufbau der jeweiligen Frames muss für jede Station angepasst werden.

Eine englische Dokumentation ist unter http://www.aprs.org/doc/APRS101.PDF zu finden.

Was jetzt noch fehlt ist das regelmäßige Einloggen auf einem APRS Server und das Absetzen der Frames. Dazu erstellen wir ein bash-Script was durch den cron Daemon regelmäßig aufgerufen wird.

nano aprsbake.sh

Der Inhalt dieser Datei ist wie folgt.

#!/bin/sh
nc -v cbaprs.dyndns.org 27234 -q 1 < /home/user/aprs/CB0XXX.txt

Die o.g. Adresse gehört dem CBAPRS Server. Es kann aber auch ein beliebig anderer APRS Server genutzt werden. Anschliessend muss diese Datei nun noch ausführbar gemacht werden.

chmod +x aprsbake.sh

Zuletzt muss nur noch der cron Daemon programmiert werden.

crontab -e

Diese sich öffnende Datei enthält am Ende eine neue Zeile mit folgendem Inhalt, was einem 15 Minuten Intervall entspricht.

*/15 * * * * /home/user/aprs/aprsbake.sh

Viel Spaß! Verbesserungen und Anmerkungen sind gern erwünscht.

N/A

Dokumentation TNC2Q – Symek

Dokumentation TNC2C – Landold

Dokumentation TNC2H – Symek

Aufbau eines PacketRadio-Nodes

nach der „Neuerfindung“ eines alten Hobbys will ich nun systematisch an die Beschreibung meiner Station gehen. Zum Ersten benötigt man heut zu Tage einen Internet-Anschluss, aber weiterhin nicht zu verachten ist der Anschluss via Funk (CB-FUNK).

Als Anlauf-Quelle neben vielen anderen Webseiten will ich hier forum.packetradio-salzwedel.de nennen. Fragen sind dort immer willkommen.

Da ich in einer Mietwohnung keine Kabel durch Fenster/Türen legen kann ist der Node zweigeteilt aufgebaut. Die Funkstation auf dem Balkon im wasserdichten Gehäuse und der Node dann im Wohnraum selbst.

Teil 1 – Die Außenstation

Aufgebaut mit Funkgerät, in meinem Fall eine AE4200 von Albrecht mit einem angeschlossenem TNC21S – Symec. Dort wurde ein Eprom mit TF2.7 verbaut und mit einem USB-Seriell-Adapter an einen RasperryPI angeschlossen.

Der RaspberryPi wird mit der Lite-Version nach einschlägigen Beschreibungen installiert und in ein vorhandenes WLAN eingebunden. Dort sollte er eine feste IP zugeordnet bekommen.

user@tncpi:~>sudo apt install ser2net -y

Nach der Installation von ser2net muss noch die entsprechende Konfiguration angepasst werden und sollte wie unten aussehen.

%YAML 1.1
connection: &con_tnc2
       accepter: tcp,8001
       enable: on
       options:
           kickolduser: true
       connector:     serialdev,/dev/ttyUSB0,19200n81,local

Dabei dabei ist mit obiger Konfiguration das Eingangsdevice der USB-Port (/dev/ttyUSB0) und benutzt die Baudrate 19200. Das Ausgangsdevice ist der TCP-Port 8001 der auf Verbindungen wartet.

Teil 2 – Der Node

Nun muss am Noderechner die Umsetzung Netzwerk zu Serial-Device wieder vorgenommen werde. Die wird mit socat erreicht und muss als erstes installiert werden.

user@nodepi:~>sudo apt install socat
socat -d -d pty,link=/dev/ptyCH24,raw,echo=0,waitslave \ 
tcp:192.168.10.6:8001,forever,interval=10 &
#-----------------------------------------------------------------------------
device /dev/ptyCH24
tnn_lockfile /var/lock/LCK..ptyCH24
# 6PACK
kisstype 1
port 2 
#-----------------------------------------------------------------------------

weiter demnächst…….

Teil 3 – Die Software

Teil 4 – Ideen das ganze zu verfeinern

Es ist die Idee den RaspberryPi am TNC durch einen ESP8266/ESP32 zu ersetzen. Dazu gibt es im Github einige Beispiele wie damit eine Serial2WiFi- / Serial2Net-Umsetzung gemacht werden kann.

Dokumentation von openBCM-Mailbox V1.07

Altes Hobby Packet Radio… neu gestartet.

Nachdem ich Jahre das alte Hobby „Packet Radio“ in der sprichwörtlichen „Ecke“ habe liegen lassen, will ich nun einen neuen Versuch starten das Ganze mit neuem Leben wieder zu erwecken.

Mittlerweile ist man nicht mehr an alte PCs unter DOS gebunden und ein alter RaspberryPi ist sicherlich noch in der Schublade um zum neuen Leben erweckt zu werden.

Bei der genaueren Recherche bin ich auf die folgenden Punkte zur Beachtung gestoßen:

  • das Filesystem soll auf einer SSD (mSata etc.) laufen. Die SD-Card hat nur eine eingeschränkte Lebensdauer.
  • das ganze System muss eventuell für neue Anpassungen neu kompiliert werden. Teilweise haben sich die Voraussetzungen stark verändert.

Der Kreis der dazu möglichen Rechner wird durch diese Parameter eingeschränkt.

Meine ersten Versuche habe ich auf einem RasPi3 mit Adapter für eine mSATA gemacht. da ich aber weitere Dinge versuchen möchte bin ich dann doch auf einen Lenove ThinkCentre M625q umgestiegen.

Mein Wunsch war es einen INET-Node mit Mailbox zu betreiben. Spätere Erweiterungen sollten dann dazukommen, wie zum Beispiel APRS-Igate und HF-Anbindung.

Bei der Suche im Internet nach geeigneter Software zuerst bei einem RasPi-Image auf dem forum.packetradio-salzwedel.de von Manuel (MD2SAW via CB0SAW) hängen geblieben. Dort habe ich mir diverse Anregungen geholt.

Linux-Update… die folgenden Pakete sind zurückgehalten worden

gefunden bei https://wiki.byte-welt.net/wiki/Linux_Update_-_Die_folgenden_Pakete_sind_zurückgehalten_worden

Neulich wollte ich das Raspbian auf auf meinem Raspberry Pi einem Update unterziehen. Eigentlich keine große Sache. Terminal geöffnet, SSH-Verbindung hergestellt und die Befehle für das Update der Softwarepaketlisten und das Update installierter Pakte auf eine neuere Version abgesetzt:

sudo apt update && sudo apt upgrade

Nach der Passworteingabe erschien dann auf dem Bildschirm diese Meldung:

Die folgenden Pakete sind zurückgehalten worden:
  <Name der zurückgehaltenen Pakete>

Die Liste der Pakete gibt an welche Pakete zurückgehalten wurden, also nicht in das Update einbezogen.

Diese Meldung weist darauf hin, dass es neue Versionen von Paketen mit Abhängigkeiten gibt, oder dass sich Abhängigkeiten geändert haben, die ebenfalls mit installiert werden müssen. Da ich aber nur ein einfaches Update bestehender Pakete angefordert hatte, erhielt ich von Linux diese Information.

Um nun das komplette System auf den aktuellsten Stand zu bekommen, tippt man nun folgenden Befehl in die Kommandozeile:

sudo apt-get update && sudo apt-get dist-upgrade

Neue Hardware für meine Projekte

wie zum Beispiel HomeAssistant. Seit 01/2024 als 2. Gerät mittlerweile auch andere Projekte.

Ich wollte meine „alte“ Hardware etwas auf leistungsfähigeres Niveau heben. Bei den derzeitigen Preisen für leistungsfähigere Raspberry Pi’s bin ich schnell auf die Suche nach Alternativen gegangen. Daher schien mir eine wirkliche Alternative ein Mini-PC zu sein. Man findet diesen beim Lieferanten mit dem großen „A*****“ ebenso wie beim Versteigerungsportal mit „e***“.

Nach einigem Suchen bin ich bei „e***“ auf ein mir günstiges erscheinendes Angebot gestoßen. Deshalb habe ich mir dort einen Lenovo THINKCENTRE M625Q beschafft. Für unter 50€ mit 2x 1.5GHz CPU, 4GB RAM, 32GB M.2 SATA SSD, passiv gekühlt sicherlich eine gute Alternative für einen Raspberry Pi 4/5 zu aktuellen Preisen.

Da mir die verbaute 32GB M.2 SATA SSD etwas zu knapp erschien habe ich mir dazu als Upgrade gleich noch eine entsprechend größere Variante mit 128GB dazu bestellt.

Alles zusammen bin ich immer noch unter dem derzeitigen Preis für einen vergleichbaren RaspberryPi geblieben.

Installation

Alter RaspberrPi noch einmal verwertet

Beim Ausmisten meines Bastelschrankes bin ich ganz hinten auf meinen ersten RaspberryPi gestossen.

RaspberryPi B (hier Rev.2)

Nach einigem Suchen im Internet hat er sich als RaspberryPi B Rev.1 entpuppt. Da er noch (nur) 256 MB RAM besitzt, ist er wie sich herausgestellt hat sogar noch vor 2012. Zum entgültigen Entsorgen war er mir zu schade, daher suchte ich nach einer sinnvollen Anwendung.

In meinem Garten arbeiten so einige Sensoren, nur der Elektrozähler musste noch mittels MOD-BUS angebunden und abgefragt werden. Das war eine Aufgabe die dieser RaspberryPi übernehmen sollte.

Um die Einbaumaße klein zu halten störte mich die weit herausragende SD-Karte. daher habe ich mich für einen entprechenden Adapter (hier der Link dort hin) entschieden um mit microSD-Karten arbeiten zu können.

Um das Image möglichst klein zu halten habe ich mich für einen NetInstall-Version des Betriebssystems nach https://github.com/FooDeas/raspberrypi-ua-netinst entschlossen. Eine für meine Zwecke angepasste installer-conig.txt ersparte mir dabei spätere zusätzliche Nachinstallationen.