Raspberry Pi: Wie kann der Kismet-Server sauber rauf und runter gefahren werden zum WarWalking (WarDriving)?

Wenn ein Kismet-Server auf dem Raspberry Pi läuft, muss der Server sauber rauf und runter gefahren werden, sonst werden die *NETXML Dateien wegen einem fehlenden sync nicht vollständig auf die SD-Karte geschrieben. Das Problem ist aber, wie kann der Raspberry Pi eingerichtet werden, so das der gpsd und Kismet automatisch hoch und auch sauber wieder runter fahren, ohne das ein Bildschirm bzw. Konsole angeschlossen wird? Und wie kann vom GPS Empfänger die Systemzeit gesetzt werden, da der Raspberry Pi ja keine Systemuhr hat und es beim WarWalking kein Internet mit NTP gibt ?

Die Lösung des Problems wird in dieser Anleitung beschrieben.

Wir brauchen ein Script zum automatischen hochfahren und ein Script das auf einen Tastendruck wartet.

Also zuerst ein autostart Verzeichnis erstellen und die drei unten angegebenen Scripte in der neuesten Version laden:

Das automatisch starten über crontab habe ich hier schon mal beschrieben .

Hier das start-gps.sh Script welches per crontab automatisch nach dem anschalten des Raspberry Pis startet:

Das warte.py Script wartet auf einen Tastendruck und blinkt dann 10 mal und beendet sich.
Der Taster ist an Pin 11 und die LED an Pin 7 mit einem oder zwei Vorwiederständen angeschlossen.

Und das an-warte.py Script, welches die LED anschaltet und auf einen kurzen Tastendruck wartet:

Das ganze läuft nun so ab:

  • 1. den Raspberry Pi mit Accu-Strom versorgen
  • 2. der rPi läuft hoch und das start-gps.sh Script startet
  • 3. es wird der GPSD gestartet und die Uhrzeit gesetzt, dann geht die LED an
  • 4. will man nun das Wardriving starten, einfach kurz die Taste drücken, die LED geht zur Bestätigung aus
  • 5. und gehen … und laufen … und fahren … Kismet zeichnet auf… Wardriving
  • 6. nun wollen wir die Aufzeichnung beenden, wir drücken den Taster solange, biss die LED anfängt zu blinken
  • 7. wenn das blinken aufhört, kännen wir den rPi ausschalten oder aber mit dem Reset Taster wieder neu Starten und alles geht wieder mit 2 weiter

Wer noch Details wissen will, einfach ein Kommentar und ein Like 😉 hinterlassen.