Endlich ist der 100 mm Selbstrück Convex Microswitch für Raspberry Pi aus China eingetroffen:

Fehlt nur noch das Gehäuse und die Software. Wofür würdet ihr ihn einsetzen?
Eclipse Oxygen.3 wurde jetzt veröffentlicht und ist schneller und für Java 10 vorbereitet
Ein schönes 5 Minuten Video und Kommentare sind auf heise.de zu finden.
Java JDK 10 noch nicht für den Raspberry Pi, das dauert noch!
Java JDK 10 noch nicht für den Raspberry Pi, das dauert noch!
Aber für Linux, Solaris, Mac und Windows -> Download JDK 10
Als Sprachänderung gibt es nur var.
Wie kann man auf dem Raspberry Pi (Linux, Debian) die größten installierten Packages anzeigen?
Wie kann man auf dem Raspberry Pi die größten installierten Packages anzeigen? Einfach auf der Konsole:
|
1 |
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n |
eingeben. Die größten Packages werden als letztes angezeigt. Da kann man dann wenn man will das eine oder andere löschen, aber nicht nmap ;-).
Heute mal kein Raspberry Pi: 5 Min Excel Gruppierungen zur Abwechselung
Manchmal will man in Excel ein paar Spalten aus bzw. ein blenden um große Tabellen übersichtlicher zu machen. Das geht leicht mit der Gruppierungs Funktion. Hier die kurze Anleitung:
Wir wollen die Spalten B und C gruppieren, dazu markieren wir die Spalten.

„Heute mal kein Raspberry Pi: 5 Min Excel Gruppierungen zur Abwechselung“ weiterlesen
Wie wird auf einem Mac OS X dauerhaft der ausführliche Druck-Dialog bzw. Speichern-Dialog in allen Programmen angezeigt?
Wie wird auf einem Mac OS X dauerhaft der ausführliche Druckdialog bzw. ausführliche speichern Dialog in allen Programmen angezeigt?
Einmalig auf der Konsole folgenden Eintrag absetzen:
|
1 |
defaults write -g PMPrintingExpandedStateForPrint -bool TRUE |
Wer den default Zustand wieder haben will:
|
1 |
defaults write -g PMPrintingExpandedStateForPrint -bool FALSE |
Für den erweiterten Speichern Dialog geht es mit:
|
1 |
defaults write -g NSNavPanelExpandedStateForSaveMode -bool TRUE |
oder wieder zum Default:
|
1 |
defaults write -g NSNavPanelExpandedStateForSaveMode -bool FALSE |
Wie kann Gradle auf einem Raspberry Pi installiert und ein Beispielprojekt in 10 min mit Javadoc, Test und Reports angelegt und gebaut werden?
Manchmal braucht man Gradle. Wie kann das auf einem Raspberry Pi installiert werden. Das geht in 10 Minuten mit:
|
1 2 3 4 5 |
sudo apt-get update sudo apt-get upgrade sudo apt-get install gradle # Version checken gradle -v |
Ok, das ist nicht die aktuellste 4.6 Version aber man kann schon mal loslegen.
Dann wollen wir auch gleich mal ein Testprojekt anlegen. „Wie kann Gradle auf einem Raspberry Pi installiert und ein Beispielprojekt in 10 min mit Javadoc, Test und Reports angelegt und gebaut werden?“ weiterlesen
Flugzeug Notfall Benachrichtigung bei Entführung auf das Handy mit Pushover oder Twitter erhalten mit NodeRed
Vor einem Jahr hatte in einem Artikel die Java Schnittstelle ua. wie folgt beschrieben: „Mit dieser Javaschnittstelle können einfach Pushover Nachrichten an jedes Handy bzw. Tablet versendet werden wenn ein Flugzeug startet oder landet. Da wir in der Nähe vom Flughafen Hannover (EDDV, HAJ) leben, sehen wir gerne Flugzeuge starten und landen. Die beiden Start.- und Landebahnen liegen in Ost-West Richtung. Wenn wir aus dem Küchenfenster schauen oder wenn wir auf der Terrasse sitzen, sehen wir alle Flugzeuge die von Osten aus ankommen bzw. in die Richtung wegfliegen. Nun möchte ich gerne eine Nachricht mit Höhe, Geschwindigkeit, Flugnummer usw. auf mein Handy erhalten, wenn ein Flugzeug aus dem Osten zum landen ankommt bzw. in Richtung Osten starte. Alle anderen Flugzeuge die in die andere Richtung starten bzw. landen sollen nicht berücksichtigt werden. Auch nicht Flugzeuge die nur Hannover überfliegen.
Auch soll eine Pushover versendet werden wenn ein Luftnotfall (med. Notfall, Entführung usw. ) per Transponder gemeldet wird.“
Denn letzten Teil, dh. Benachrichtigung auf Twitter und Pushover wenn ein Flugzeug Notfall eintritt, „Flugzeug Notfall Benachrichtigung bei Entführung auf das Handy mit Pushover oder Twitter erhalten mit NodeRed“ weiterlesen
Raspberry Pi: 0.18.4: Maintenance Release update für NodeRED
Vor 5 Tagen ist eine neue NodeRED Version 0.18.4 veröffentlicht worden. Was ist neu? Siehe hier. Also zum updaten ein:
|
1 |
update-nodejs-and-nodered |
auf der Konsole eingeben und nach ein paar Minuten, ist die neue Version installiert:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
This can take 20-30 minutes on the slower Pi versions - please wait. Stop Node-RED ✔ Remove old version of Node-RED ✔ Remove old version of Node.js - Update Node.js LTS ✔ Node v9.5.0 Npm 5.6.0 Clean npm cache ✔ Install Node-RED core ✔ 0.18.4 Move global nodes to local - Install extra Pi nodes - Npm rebuild existing nodes ✔ Add menu shortcut ✔ Update systemd script ✔ Update update script ✔ Any errors will be logged to /var/log/nodered-install.log |
Die neue Version kann auch im Menü ganz unten überprüft werden:
„Raspberry Pi: 0.18.4: Maintenance Release update für NodeRED“ weiterlesen
Feinstaub Alarm in Hannover vom Raspberry PI
0.18.3: Maintenance Release von NodeRED veröffentlicht
Es gibt für den Raspberry Pi einen neue NodeRED Version. Ok dann mal ein
|
1 |
update-nodejs-and-nodered |
nach ein paar Minuten:
ok, dann starten: „0.18.3: Maintenance Release von NodeRED veröffentlicht“ weiterlesen
Wie können Fake News mit NodeRED auf dem Raspberry Pi erzeugt werden?
Habe seit einiger Zeit den „Fake-News-Generator“ (siehe Blogbeitrag auf diesen Blog) mit NodeRED auf einem Raspberry Pi laufen. Wurde aber schon mehrfach bei Twitter gesperrt, da es wohl alle 5 Minuten zu viel war. Habe so aber schon über 154000 Tweets auf meinen Account gesammelt. Du kannst mich auch gern folgen. Hier nochmal der etwas modifizierte Flow, der etwas mehr Zufall in die Posts bringt und nur noch ca. maximal alle 11 Minuten eine News bringt:
Und hier nun die Fake-News in Echtzeit im iFrame:
Mit Diagramm der Häufigkeit:
Die Fake-News gehen auch automatisch nach ThinkSpeak wo die News mit Diagramm angezeigt werden. „Wie können Fake News mit NodeRED auf dem Raspberry Pi erzeugt werden?“ weiterlesen
Test-Pyramide oder Wer Testet ist feige ;-)
Beluga Airbus A300 mit Raspberry Pi getrackt view via Settingssite von flightradar24 Feeder (dump1090)
Habe heute zum erstenmal unter Port http:///(pi-Adresse):8754/ eine neue Seite von dem flightradar24 Feeder entdeckt. Wenn man die Seite öffnet werden die Einstellungen angezeigt:
Klickt man auf Settings, könnte man sogar welche ändern: „Beluga Airbus A300 mit Raspberry Pi getrackt view via Settingssite von flightradar24 Feeder (dump1090)“ weiterlesen
vi copy and paste
Schöner C/C++ Code mit clang-format in 10 Minuten
Wie kann C/C++/Java … Quellcode auf dem Raspberry Pi headless formatiert und hübscher gemacht werden. Mit dem clang-format Programm das auch in Visual Studio, Emacs, Vim ua. Programme integriert werden kann. Das ist auch in Projekten sehr wichtig, um gleiche formatierungen für alle Projektmitglieder zu nutzen. Auch klappt es dann besser mit dem compare!
Das ist schnell installiert mit:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
sudo apt-get install clang-format # Test ob es läuft und in welcher Version clang-format -version # Ergebnis: # clang-format version 3.8.1-24+rpi1 (tags/RELEASE_381/final) # Aufruf mit Ausgabe über Konsole, wir formatieren im Google Style möglich währe aber auch noc # LLVM, Chromium, Mozilla, WebKit: clang-format -style=Google programm-4.cpp # Aufruf mit Ausgbe in neue Datei: clang-format -style=Google programm-4.cpp > programm-4-format.cpp # Aufruf mit Ausgbe in der gleichen Datei, der wohl häufigste Anwendungsfall: clang-format -style=Google -i programm-4.cpp |
Ok, dann noch hier die ganze Anleitung: „Schöner C/C++ Code mit clang-format in 10 Minuten“ weiterlesen
Der coole MQTT-Client MQTT.fx 1.6.0 ist gestern veröffentlicht worden
Dann mal eben die neue Version 1.6 auf dem Mac geladen und getestet.
Läuft wie immer super! Jetzt sogar mit Support für Google Cloud IoT!
Hier mal der Test mit der Anzahl der Flugzeuge in Hannover: „Der coole MQTT-Client MQTT.fx 1.6.0 ist gestern veröffentlicht worden“ weiterlesen
vi goto
vi suchen und ersetzen

Aktuellste Node.js v9.5.0 Version mit npm v5.6.0 auf den Raspberry Pi mit Debian Sketch in 10 Minuten installieren
Für NodeRED und auch so braucht man manchmal die aktuellste Version der JavaScript-Laufzeitumgebung Node.js und npm. Da die Raspberry Pi unterschiedliche Packages brauchen, ist es wichtig, das man sich von hier die richtige Version lädt.
Zuerst schauen wir mal, was wir für einen Pi wir überhaupt habe mit:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
cat /proc/cpuinfo # Ok, Ausgbe model name : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 697.95 Features : half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7 Hardware : BCM2835 Revision : 0010 Serial : |
Was ist mit Git push Github mit Two-factor Authentication (2FA) anders? Oder warum läuft die Git unterstüzung in NodeRED nicht?
Bisher konnte immer von der Komandozeile von einem Raspberry Pi die Dateien mit Git nach GitHub übertragen werden. Das schlug plötzlich fehl, und es wurden nicht sagende user.failed_login Fehlermeldungen im GitHub Account unter Security history angezeigt.
Da musst ich aber einiges ausprobieren, bis ich die Aktivierung der „Two-factor Authentication“ vor ein paar Tagen mit diesem Fehler in Zusammenhang bringen konnte. Es gibt da auch die Seite Creating a personal access token for the command line und die wo es ganz unten steht.
Also wenn die „Two-factor Authentication“ aktivert ist, geht die Übertragung nicht mehr mit dem User und Passwort sondern mit einem User Token, denn man auf der Seite „Developer Settings“ erzeugen muss:
Der generierte Token kann oder besser gesagt muss dann anstatt des Passwortes verwendet werden. Wenn man den Token nicht immer neu eingeben will, kann man den auch cachen mit:
|
1 2 3 4 5 |
# aktiviert den Cache für default 15 Minuten git config --global credential.helper cache # aktiviert Cache für 1 Stunde, timeout ist die Zeit in Sekunden git config --global credential.helper 'cache --timeout=3600' |
Wie kann auf einem Raspberry Pi GraphViz 2.38.0 installiert und mit DOT zum erzeugen schöner Diagramme genutzt werden?
Warum den Raspberry Pi nicht für die Erstellung von schönen Grafiken mit GraphViz verwenden? Graphviz kann auf dem rPi schnell installiert werden mit:
sudo apt-get update && upgrade
sudo apt-get install graphviz
Nach der Installation die Version checken mit
dot -version
es werden auch einige weitere interessante Infos ausgegeben:
Mit Graphviz können aus DOT Dateien schönen Diagramme erzeugt werden. Mit DOT konzentriert man sich auf den Inhalt und Graphviz macht das Layout. DOT hat eine einfache (C ähnliche) Syntax. Hier erst einmal eine Mindmap zu DOT:

Z.B. die Datei: „Wie kann auf einem Raspberry Pi GraphViz 2.38.0 installiert und mit DOT zum erzeugen schöner Diagramme genutzt werden?“ weiterlesen
GPIO Schnittstelle: In 15 Minuten mit C++ die Temperatur des Raspberry Pi ausgeben – Teil 4
Bevor wir auf die GPIO Schnittstelle des Pi zugreifen, geben wir erst einmal die Temperatur aus.
Der Raspi speichert die Systemtemperatur in der Datei /sys/class/thermal/thermal_zone*/temp. Wenn wir also die Datei mit dem Systemkommando cat ausgeben, haben wir die Temperatur ausgelesen.
Z.b.:
|
1 2 3 |
cat /sys/class/thermal/thermal_zone*/temp # Ergebnis 35780 |
Dafür erstellen wir uns zu erst eine neue Klasse Temperatur mit der Methode int ausgeben(). So können wir auch sehen, wie mehrere Klassen zusammenspielen. Also eine Temperatur.h Datei mit der Definition
„GPIO Schnittstelle: In 15 Minuten mit C++ die Temperatur des Raspberry Pi ausgeben – Teil 4“ weiterlesen
TOP 6 – GIT: Geht auch auf dem Raspberry Pi oder Git Cheat Sheet in 5 Minuten
TWPlotter: Java Wasserfall Diagramme Generierung von rtl_power erzeugten CSV-Dateien
Mit rtl_power kann man via SDR alle Frequenzen scannen. Die Scann CSV-Ergebniss-Dateien können dann mit gopow in schöne Wasserfall Diagramme umgewandelt werden.
Hier mal den Ablauf als BPMN 2.0
Hier ein Beispiel:
Das gopow Programm wollte ich mal in Java 8 schreiben, um auch selbst die Farben usw. beeinflussen zu können. Und auch um mal neue Funktionen von Java 8 zu benutzen. Auch kann das gopow auf dem Raspberry Pi nicht mit sehr großen Dateien umgehen. Die Scann Dateien können aber auch einige 100 MB groß sein. „TWPlotter: Java Wasserfall Diagramme Generierung von rtl_power erzeugten CSV-Dateien“ weiterlesen
Raspberry Pi: XML formatieren mit xmllint unter Linux
Manchmal hat man auf dem Raspberry Pi XML Dokumente die man ansehen will, die aber nicht schön formatiert sind.
Z.B. dieses XML Dokument hat alles in einer Zeile, und ist das Ergebnis einer Haltestellenabfrage in Hannover über diese API:
|
1 |
<?xml version="1.0" encoding="utf-8"?><Trias version="1.0" xmlns="trias" xmlns:siri="http://www.siri.org.uk/siri" xmlns:mw="http://services.mentzdv.de/2010/07/middleware"><ServiceDelivery><siri:ResponseTimestamp>2018-01-26T16:39:07</siri:ResponseTimestamp><siri:ProducerRef>HannIT</siri:ProducerRef><siri:ResponseMessageIdentifier>16-39-04-229</siri:ResponseMessageIdentifier><DeliveryPayload><!--Version: 10.0.46.2 build 04.08.2017 23:35:59 - Data Build: 2018-01-26T02:58:08 - Data Format: EFA10_00_08--><TripResponse><ErrorMessage><Code>-2</Code><Text><Text>Der Inhalt des Elements 'LocationRef' in Namespace 'trias' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'LocationName' in Namespace 'trias'.</Text><Language>de</Language></Text></ErrorMessage><ErrorMessage><Code>-2</Code><Text><Text>Der Inhalt des Elements 'LocationRef' in Namespace 'trias' ist unvollständig. Erwartet wurde die Liste der möglichen Elemente: 'LocationName' in Namespace 'trias'.</Text><Language>de</Language></Text></ErrorMessage><TripResult><ResultId>ID1925019635546312568133148169218912592159</ResultId><Trip><TripId>ID79254160591872422507315819789461666810137</TripId><Duration>PT1H2M</Duration><StartTime>2018-01-25T18:55:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID1913421648141272672174552254815522713559</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:55:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:17:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:645</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID139231716200782176135165271411684811793</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID105164111781947352671401882331617935139115</ResultId><Trip><TripId>ID159169223155511751349321724680145161110</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T18:56:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID10815957164483877314721718154162215165197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:183</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001611</DestinationStopPointRef><DestinationText><Text>Laatzen, Laatzen</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2061855721862517977133148250126255684919</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:07:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:29:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:878</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID9995222128125187707315220323680631562182</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID161981841731302019878174130109162453113116</ResultId><Trip><TripId>ID3918616412419135149781371953388149171121194</TripId><Duration>PT1H0M</Duration><StartTime>2018-01-25T18:57:00</StartTime><EndTime>2018-01-25T19:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID19424210018018023612771405119231108213121</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T18:57:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03253:452</JourneyRef><LineRef>de:gvh:03253</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>253</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25002921</DestinationStopPointRef><DestinationText><Text>Langenhagen Zentrum</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID23323118724021416427781792089816576113151182</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:06:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:10:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H04:34459</JourneyRef><LineRef>de:ddb:92H04</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S4</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25709922</DestinationStopPointRef><DestinationText><Text>Hildesheim Hauptbahnhof (DB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID4920542874223994771381012721722024388225</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:14:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:19:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03136:855</JourneyRef><LineRef>de:gvh:03136</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>bus</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>136</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID652261514012618017670175133982138136218197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T19:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:121</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID11514022929162233141661592261847712923322380</ResultId><Trip><TripId>ID1652211681371157925069184721752532381851970</TripId><Duration>PT47M</Duration><StartTime>2018-01-25T19:40:00</StartTime><EndTime>2018-01-25T20:27:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID312311722214831647716912518895244264960</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:40:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4940</StopPointRef><StopPointName><Text>Berenbostel Friedhof</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:08:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03480:644</JourneyRef><LineRef>de:gvh:03480</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>480</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004779</DestinationStopPointRef><DestinationText><Text>Garbsen</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID3329442610613616813613286151252103191195</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4940</StopPointRef><StopPointName><Text>Berenbostel Friedhof</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:27:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04491:56</JourneyRef><LineRef>de:gvh:04491</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>491</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID118139611755178916415022410698139126144107</ResultId><Trip><TripId>ID131187901371121036771547612819354244136173</TripId><Duration>PT1H4M</Duration><StartTime>2018-01-25T19:53:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID577166230254887651681252071162029217446</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:53:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:15:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:647</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID130102331026661101731901681619196131246223</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID2422521721919511024079149568022252143133</ResultId><Trip><TripId>ID561512171131471642397317415022223117617924343</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T19:56:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID115101125110189114787816281225159180157222243</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T19:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:93</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001731</DestinationStopPointRef><DestinationText><Text>Sarstedt</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID4220210417623222571144145131167301226160</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:04:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:880</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID23313114750179181537614420825018112515976198</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID62710347231212777916720530102103236129125</ResultId><Trip><TripId>ID192142087958171817614911715312214495626</TripId><Duration>PT55M</Duration><StartTime>2018-01-25T20:02:00</StartTime><EndTime>2018-01-25T20:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID021221622813524314867154108373622179153211</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:02:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:06:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03253:454</JourneyRef><LineRef>de:gvh:03253</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>253</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25002921</DestinationStopPointRef><DestinationText><Text>Langenhagen Zentrum</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2103126170139236204721912618558203440220</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:12:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:16:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H05:34581</JourneyRef><LineRef>de:ddb:92H05</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S5</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25108000</DestinationStopPointRef><DestinationText><Text>Hameln Bahnhof</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2102025022290209126701891871688972155206251</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:880</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID223511961452379142751651781292641397912</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T20:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:165</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25008000</DestinationStopPointRef><DestinationText><Text>Neustadt Bahnhof (ZOB)</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID40298810861371865128253164221761717693</ResultId><Trip><TripId>ID33161119322081084465142150261461872496174</TripId><Duration>PT1H4M</Duration><StartTime>2018-01-25T20:53:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>1</Interchanges><TripLeg><LegId>ID598210623213128767019019138228121928482</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:53:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:15:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03470:649</JourneyRef><LineRef>de:gvh:03470</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>470</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID72215115525443670148818720539241229233</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID221241100164208190132681292215018612118117135</ResultId><Trip><TripId>ID178441123217718823065128741712514116725118</TripId><Duration>PT1H1M</Duration><StartTime>2018-01-25T20:56:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>2</Interchanges><TripLeg><LegId>ID721151667710012011365187961882178724220760</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen/Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T20:56:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:01:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:02001:97</JourneyRef><LineRef>de:gvh:02001</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>urbanRail</PtMode><Name><Text>Stadtbahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>1</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25001731</DestinationStopPointRef><DestinationText><Text>Sarstedt</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID24361371510774138671721997766213161108</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2551</StopPointRef><StopPointName><Text>Hannover Wiesenau</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:04:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:882</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID112196223552103917218414817624023119128197</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult><TripResult><ResultId>ID116155168213245145287216534195106108248127104</ResultId><Trip><TripId>ID74250138237497825275173189149253169411675</TripId><Duration>PT51M</Duration><StartTime>2018-01-25T21:06:00</StartTime><EndTime>2018-01-25T21:57:00</EndTime><Interchanges>3</Interchanges><TripLeg><LegId>ID46572610722824922765191103242111218710047</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:2921</StopPointRef><StopPointName><Text>Langenhagen Zentrum</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:06:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:10:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03480:613</JourneyRef><LineRef>de:gvh:03480</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>480</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004948</DestinationStopPointRef><DestinationText><Text>Engelbostel Kirchstraße</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID2298515723823375966916321165239254168237179</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:6631</StopPointRef><StopPointName><Text>Langenhagen/Bahnhof Mitte</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:12:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:16:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:ddb:92H05:34585</JourneyRef><LineRef>de:ddb:92H05</LineRef><DirectionRef>outward</DirectionRef><Mode><PtMode>rail</PtMode><Name><Text>S-Bahn</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>S5</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25108000</DestinationStopPointRef><DestinationText><Text>Hameln Bahnhof</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID22591552723199181671901766491225577125</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4411</StopPointRef><StopPointName><Text>Hannover Bahnhof Ledeburg</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:20:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:25:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:03135:882</JourneyRef><LineRef>de:gvh:03135</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>135</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004380</DestinationStopPointRef><DestinationText><Text>Hannover Stöcken</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg><TripLeg><LegId>ID11757226130228246184641495024211715624657175</LegId><TimedLeg><LegBoard><StopPointRef>de:03241:4380</StopPointRef><StopPointName><Text>Hannover Stöcken</Text><Language>de</Language></StopPointName><ServiceDeparture><TimetabledTime>2018-01-25T21:42:00</TimetabledTime></ServiceDeparture><StopSeqNumber>1</StopSeqNumber></LegBoard><LegAlight><StopPointRef>de:03241:4892</StopPointRef><StopPointName><Text>Osterwald OE Asselweg</Text><Language>de</Language></StopPointName><ServiceArrival><TimetabledTime>2018-01-25T21:57:00</TimetabledTime></ServiceArrival><StopSeqNumber>2</StopSeqNumber></LegAlight><Service><OperatingDayRef>2018-01-25</OperatingDayRef><JourneyRef>de:gvh:04490:124</JourneyRef><LineRef>de:gvh:04490</LineRef><DirectionRef>return</DirectionRef><Mode><PtMode>coach</PtMode><Name><Text>Bus</Text><Language>de</Language></Name></Mode><PublishedLineName><Text>490</Text><Language>de</Language></PublishedLineName><DestinationStopPointRef>25004882</DestinationStopPointRef><DestinationText><Text>Osterwald UE Großer Weg</Text><Language>de</Language></DestinationText></Service></TimedLeg></TripLeg></Trip></TripResult></TripResponse></DeliveryPayload></ServiceDelivery></Trias> |
Wie können wir das nun schön formatieren? Dazu gibt es das Kommandozeilen-Tool xmllint. Damit kann eine XML Datei leicht formatiert werden. Dazu das xmllint installieren mit
|
1 |
sudo apt-get install libxml2-utils |
Dann ein Aufruf von „Raspberry Pi: XML formatieren mit xmllint unter Linux“ weiterlesen
Heatmap mit Raspberry Pi Zero W und gopow erzeugen
Wie kann mit dem Raspberry Pi eine Heatmap erzeugt werden?
Hier mal ein Beispiel, um die unterschiedlichen Frequenzen zusehen in das Bild klicken und vergrößern:
Legende:
Und noch ein Beispiel:
Airband (rtl_power -f 118M:137M:8k -g 50 -i 10 -e 1h airband-7.csv):
Und ein letztes Beispiel mit einem Scann nach den Flugzeugtranspondern auf 1090 Mhz (rtl_power -f 1089M:1091M:1k -g 50 -i 10 -e 1h airband-1090-2.csv) wo man gut die Transponder der Flugzeuge (rot) sehen kann:
Als Datenbasis nehmen wir die mit rtl_power erzeugte Datei.
Zuerst laden wir uns das go Programm als binary rtl-gopow herunter und entpacken es: „Heatmap mit Raspberry Pi Zero W und gopow erzeugen“ weiterlesen
Strato: Einschränkungen beim Mail-Versand zu Microsoft-Postfächern
Warum kann der Raspberry Pi keine E-Mails mehr senden? Mit Stato E-Mails an hotmail senden?
Hier die Fehlermeldung:
Unfortunately,
messages from [xxxxx] weren’t sent. Please
contact your Internet service provider since part of
their network is on our block list (AS3140). You can also
refer your provider to
Ah, Stato schreibt für angemeldete User:
„Einschränkungen beim Mail-Versand zu Microsoft-Postfächern
Aktuell ist die Zustellung und Weiterleitung von E-Mails, die von STRATO Postfächern zu Microsoft-Postfächern gesendet werden, eingeschränkt. Das betrifft zum Beispiel E-Mailadressen mit „@live“, „@outlook“, „@msn“ oder „@hotmail“.
Die Ursache hierfür sind kurzfristig geänderte Richtlinien bei Microsoft. Diese führen aktuell dazu, dass die Server von Microsoft einige unserer IP-Adressen nicht zulassen. Wir stehen bereits mit Microsoft im Austausch, um diese Einschränkung zeitnahe zu beheben.
Wir bedauern die Unannehmlichkeiten.“
SDR: Fix rtl_power: symbol lookup error: rtl_power: undefined symbol: rtlsdr_set_bias_tee für Raspberry Pi
Das Rtl_power ist ein unix-hacker’s Tool für die Annäherung an den Wasserfall mit folgenden Features, ldt. Kyle Keen:
- Unlimited frequency range. You can do the whole 1.7GHz of a dongle
- Unlimited time. At least until you run out of disk for logging
- Unlimited FFT bins.
- Quantitative rendering. Exact power levels are logged.
- Runs on anything. A slower computer will use less samples to keep up.
Wer folgenden Abbruch
rtl_power: symbol lookup error: rtl_power: undefined symbol: rtlsdr_set_bias_tee
auf dem Raspberry Pi bei rtl-power bekommt, der kann die librtlsdr0 entfernen mit
|
1 |
sudo apt-get remove librtlsdr0 |
dann läufts.
GPIO Schnittstelle: Mit WiringPi in 15 Minuten auf die GPIO Ports des Raspberry Pi zugreifen – Teil 3
Mit der wiringpi kann man leicht auf die GPIO Ports des Raspberry Pi zugreifen. Mit den Pins kann man dann leicht Hardware steuern. Auf dem Blog gibt es eine gute ausführliche Anleitung. Das will ich nicht wiederholen, sondern hier geht es darum wie man mit C++ auf die GPIO zugreifen kann. Obwohl man auch in 15 Minuten nach Installation der wiringpi Api die GPIO über Bash Scripte oder Python ansprechen kann.
Hier nun die nötigen Vorarbeiten um C++ mit wiringpi machen zu können. Es sind dort auch einige C Beispiele im Repo. Dazu aber später mehr.
Entweder man installiert das Package mit
|
1 |
sudo apt-get install wiringpi |
oder wie hier nun beschrieben über Git die neueste Version und compiliert es selber mit dem Ausführen des build Scriptes. Das ist hier beschrieben da wir das als API für die C++ Programmierung brauchen.
„GPIO Schnittstelle: Mit WiringPi in 15 Minuten auf die GPIO Ports des Raspberry Pi zugreifen – Teil 3“ weiterlesen



























