TCE Tinycore Linux Projekt


Einleitung

500MHz LowPower Industrie PC

Hier entsteht ein Amateurfunk Software Projekt, welches unter Einsatz von TCE - Tinycore Linux auf Embedded System wie Industrie PC, ALIX u.d.g. Services wie

  • Packet Radio,
  • APRS,
  • Blitzortung,
  • kleine Webserver,
  • SVX-Link (Echolink)

u.v.m. im HAMNET anbindet.
Ziel ist ein minimaler Aufwand und minimale Stromaufnahme, bei maximalem Funktionsumfang.

Hardware

Polung Industrie PC

Die ersten Versuche laufen derzeit bei DH2IW Wolfgang, OE2WAO Mike und OE5DXL Chris, sowie Newcomern, wobei hier eine ausgemusterte Industrie PC Variante zum Einsatz kommt, welche mit 500MHz CPU Leistung (AMD Geode) und bis zu 256MB Ram eine bis auf <5Watt minimierte Leistungsaufnahme aufweist (vorhandene Restboards bei OE2WAO anfragen).
Das Betriebssystem findet dabei auf einer CF Speicherkarte (>32MB) Platz.

Als Soundkarte für AFSK Betriebsarten wird eine externe USB Variante verwendet. Darauf zu achten ist, dass bei mehreren geplanten Kanälen, die Soundkarte über Stereo Anschlüsse verfügt, beim Ein- sowie Ausgang. Geeignete Karten lassen sich derzeit meist daran erkennen, dass sie über 3 Anschlüsse verfügen (Mikrofon, Line-In, Lautsprecher).

Anschluss und Umbau der genannten Industrie PC Variante

Umbau Netzteil für 12V

Neben den ohnehin durch Ansicht bekannten Schnittstellen wie USB und Netzwerk, befindet sich unter anderem auch ein Versorgungsanschluß auf der Vorderseite der von uns verwendeten, oben erwähnten Industrie PC Boards.
Die Versorgung erfolgt erdfrei und wird an dem dreipoligen Stecker eingespeist. Dabei befindet sich, wie in der Abbildung ersichtlich, der Pluspol von der Anschlußseite gesehen ganz rechts (der Pin näher zu den USB Buchsen), der Minuspol ganz links. Der mittlere Pin wäre für die Erdung des Gehäuses vorgesehen.

Das Board wird, wie in der Instrie überwiegend üblich, mit 24V versorgt.
Damit wir es auch in unseren Anlagen mit den dort üblichen 12V ohne einen DC-DC Wandler verwenden können, muss das verbaute Netzteil zuvor geringfügig modifiziert werden. Dazu wird lediglich ein 270k Ohm Widerstand, wie im Bild ersichtlich, eingelötet, um die Einschaltung auch schon bei 12V zu erwirken.

Software

Das zum Einsatz kommende TCE - Tinycore Linux kann im Original von der Webseite geladen werden.
Die von uns bearbeitete, und an die Bedürfnisse der Funkamateure angepasste Version ist auf der Webseite von OE2WAO zu finden.
Eine Datei beginnend mit "tc38" steht dabei für die Grundversion v3.8.
Ein "x" nach der Version (bspw. tc38x) deutet auf eine grafische Oberfläche (X11) des Betriebssystems hin.
Das "e" nach dem "alsa" steht für den e100 netzwerktreiber, der für die von uns verwendeten Boards benötigt wird.
Ein "512" im Dateinamen bezieht sich auf die Ausgangsgröße des Images, also in diesem Fall 512MB.


Installation unter Linux

Zuerst lädt man sich die gewünschte Version herunter

 wget http://www.oe2wao.info/tce/tc41xalsae128.img.zip

Nun verbindet man eine entsprechend große CF Speicherkarte. Diese darf aber für den folgenden Vorgang nicht gemountet sein, also rechtsklicken und aushängen.

 cat tc41xalsae128.img.zip | gunzip > /dev/sdd

Der Ausdruck /dev/sdd muss natürlich entsprechend angepasst werden.
Wer eine größere CF verwendet und den gesamten Speicher benutzen will, muss entweder eine zweite Partition anlegen, oder mit einem geeigneten Tool die erste Partition vergrößern.
ACHTUNG!
Alle auf dem USB Medium befindlichen Dateien werden überschreiben bzw. gelöscht.

Installation unter Windows

Um die Installation eines Images auf ein USB Medium direkt unter Windows durchzuführen, hat OE8DLK ein Programm dafür geschrieben. Der S7 MMC Image Writer ist ebenfalls auf der Webseite von OE2WAO zu finden (S7ImgWR1.zip).
Der Vorgang ist ganz einfach. Das gewünschte Image herunterladen, entpacken, und lokal speichern. Jetzt das USB Medium anstecken und sich den Laufwerksbuchstaben merken. Dann den S7 MMC Image Writer starten, mit PICK FILE das Image anwählen, und mit START den Schreibvorgang beginnen.
ACHTUNG!
Alle auf dem USB Medium befindlichen Dateien werden überschreiben bzw. gelöscht.


Einstellungen

Eine kleine Dokumentation für die notwendigen Betriebseinstellungen befindet sich im Verzeichnis

 /home/tc/readme

Voreingestellt im Image sind folgende Werte:

 Fixe IP: 192.168.1.50/24 (zu ändern entweder über die X11 Oberfläche oder in /opt/eth0)

Zu startenden Programme und Optionen (ähnlich autoexec.bat in MS Betriebssystemen) befinden sich in nachfolgender Datei, und müssen zur korrekten Funktion editiert werden:

/opt/bootlocal.sh   (im Grundzustand sind sämtliche Programme mit '#' auskommentiert)

Zugang für SSH (unter MS Windows am Besten mit putty)

 User: tc
Pass: 12345678


WICHTIG !!
Einstellung im System finden immer im RAM statt. Um diese dauerhaft auf den Festplatten- bzw. CF-Speicher zu schreiben, muss dies eigens veranlasst werden. Entweder beim herunterfahren in der grafischen Oberfläche (X11) selbst mit der BACKUP Option, oder ferngesteuert (SSH) mittels dem Befehl

 (sudo su)*
 filetool.sh -b
  • *(ohne "sudo su" nur solange der Befehl nicht zuvor einmal als root ausgeführt wurde)

Komponenten

Im AFU Tinycore Image sind unter anderem amateurfunkspziefische Programme enthalten.

Udpboxs.jpg

udpbox

Die UDPBOX stellt das zentrale Bindeglied zwischen den einzelnen Programmen dar. Sie empfängt und verteilt entsprechend die UDP Pakete.
So ist es bspw. möglich die auf 2m empfangenen APRS Pakete zu filtern, auf 2m wieder auszugeben, und zusätzlich alle (oder gefilterte) APRS Meldungen auf dem Dualbaud 70cm Packet Radio Digipeater auszusenden.
Zudem beherrscht die UDPBOX die leicht unterschiedlichen Arten in den Protokollen AX25 und TNC2 MONITOR.

udphub

Der UDPHUB ist ein Hilfsprogramm für XNET, welches die IP Beschränkung umgeht, indem es sich selbst zwischen Benutzer und XNET stellt, und die AXUDP Pakete entsprechend verteilt. Dabei bleibt der Ursprungspfad (IP) des Benutzer eine Woche (einstellbar) gespeichert, und der Benutzer kann bei lokal gestartetem Programm auch ohne aktiven Connect in dieser Zeitspanne von anderen Benutzern kontaktiert werden, genauso als ob man per HF QRV wäre.

udpgate

Das UDPGATE ist ein APRS Server, welcher die Netzwerkebene des APRS Datentransports übernimmt. Also bspw. die Serverfunktionalität für Benutzer bereitstellen, sowie eine Verbindung zum APRS IS oder nächsten APRS Server (UDPGATE) herstellen.
Dabei agiert er bei der Verbindung nach der Prioriät der Einträge in der Serverliste. Ist der erste Server nicht erreichbar, wird der nächste Server in der Liste versucht zu erreichen. In regelmässigen Abständen wird jedoch erneut versucht, die in der Liste zuvorgelegenen Server nach dem Prioritätsprinzip zu erreichen, und verlustfrei wieder rückzuverbinden.

udprfnet

Das UDPRFNET Modul ist eine experimentelle Software für eine intelligente APRS Paketverteilung unter Digipeatern. Ziel ist das gesamte Netz als einen großen RX darzustellen und auch weiter entfernt empfangene APRS Pakete vom dort gebietsmässig nahegelegenen Digi per Radiusdefinition auf 144.800MHz wieder aussenden zu lassen. Dabei bilden mehrere Serververbindungen untereinander das Prinzip der Redundanz.

afskmodem

Das AFSKMODEM ist ein digitales Soundmodem, welches die Pakete in eine (A)FSK Modulation wandelt und der Soundkarte zuführt. Der Name soll jedoch nicht verwirren, es sind auch je nach Soundkarte Geschwindigkeiten > 28kBaud FSK möglich.

msgrelay

Ein experimentelles APRS Nachrichtenmodul zum Verwalten von Kurznachrichten mit Anbindung an das udpgate.

Diskussionen

Anhänge