Tracking the e-Cannonball 2020

Tracking the e-Cannonball 2020

28. September 2020 0 Von aha

Nach dem ich bereits beim e-Cannonball 2019 das Tracking übernommen hatte (damals mit Traccar-App am Handy) sah ich es als Herausforderung für den e-Cannonball 2020 ein besseres System zu erarbeiten.

Probleme mit dem 2019er Tracking

Die 2019 verwendete Traccar Lösung am Handy hatte mehrere Nachteile:
– Die korrekte Einrichtung war recht kompliziert
– Die Energiesparfunktionen der Handies deaktivierten regelmäßig die Übertragung
– Handies waren auch während des Ladestopps in Bewegung
– Qualität war Abhängig vom verwendeten Gerät

Erste brauchbare Hardware

Ende 2019 hab ich mich deshalb bereits nach einer Hardwarelösung umgesehen, die Idee aber mangels brauchbarer Produkte bald wieder verworfen.

Im Mai 2020 hab ich dann eher durch Zufall einige interessante Tracker bei Amazon entdeckt und auch gleich mal bestellt:

Ich dachte mir damals es wäre vielleicht möglich die Firmware der Tracker zu modifizieren so das die Informationen direkt zu meinem Server gesendet werden.

Entschieden hab ich mir vorerst für den Zhenyao Mini-GPS-Tracker (im Bild oben) da dieser bereits über einen integrierten Akku verfügte der das Gerät auch ohne permanenter Stromversorgung am Laufen hielt.

Wie sich herausstellen sollte war es tatsächlich viel einfacher die Daten an meinen Server senden zu lassen. Alle drei Tracker konnte man mit einfachen SMS Kommandos dazu bringen die Daten an eine bestimmte Adresse zu senden. Perfekt für meine Zwecke.

Eine erste Serverimplementierung zeigte ein etwas seltsames Verhalten. Der Tracker wechselte ohne erkennbare Motivation das Übertragungsprotokoll und verwendete alternativ zum gut dokumentierten Protokoll des Sinotrack ST-901 auch noch ein unbekanntes binäres Protokoll. Ich hab irgendwann aufgegeben herausfinden zu wollen warum das Teil das machte und hab einfach beide Protokolle implementiert. Der „original“ Sinotrack ST-901 den ich im Endeffekt hauptsächlich verwendet habe verhielt sich in der Hinsicht wesentlich vorhersagbarer.

An dieser Stelle hatte ich dann wieder mehr Probleme als Lösungen:

  • mit welchen SIM Karten sollte ich die Tracker ausrüsen
  • woher bekomme ich kurzfristig 70 Stück dieser Tracker wenn Amazon nur 15 auf Lager hat
  • wie löse ich die Stromversorgung da der Tracker nur ein dreipoliges Kabel mit offenem Ende hat
  • wie sollte ich die gelieferten Positionsinformationen speichern und anzeigen

SIM Karten für die Tracker

Die ersten Tests hab ich mit dem Classic Tarif von yesss! gemacht (keine monatlichen fixkosten, EUR 0,009 / MB). Der Aktivierungsvorgang war aber recht aufwendig und für 70 SIM Karten wollte ich mir das nicht antun. Zudem gibt es bei herkömmlichen Mobilfunkanbietern keine Möglichkeit die Karten gemeinsam zu verwalten oder sie zeitweise stillzulegen.

Bei einer Internetrecherche zum Thema stieß ich dann auf den Anbieter „Things Mobile“ der SIM Karten fürs Internet of Things (IoT) anbietet. Den Datentransfer rechnet Things Mobile pro MB ab. Fixe Kosten entstehen dabei nicht. Zudem wird mit der SIM Karte ein gewisses Basisguthaben mitgekauft das man dann im Betrieb aufbrauchen kann. Die Karten funktionieren in ganz Europa.

Ich hab drei SIM Karten für zusammen EUR 30,- gekauft und damit auch EUR 30,- Guthaben erworben. Das Megabyte wird momentan mit EUR 0,12 verrechnet. Viel für einen Smartphonetarif, aber kein Problem für einen Tracker der gerade mal 20 KB an Daten pro Stunde erzeugt.

Als weiteren Anbieter endeckte ich dann noch Emnify. Ein Würzburger Startup das sein Mobilfunknetz in der Cloud betreibt und umfangreiche APIs zum Zugriff auf die SIM Karten und die Geräte in denen sie verbaut sind bietet.

Finanzielles

Ich habe 2020 75 SIMs für EUR 252,- gekauft. Emnify verlangt in meinem Tarif eine Grundgebühr von EUR 1,50 pro Monat, allerdings nur für die SIM Karten die in dem Monat aktiviert waren. D.h. wenn ich die Karten Anfang September aktiviere und gleich nach dem e-Cannonball wieder deaktiviere fallen nur Grundgebühren in der Höhe von EUR 112,50 an und für jede SIM erhalte ich 20 MB Inklusivvolumen wofür ich bei Things Mobile bereits EUR 2,40 bezahlt hätte. Die Grundgebühr war also nicht weiter schlimm.

Ein weiterer Vorteil der Emnify-SIM-Karten war die Batch Aktivierung. Die Karten kommen im Batches von 25 Stück die sich komplett mit ein paar Mausklicks aktivieren lassen. Bei yesss! dauerte die Aktivierung einer Karte etwa 5 Minuten. Bei Emnify brauchte ich für 75 Karten die selben 5 Minuten. Das hat mir im Vergleich zu yesss! gut 6 Stunden Zeit gespart.

Zhenyao Nachbau, Sinotrack Original?

Ende Juni hatte ich von Amazon insgesamt 16 Zhenyao Tracker bekommen. Fehlten noch ein paar aber die gabs nicht. Im Endeffekt hab ich dann Ende Juni 20 Stück der Sinotrack ST-901 bei Aliexpress und dann nochmal 50 Stück bei Alibaba.com in China bestellt die Ende Juli bei mir eintrudelten.

Der Zhenyao Tracker
Der Sinotrack Tracker

Auf den ersten Blick sehen die Teile beinahe gleich aus und ich nahm an das sie aus der selben Fabrik stammten. Im Detail sind jedoch Unterschiede am Gehäuse zu erkennen so das ich mittlerweile davon ausgehe das es sich beim Zhenyao um einen nahezu perfekten Nachbau des Sinotrack ST-901 handelt. Möglicherweise ist es auch nur einfach eine ältere Version des Trackers da am PCB des Zhenyao der Text 20150818 aufgedruckt war während am PCB des Sinotrack der Text 20190819 zu lesen ist.

Oberseite des Zhenyao
Oberseite des Sinotrack ST-901
Unterseite des Zhenyao
Unterseite des Sinotrack ST-901
Akkupack des Zhenyao
Akkupack des Sinotrack ST-901

Interessanterweise hatte ich den Eindruck das der Zhenyao Tracker genauere Positionsinformationen lieferte. Zudem waren die Intervalle kürzer (teils nur 3 Sekunden) und der Akku hielt etliche Stunden durch. Der Sinotrack ST-901 verhielt sich wesentlich vorhersagbarer. Er hielt die eingestellten 10 Sekunden Intervalle exakt ein und sobald die 12V Versorgungsspannung weg war ging er in den Stromsparmodus mit 60 Sekunden Intervallen. Der Akku hielt dennoch nicht besonders lange durch.

Die Stromversorgung

Bis jetzt hatten die zahlreichen Tracker nur offene Lietzen für Stromversorgung und ein Datensignal (Zündung ein/aus). Die Tracker konnten mit Spannungen im Bereich von 7 bis 99V betrieben werden. Auf Grund der Wärmeentwicklung würde ich mich aber nicht trauen dauerhaft mehr als 15V anzulegen.

Ich entschied 12V Autostecker für den Zigarettenanzünder zu montieren. Die Anfang Juni bei aliexpress.com bestellte erste Charge (siehe Bild rechts) erhielt ich Mitte August.

Ich entschied mich dann Stecker mit Schalter von Pollin.at zu bestellen. Dieser Schalter wurde als „Zündung“ verkabelt so daß ich die Schalterstellung am Server empfangen konnte. Außerdem war der Schalter beleuchtet – so war es einfacher zu kontrollieren ob der Stecker ausreichend Kontakt hergestellt hatte.

Das Thema Kontakt bzw. Wackelkontakt verfolgte mich bis zum Ende es e-Cannonball. Immer wieder kam es vor daß der Stecker aus der Buchse rutschte oder schlicht der Kontakt verloren ging. Selbst eine Überarbeitung aller Stecker konnte das Problem nicht vollständig aus der Welt schaffen. Ein Punk wo für 2021 Verbesserungen notwendig sind.

Gehäuse und Schalter

Mein Plan war es die Tracker zu Hause voll zu laden und vollgeladen an die Teams zu verteilen. Leider hatten die Tracker jedoch keinen Ein/Aus Schalter sondern waren aktiviert sobald die SIM Karte eingelegt war.

Meine Lösung war einen SIM Träger zu drucken der einen Tastschalter enthielt mit dem die SIM Karte von aussen eingelegt und wieder entfernt werden konnte. Die gedruckten SIM Träger hatten außerdem den Vorteil das die im Tracker verbaute, üblicherweise nicht sichbare, LED von aussen gesehen werden konnte. Allerdings mußte ich dazu auch den Kopf des Gehäuses austauschen da erste Versuche mit Bohren und runden Schaltern sich als nicht zielführend herausgestellt hatten.

Aktivierung und Konfiguration

Um die Tracker zu Konfigurieren waren einige SMS notwendig. Die alle von Hand zu verschicken widerstrebte mir und so hab ich mir ein Webserver-Script gebaut welches über das EMNIFY API die SMS zu den Trackern schickte und sie so für meinen Server konfigurierte. Das Aufschrauben, Einlegen der SIM und des SIM Trägers, Zuschrauben, Anschließen, Konfigurieren und Beschriften hat einen kompletten Abend gedauert.

Ladebox

Mir erschien es als zu unsicher die Tracker zu Hause zu laden und einige Tage später den Teams auszuhändigen so das ich mich entschloss eine Ladebox zu bauen. Diese sollte auch gleich dem Transport der Tracker dienen und die Ausgabe vereinfachen.

Ich habe eine Kiste bestellt und mit dem Laserdrucker einen Holzeinsatz mit 6×12 = 72 Fächern gebaut. Jedes dieser Fächer enthält eine 12V Buchse die auf der Rückseite verkabelt und mit einem 320W Netzteil verbunden ist. Das Netzteil ist stark genug um Tracker in allen 72 Fächern gleichzeitig mit Strom zu versorgen. Aus Sicherheitsgründen ist jede Zeile des Rasters einzeln abgesichert und überwacht.

Kartenanzeige

Zu guter Letzt mußte natürlich noch die Software implementiert werden. Genaugenommen hab ich die Software bereits mit den ersten Testläufen im Juni begonnen und im September wurden dann noch die finalen Änderungen zB an der Karte umgesetzt.

Das Backend besteht aus einem C++ Programm auf einem virtuellen Server bei der Fa. Hetzner. Dieses Programm empfängt die Daten der Tracker und schreibt sie in eine MySQL Datenbank am Webserver.

Ein PHP Script am Webserver liest die Daten wiederum aus der Datenbank, bereitet sie vor, cached und schickt die Daten gebündelt an die Karten in diversen Browsern.

Im Browser läuft eine Bootstrap-Vue Webanwendung mit einer Leaflet.js Kartenanzeige die regelmäßig Positionsupdates vom PHP Script am Webserver nachlädt und diese darstellt. Für große Anzeigen (PCs) wurde eine SVG basierte Rangliste implementiert während für kleine Anzeigen (zB Smartphones) eine simple Ranglistenanzeige benutzt wird.

e-Cannonball

Am 26. September 2020 war es dann soweit. Der große Moment. Der e-Cannonball von Berlin nach Moers mit 60 Teams und genausovielen Trackern.

Bereits am 25. September im Parc fermé habe ich die Tracker zur Probe in einigen Fahrzeugen installiert. Speziell Fahrzeuge mit Frontscheibenheizung oder Wärmeschutzbeschichtung wollte ich testen und tatsächlich ist der GPS Empfang unter einer solchen Frontscheibe kaum möglich. Wir konnten aber auf Seitenscheiben oder die äußerste untere Ecke der Frontscheibe ausweichen wo es dann doch wieder funktionierte.

Einige Fahrzeuge wie zum Beispiel der Polestar 2 haben auch keine 12V Buchse im Cockpit sondern nur im Kofferraum. Dort ist ein Einbau aber zu riskant weil während der Fahrt der Stecker nicht kontrolliert / wiedereingesteckt werden kann sollte es zu Kontaktproblemen kommen. Beim Polestar 2 haben wir das Problem mit einem USB-zu-12V Konverter gelöst. Ich hatte einige der Dinger gebaut, sie stellten sich aber als nicht besonders zuverlässig heraus.

Auf Grund der Probleme mit Stecker, GPS Empfang und generell einiger unzuverlässiger Tracker habe ich mich in der Nacht darangemacht das Server Backend zu erweitern so das zusätzlich zu den Daten der GPS Tracker auch Daten von der Traccar App empfangen werden konnten. Weiters habe ich einen Merkzettel für jedes Team gedruckt in dem beschrieben war wie die Traccar App ggf. installiert und konfiguriert werden mußte. Laut Heino war es aber nicht notwendig auf das Traccar Backup umzusteigen. Um 02:30 war ich im Bett (so spät ist es übrigens auch schon fast wieder während ich diese Zeilen schreibe).

Der Must🗲ng

Um 05:00 klingelte dann schon wieder der Wecker und ich machte mich daran die über Nacht geladenen Tracker in der Ladebox zum Ausgabeort zu wuchten. Bei den ersten beiden Gruppen hab ich noch selbst Tracker an die Teams in den Fahrzeugen verteilt, aber ab 07:00 waren wir selbst am Start.

Und prompt gab es auch das erste Problem: Keiner der Tracker wurde in der Karte angezeigt. Als wir die Startfreigabe erhielten saß ich schon am Beifahrersitz und versuchte das Problem zu beheben. Wie sich herausstellte gab es ein Problem wenn die Karte (Bootstrap-Vue App) versuchte die Positionsinformationen vom Server zu lesen. Einige Tage vorher hatten wir die Amazon-Cloud zur Lastverteilung zwischen Karte und Datenbankserver geschalten und genau diese Verbindung machte nun Probleme. Als schnelle Lösung habe ich die Karten umgestellt so das diese direkt auf den Server zugriffen. Das sollte sich später noch als Problem herausstellen.

Im Harz wartete ein anders gelagertes Problem auf uns: schlechtes mobiles Internet. Auf einigen Teilen der Strecke war es den Trackern nicht möglich Positionsinformationen zu senden. Damit mußten wir allerdings leben.

Kurz vor unserem Zieleinlauf dann die Hiobsbotschaft: Das komplette Tracking war offline. Der Zugang zum Server gesperrt. Nichts ging mehr. Wie sich herausstellte haben am Nachmittag derartig viele Zugriffe auf die Karte stattgefunden daß der Serverbetreiber sich gezwungen sah den Server vom Netz zu nehmen um negative Auswirkungen für seine übrigen Kunden zu verhindern. Also Notlösung wurde das Aktualisierungsintervall der Karten vervielfacht (was zu etwas ruckeliger Kartenanzeige führte) und der Server wieder in Betrieb genommen. Den Zieleinlauf konnten dann alle wieder online verfolgen.

Fazit

Die Hardwarelösung hat zwar einige Vorteile gegenüber der Traccar-App-Lösung aus dem Jahr 2019 speziell was den Aufwand für die Fahrerteams betraf, allerdings gibt es noch viel Verbesserungspotential für die kommenden Jahre:

  • Die wackelige 12V Stromversorgung muß entweder durch USB oder kompletten Akkubetrieb ersetzt werden
  • Der Tracker muß frei im Fahrzeug positionierbar sein damit auch bei Frontscheibenheizung o.ä. ein GPS Empfang möglich ist.
  • Die Softwarelösung muß stabiler werden und weniger Daten übertragen.

Ich nehme das als Aufgabe in 2021 und hoffe das es dann besser läuft.