Ich habe herausfinden wollen, ob es mir mit ein paar zu Hause herumliegenden Teilen möglich wäre, eine Satellitenuhr zu bauen, die ich dann im Heimnetz als NTP-Server einsetzen könnte.
Ich hatte vor, diese Installation auf dem sowieso schon vorhandenen Pi vorzunehmen, der bei mir als PiHole gegen Werbung arbeitet und als Lauscher Flugzeugtransponderdaten sammelt und damit immer eingeschaltet ist.
Die untenstehenden Links haben mir geholfen - und hier nochmal ein spezieller Dank an SparkFun, die auch für Produkte, die bereits rausgefallen sind Dokumentationen und Datenblätter online weiterhin bereitstellen - denn seien wir ehrlich: Als ich das 406A-GPS-Modul gekauft habe, war ich noch wesentlich jünger als ich es jetzt bin. (Wenn ich mir durchlese, dass nicht einmal die Leute bei Sparkfun wissen, was der Nachfolger 506 eigentlich genau an seiner Schnittstelle liefert bin ich aber froh, das ältere Modell zu besitzen...)
Als ich die Links alle studiert hatte, begann ich zunächst, die Hardware zusammenzustecken, nötige Software zu installieren und das Gesamtsystem nach und nach in Betrieb zu nehmen: Als erstes war der Empfang der GPS-Botschaften dran: Mein Modul war so konfiguriert, dass Textbotschaften übermittelt wurden, die ich nach Umstellen der Baudrate am Raspi dann auch direkt sehen konnte.
Zu diesem Zeitpunkt habe ich das Modul noch einmal kurz entfernt und den Arduino benutzt, um es so zu konfigurieren, dass es auch wirklich alle von mir gewünschten Botschaften übermittelt - ging so einfach schneller und außerdem hatte ich bei meiner Schaltung vor, sparsam zu sein: ich wollte nur einen Draht fürs Empfangen vom Modul investieren und den zum Senden ans Modul weglassen.
Als das alles funktionierte, ging es an die Einkopplung des PPS-Signals: Das wurd kurz gesagt dazu gebraucht, dem Raspi zu sagen, wann genau die Sekunde, die in den GPS-Botschaften drin steht auch wirklich begonnen hat. Ist ein bisschen die Entsprechung des alten Radiokonzepts "Beim letzten Ton des Zeitzeichens ist es 12 Uhr." Dieses Signal wird an einen GPIO-Pin des Raspi angeschlossen und löst dort einen Interrupt aus, der im Zusammenspiel mit der installierten Software für die hohe Genauigkeit der Uhr sorgt.
Das sorgte für unvorhergesehene Probleme: Das Signal wurde nicht erkannt. Glücklicherweise hatte ich genau damit bereits gerechnet - die Beschreibung des Signals sah mir im Datenblatt schon nicht sehr vertrauenswürdig aus. Daher baute ich aus einem guten alten 555er eine Schaltung, die das Signal verlängerte (rund 0,3 Sekunden) und als Nebeneffekt bekam ich dazu auch einen anständigen Pegel. Diese Schaltung erweiterte ich noch um eine Negation des Eingangssignals: der 555 wird mit einer fallenden Flanke am Eingang gestartet, der GPS-Empfänger sendet an PPS aber einen positiven Peak. Zu guter Letzt noch eine LED integriert um die Pulse kontrollieren zu können - fertig.
Die Schaltung ist einfach - ich werde sie trotzdem demnächst nochmals in KiCad entwerfen und die Schaltung dann auch hier veröffentlichen - nunmehr müssen Bilder des Gesamtkunstwerks in einer Pappkiste und Details vom prototypischen Steckbrettaufbau der Impulsanpassung reichen (am Ende des Artikels).
GPS Shield
EM 406A
GPS Shield
GPS Receiver - EM-406A SiRF III (20 Channel)
GPS Receiver - EM-506 (48 Channel)
"/dev/tty? Device or resource busy"
Building a GPS Time Server with the Raspberry Pi 3
Disabling Bluetooth on Raspberry Pi
Overlay to remap Pi 3 UART
Raspberry Pi 3: GPIO-Port Module und Bluetooth
xx555 Precision Timer
NE555
13.08.2022
Nachdem ich meinen Raspi immer weiter zum Home-Server ausbaue, versuche ich auch immer mehr, mich vor den Versuchen zu schützen, in das einzudringen, was ich für meine Privatsphäre halte. Nun habe ich einen weiteren Schritt in dieser Richtung vollzogen:
26.02.2019
Nachdem ich bereits über andere Ideen zur Benutzung meines schon ein wenig in die Jahre gekommenen GPS-Empfängers berichtet habe, habe ich ihn nun noch einmal seinem ursprünglichen Zweck zugeführt.
19.01.2019
Ich habe im Zuge der letzten erfolgreichen Mars-Landung ein Thema wiederbelebt, das schon länger auf meiner Platte geschlummert hat:
19.01.2019
Ich habe neulich bereits über einen Fund in meiner Bastelkiste berichtet und jetzt hatte ich wieder eine Idee, die sich meiner Ansicht nach in den anstehenden langen dunklen Nächten zu untersuchen lohnen würde: Will man einen ESP 8266 schlafen legen, ist das sehr einfach - man kann ihn aufwecken, indem man an einem seiner Beine zieht.
02.12.2018
Nachdem ich die Hardwareanpasungen für mein altes GPS-Modul hier bereits als Grundlage für meinen eigenen Atomzeit-GPS-NTP-Server beschrieben und die Grundlagen der Hardware in ein GitHub-Repository gepackt habe, habe ich nun den letzten Schritt vollzogen.
21.09.2018
Nachdem ich meinen eigenen Atomzeit-GPS-NTP-Server in Betrieb genommen habe, habe ich mir Gedanken gemacht, warum die käuflich zu erwerbenden einen so hohen Anschaffungswiderstand haben.
Multi-User-WebDAV, Docker, GitHub
17.11.2019
Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.
Weiterlesen...Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.