QmapShack für Feuerwehr?

Die Bedienung über einen Touchscreen war noch nie ein Thema. Funktioniert denn die zwei Finger Geste?

Alternativ könnte man natürlich solche Tasten als Option hinzufügen.

Bei diesem Industrietablet von Panasonic funktioniert die zwei Finger Geste leider nicht.

Ggf. müssen wir auf ein anders Tablet umstellen. Das Toughbook von Panasonic hat hat den Vorteil das es Stoßfest, bis zu einem gewissen Grad Wasserdicht isr, eben sehr robust ist und so für Fuerwehreinsätze sehr gut geeignet.

Gruss
Manfred

Ich habe nicht das Problem, dass ncat den TCP-Port öffnet, sondern, dass ncat gar nicht gestartet wird, da der Zugriff mit “<” auf den COM-Port nicht klappt, d.h. “< COM4” führt bei mir nicht dazu, dass die Daten der COM-Schnittstellt an ncat geleitet werden, sondern dass ncat gar nicht gestartet wird. Könnte aber auch an meinem Rechner liegen, daher die Frage an Helmut, ob die Idee mit “< COM4” bei ihm klappt.

Wenn ich z.B. stattdessen gpsbabel verwende, kann ich meine Position in qmapshack darstellen, wenngleich die aktuelle Position auf der Karte nur refreshed wird, wenn ich die Karte immer etwas bewege (Bräuchte ich hier als Zwischenschritt wieder “nmeahandler.py”?).


GPSBabel.exe -T -i nmea,get_posn -f com4: -o nmea,gpgga=1,gprmc=0,gpvtg=0,gpgsa=0,pause=3 -F -  | ncat.exe -v -l 1234 

Für den Users wirds damit aber nicht einfacher und er muss sich um den Start der Zwischenschrittprogramme immer selber kümmern.

Grüße
Andreas

Hi Manfred,
Dein Tablet hat ein eingebautes GPS? Wenn ja, solltest du zuallererst ermitteln, ob das GPS über eine COM-Schnittstelle angesprochen werden kann. Dazu öffnest du den Gerätemanager im Windows. Welche COM-Ports siehst du da (das sind die Zeilen mit COM1, COM2, COM3…)?

Grüße
Andreas

Also Helmut hat mir geschrieben, dass es immer noch so funktioniert.

Das gar nichts gestartet wird glaube ich fast nicht. Immerhin wird nach dem ersten Versuch die Schnittstelle als belegt (access denied) angezeigt, oder?

Mit welcher Shell machst Du das? cmd.exe oder PowerShell? Was sagt der Task Manager?

Irgendwo muss man Kompromisse zwischen User-Freizeit und der eigenen machen. Der jetzige Ansatz ist sehr flexibel und allgemeingültig. Wie schon geschrieben, es ist ein Kind der Langeweile, ohne konkreten Bedarf. Jetzt ist es an denen, die es wirklich brauchen, was daraus zu machen. Mit ein wenig Python und Feenstaub (Google) kann man die Serielle auslesen, den Inhalt als TCP/Server bereitstellen und zudem QMapShack als Prozess starten und dafür sorgen, dass es immer läuft. Wenn es gut funktioniert freuen sich auch andere über eine Veröffentlichung. Und so ist dann OpenSource keine Einbahnstraße mehr.

Alternativ kann auch gerne jemand einen Adapter für NMEA/Seriell dem QMapShack Code beisteuern. Das ist aber ein wenig schwieriger.

So inzwischen ist nmeahandler.py im Downloadbereich des Wikis:

https://raw.githubusercontent.com/wiki/Maproom/qmapshack/Downloads/nmeahandler.py

Und ich habe gerade gesehen es gibt auch schon ein Python Skript für einen Server:

https://raw.githubusercontent.com/wiki/Maproom/qmapshack/Downloads/gpsserver.py

Das müsste allerdings noch ein wenig für Windows angepasst werden.

Danke fürs Nachfragen und diese Antwort genügt mir. Wenn es eine Besonderheit auf meinem Rechner ist (Evtl. Bluetooth-Com-Treiber, Windows 10 Build, Virenscanner …), kann ich damit leben und wäre für mich erledigt***

Ich kann mir ja mit gpsbabel behelfen:


GPSBabel.exe -T -i nmea,get_posn -f com4: -o nmea,gpgga=1,gprmc=0,gpvtg=0,gpgsa=0,pause=3 -F -  | nmeahandler.py | ncat.exe -v -l 1234

Grüße
Andreas

***: Nur der Vollständigkeit halber: Verwendete Shell: “cmd.exe”, Taskmanager und Procexpl zeigen nach dem ersten Start keine ncat.exe. Procmon zeigt, dass beim ersten und weiteren Starts der Process ncat.exe gar nicht versucht wird zu starten und die Fehlermeldung “Access is denied” bereit davor auftritt.

Danke, damit funktioniert auch der refresh der Position auf der Karte!

Ich verstehe, dass du bei einem Freiwilligenprojekt eigene Prioritäten setzt, was realisiert wird und was nicht. Das ist völlig OK.

Mein Wunsch lokale COM-Ports (=Lokale oder Bluetooth-GPS-Geräte) ohne Zusatzprogramme verwenden zu können, braucht vielleicht noch Zeit…

Grüße
Andreas

Hallo Andreas,

wir wollen einen NL-800U2 GPS-Empfänger nutzen. Allerdings war der gelieferte Empfänger defekt und wir warten aktuell auf Ersatz.
Angeschlossen wäre der Port COM5.

Gruss
Manfred

Danke für die Info, kann ich sicherlich auch mal brauchen. :slight_smile:

Hallo zusammen,

Andreas: falls der COM Port tatsächlich blockiert ist:
Vielleicht kannst Du das nach dieser Anleitung herausfinden:
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P8CLSA0

Viel Erfolg,

Helmut

Hi Helmut,
danke für den Tipp. Procexp zeigt mir an, dass die cmd.exe ein Handle auf \Device\BthModem0 hat, d.h. die cmd.exe, von der aus ich den Befehl “ncat.exe -v -l 1234 < COM4” starte, blockiert nach dem ersten Start der Befehlszeile den COM-Port. Strange, aber mit gpsbabel kann ich mein Problem umgehen. Damit kann ich leben.
Grüße
Andreas

Win10 1903 18362.657 DE x64, Treiber: Standard Serial over Bluetooth link, Microsoft, 10.0.18362.1, Service: BTHMODEM, GPS: Route66 Bluetooth GPS Sirf 3, Ncat.exe 32bit aus nmap-7.70

Mal so aus purer Neugier: Was passiert wenn Du das alles in einer PowerShell machst?

Wegen den Wegpunktsymbolen: Man kann auch einen eigenen Pfad zu den Symbolen setzen:

https://github.com/Maproom/qmapshack/wiki/AdvSetup#waypoint-icons-setup


.\ncat.exe -v -l 1234 < COM4

liefert bei mir in der Powershell


The '<' operator is reserved for future use.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : RedirectionNotSupported

Ich kann aber


start-process .\ncat.exe -ArgumentList "-v","-l","1234" -RedirectStandardInput COM4

erfolgreich starten. Damit kann ich qmapshack verbinden. Der Standort wird aber nur beim Kartenverschieben aktualisiert. Die Felder “Position” und “Höhe” werden automatisch aktualsiert. Das Feld “Zeit” bleit konstant auf “Mo Mrz 01:00:00”. Ich vermute, dass ich hier noch die nmeahandler.py als Pipezwischenschritt brauche, da ich die selbe “nichtaktualsierung des Standorts” und stillstehende Zeit auch habe, wenn ich meinen gpsbabel-Workarround ohne nmeahandler.py als Pipezwischenschritt starte. Mit nmeahandler.py klappt die “Zeit” und die Standortaktualiserung auf der Karte

Also diese nmeahandler.py sieht ja schon nach einem wilden Hack aus. Wer macht denn sowas?
Andreas: zeiche doch mal ein paar Sekunden des NMEA Datenstroms von Deinem SiRF Empfänger auf (sobald er guten Empfang hat). ZB mit Putty.
Das kann man dann gegen den NMEA Parser im QMS vergleichen und sieht dann vielleicht, woran es hängt.
(Nein: einen Patch werde ich nicht liefern, nur eine Analyse).

Leider ist unser Ersatz NL-8002U noch nicht geliefert. Sobald diese da ist werde ich das mit der Positionsanzeige versuchen hinzubekommen. Allerdings wenn ich die Berichte der Fachleute hier so verfolge, bin ich mir nicht sicher ob ich das Fachwissen besitze um das gelöst zu bekommen.
“Aber die Hoffnung stirb zuletzt”

Ach, der Trick ist dabei das Atmen nicht zu vergessen :slight_smile:

@huirad Ich glaube ich weiß warum: QMapShack braucht zwingend eine Zeitmarke die sich ändert um ein Update zu machen. Entweder kommt die aus GGA oder RMC. Der Grund: Es gibt Empfänger die senden mehrmals die gleichen Zeilen. Das würde zu zig Updates innerhalb einer Sekunde führen. Deswegen wird auf die Zeitmarke, die eine Auflösung von einer Sekunde hat, geschaut und nur ein Update ausgeführt, wenn sich die Zeitmarke geändert hat. Fehlen aber GGA und RMC, bzw haben keine Zeitmarke, dann wird das nichts mit dem Update. Deswegen der Hack.

Warum der “<” Operator beim einen Windows geht beim anderen nicht ist mir allerdings ein Rätsel.

Habedieehre Feuerwehr: die NL-8002U ist ein guter Empfänger.
Mit dem bekommen wir das hin. Lasst euch nicht abschrecken.

Zur Not meditiere ich mit kiozen noch a weng über NMEA Heuristiken.
Und mit euch über die Konfigurationsmöglichkeiten des Empfängers.
Für die bairische Feuerwehr muss das drin sein.