APRS-Tracker - Software
English version
Hier finden Sie alles zum Thema Software für 
  den AVR-Tracker. Das Projekt wurde mit AVR-Studio-Projekt 
  in Verbindung mit WinAVR 
  erstellt. Diese Programme können kostenlos heruntergeladen werden. Bitte 
  beachten Sie, dass Sie zum Programmieren eines AVR mit AVR-Studio auch einen 
  hiermit kompatiblen AVR-Brenner besitzen müssen. Das einfach Drucker-Port-Kabel 
  funktioniert nicht. Hierfür ist aber die Freeware PonyProg 
  kostenlos verfügbar.
Aktuelle Version: APRS_Tracker_Software_230608.zip 
  vom 23.6.2008
To Do-Liste
  - GUI zum komfortablen Erstellen der EEPROM Datei
 Ich denke da an ein kleines Programm, dass aus Text-Eingabefelder und Options-Auswahlmöglichkeiten 
    besteht und die Hex-Datei für das EEPROM aus den Eingaben automatisch 
    generiert.
 
- Komprimiertes Format der Daten-Aussendung
 Die Daten werden zur Zeit im nicht-komprimierten Format ausgesendet. Das ist 
    zwar gut lesbar und einfach in der Programmierung, verschenkt aber viel Übertragungskapazität, 
    weil die Redundanz sehr hoch ist. Laut dem APRS-Protokoll ist dabei für 
    die Berechnung der Geschwindigkeit das Bilden ein Logarithmen nötig. 
    Auf einem 8-Bit Prozessor ohne Co-Prozessor ist das natürlich nur begrenzt 
    praktikabel. Daher werde ich wohl eine Werte-Tabelle benutzen.
Geschichte der Änderungen
  - 30.05.09
 Ich habe mich als Vorbereitung zum Fichtenfieldday des OV 
    Lennestadt O28 noch einmal ein wenig mit der Software des Trackers beschäftigt. 
    Als größte Änderung habe ich das #define zum einstellen des 
    TX-Delays in die StdDefines.h ausgelagert und nun auf ca. 200 ms eingestellt. 
    Das sollte die Aussendungen kürzer halten, aber mit den meisten Sendern 
    gut funktionieren.
 
- 23.06.08
 Auf Hinweis von Harald, DL1HW, habe ich eine kleine Änderung an der Software 
    vorgenommen. In der letzten Version war das "#define DEBUG" aktiv, 
    weshalb der Tracker alle 4 Sekunden sendet. Diese Einstellung ist nur für 
    Testzwecke gedacht. Damit es da zu keinen Verwirrungen kommt, habe ich in 
    der jetztigen Version das "#define DEBUG" auskommentiert.
 
- 22.05.08
 
- Ich habe den Temperatur-Sensor von der Platine entfernt. Die Änderung 
    in der Software besteht also darin, dass ich die Software-Teile, die mit dem 
    Temp-Sensor zu tun habe, bei #ifndef-Direktive auskommentiert habe. Das #define 
    heißt "TEMP". Wenn es nicht definiert ist, wird der Software-Teil 
    des Temperatursensors nicht übersetzt.
 
- 17.05.08
 Nach langer Zeit und einiger Rückmeldung habe ich mich mal wieder mit 
    der Software befasst. Es sind in diesem Zip-File keine Änderungen an 
    der Software des AVR vorgenommen, allerdings habe ich das HEX-File für 
    das EEPROM so angepasst, dass als Pfad WIDE1-1, WIDE2-1 verwendet wird. Dies 
    ist auf Grund der gestiegenen Belastung der 144.800 MHz nötig, aber gleich 
    gut, da inzwischen viele Internet-Gateways installiert sind. Ich empfehle 
    jedem, diese Änderung auch in seinem Tracker zu machen.
 
- 16.07.07
 In der Version vom 14.7.07 war noch ein dummer Programmier-Fehler (& und 
    && vertauscht), der dafür sorgte, dass die neu eingeführten 
    Konfigurations-Möglichkeiten nicht richtig funktionierten. Dies ist jetzt 
    aber behoben. Außerdem wurde die Möglichkeit eingebaut, per EEPROM 
    festzulegen, ob der Tracker beim Einschalten auf ein gültiges GPS-Signal 
    wartet und erst dann mit dem Senden beginnt oder ob immer gesendet wird.
 Die Widerstände für den Spannungs-Teiler zur Betriebsspannngs-Messung 
    scheinen ein wenig zu streuen. Daher wurde der Proportionalitäts-Faktor 
    auch ins EEPROM ausgelagert. Der berechnete Wert ist 50 (= 0x32). Wenn die 
    Spannungs-Anzeige bei jemandem nicht stimmt, würde ich vorschlagen, zuerst 
    den Spannungs-Teiler zu überprüfen und danach ein wenig am Faktor 
    zu drehen. Es kann auch möglich sein, dass eine scheinbar zu niedrige 
    Spannung daher kommt, dass durch den erhöhten Strombedarf im Sendefall 
    die Betriebsspannung am Tracker tatsächlich absinkt und somit die Messung 
    korrekt ist. Wo der Faktor im EEPROM nun steht, ist wie immer in der Doku 
    nachzulesen.
 Wo ich gerade dabei war, diese Dinge konfigurierbar zu machen, habe ich gleich 
    noch 2 Bits des Konfigurationsbytes dafür verwendet, die Aussendung von 
    Temperatur und Spannung via EEPROM steuerbar zu machen. Die Bits sind in der 
    Doku beschrieben.
 
- 15.07.07
 In der Version vom 14.7.07 war ein kleiner Syntax-Fehler enthalten, weshalb 
    sich das Projekt nicht kompilieren ließ. Dank Frank, D02FU, ist das 
    Problem aber nun erkannt und mit dieser Version behoben.
 
- 14.07.07
 Und noch ein Byte des Status-Textes ist meinen Ablenkungs-Versuchen vom Uni-Lernen 
    zum Opfer gefallen. An Adresse 0x69 ist nun ein Konfigurations-Byte vorgesehen 
    mit dessen Bits verschiedene Funktionen ein- oder ausgeschaltet werden können. 
    Zur Zeit kann man mit den 2 höchstewertigen Bits wählen, ob die 
    Zeit gesendet werden soll, und ob der Tracker als APRS-Messaging-fähig 
    sich ausgeben soll. Die restlichen 6 Bits sind noch ohne Funktion, aber mir 
    wird dafür sicherlich auch noch das ein oder andere einfallen...
 
- 13.07.07
 Es hat sich abermals das Format der EEPROM-Datei geändert. Nun können 
    für die zwei wählbaren Konfigurationen nicht nur das Icon, sondern 
    auch die SSID programmiert werden. Die Details können wieder aus der 
    Tabelle in der Doku entnommen werden. Außerdem hat der bis jetzt unbenutzte 
    DIP-Schalter B nun eine Funktion zugewiesen bekommen: Die Reduktion der Senderate 
    bei Stillstand (bzw. Geschwindigkeiten unter 5 km/h) kann mit ihm aktiviert 
    oder deaktiviert werden.
 
- 08.07.07
 Es wurde festgestellt, dass manche GPS-Mäuse die Geschwindkeit nicht 
    im Format nnn.n ausgeben, sondern auch n.n (z.B. 0.0) aussenden. Nach NMEA-0183 
    Version 2 ist das auch erlaubt. Aber damit kam die bisherige Software nicht 
    klar und sendete im APRS-Paket ebenfalls 0.0 als Geschwindigkeit. Doch im 
    APRS-Protokoll sind keine Zentel-Angaben für Geschwindigkeit und Richtung 
    erlaubt. Die neue Software-Version kann nun mit allen erdenklichen Formaten 
    von ".2" über "34.2" bis "123.2" umgehen 
    und wandelt diese in eine korrekte 3 stellige APRS-Aussendung mit ggf. führenden 
    Nullen um.
 
- 07.07.07
 Die APRS-Icons, die ausgesendet werden, lassen sich nun vom Benutzer in der 
    EEPROM-Datei festlegen. Sie haben 2 Möglichkeiten, die mit DIP-Schalter 
    A ausgewählt werden können. Es kann sowohl die Symbol-Tabelle als 
    auch der jeweilige Eintrag festgelegt werden. Zur näheren Information 
    bitte die Doku lesen.
 
- 06.07.07
 Beantwortung von gerichteten Anfragen sowie Bestätigung von Nachrichten 
    wurde grundlegend überarbeitet. Software kann nun protokoll-konform auf 
    APRSS und APRSP-Anfragen antworten.
 
- 05.07.07
 Fieldday-Symbol wurde durch Motorrad-Symbol ersetzt. Auswahl nun über 
    DIP-Schalter zwischen Auto und Motorrad möglich.
 
- 04.07.07
 Parameter für Abschaltung leicht verändert. Aussenden eines Status-Textes 
    am APRS-Format eingebaut. Allgemeine Information muss nun nicht mehr in den 
    Kommentar-Teil einer Positionsmeldung eingebunden werden. Dadurch sind die 
    Positions-Pakete kürzer und werden mit höherer Wahrscheinlichkeit 
    richtig empfangen. Die gelbe GPS-LED kommt nun wieder ihrer ürsprünglichen 
    Bestimmung nach und zeigt an, ob die letzten GPS-Daten gültig waren oder 
    nicht. Auch der Programm-Ablauf wurde modifiziert. Nach dem Einschalten wird 
    nun in jedem Fall ein Mal der Status-Text gesendet. Danach wartet das Programm, 
    bis die GPS-Maus gültige Positions-Daten sendet. Erst danach beginnt 
    das Programm mit seiner eigentlichen Arbeit.
 
- 30.06.07
 Abschaltungs-Automatik für KF 163 von Bosch eingebaut. Wenn GPS-Maus 
    für einstellbare Zeit (z.Z. 10 Minuten) keine Geschwindkeit größer 
    5 km/h liefert, so wird ein angeschlossenes KF 163 abgeschaltet. Jetzt sind 
    nur noch der Tracker und die GPS-Maus aktiv. Der Strombedarf lässt sich 
    damit von 400 mA auf 100 mA reduzieren. Wird die Geschwindigkeit wieder erhöht, 
    so schaltet sich das KF 163 wieder ein.
 
- 28.06.07
 Temperatur-Messung mit TMP275 läuft. Wert wird in Grad Celsius umgewandet 
    und als Kommentar-Text ausgegeben. Auch negative Temperaturen können 
    gemessen werden. Zu beachten ist, dass der Spannungregler die Platine auf 
    ca. 30 °C erwärmt.
- 20.06.07
 Spannungs-Messung mit intergiertem AD-Wandler funktioniert. Die Spannung über 
    den Spannungsteiler wird gemessen und der Wert richtig skaliert in Volt umgewandet. 
    Die Ausgabe erfolgt im Kommentar-Text.
   
    |  |  
		
     | letztes Update:
		30.05.2009  18:52 |  |