Forum

Tauscht Euch aus und findet Informationen

Projektvorstellung ...
 
Notifications
Clear all

Projektvorstellung CanAll MFD


(@andineise)
Active Member Customer
Joined: 8 months ago
Posts: 8
Topic starter  

Hallo Speedbuddies, 

ich möchte Euch eins meiner Projekte vorstellen. Das CanAll MFD ist ein rundes Multifunktionsdisplay mit

  • 1,28" rundes LCD Display 
  • 1xCAN Schnittstelle 
  • integriertem GPS Modul mit 10Hz 
  • BT Schnittstelle zur Übertragung der GPS Daten 
  • Wlan AP zur Konfiguration des Display, ist in Arbeit
  • Unterschiedliche Gehäusevarianten zur Integration in die Lüftungsdüse vom MX5 NB oder mit GoPro Halterung.
  • Spannungsbereicht sind 5-28v DC und ein Verpolschutz ist integriert 😉  

Aktuell ist es in meinem MX5 NB Turbo zu Testzwecken und Reifmachung verbaut an der Stelle gehen Gruß an Denis 🙂 Angeschlossen an die verbaute Megasquirt3 Basic können alle bereitgestellten Werte angezeigt werden. Andere Steuergeräte/Hersteller sind ebenso möglich.

MX5 Lüftungsdüse:

GoPro Halterung:

Die Kommunikation zur PaceLaps App funktioniert leider noch nicht, ich werde aber berichten sobald auch das funktioniert. 

Wenn sich ein Entwickler bei mir meldet wegen der GPS Daten Integration wäre ich sehr dankbar! 🙂 

 

Gruß Andreas


   
Quote
(@stefan-kolloch)
Member Admin
Joined: 3 years ago
Posts: 102
 

Hallo Andi,

bitte verzeih die späte Antwort, ich hatte in der Zwischenzeit gehofft noch aktuellere Informationen zu haben, was aber noch nicht der Fall ist.

Das Ding ist: Es gibt aktuell 2 Wege für die App, einerseits über WLAN, andererseits über Bluetooth.

Über Bluetooth kann derzeit ein externes Gerät bedient werden (i.d.R: GPS-Empfänger), welche mehr oder weniger individuelle Datenverarbeitungsroutinen haben. Sprich sofern du da gern Daten senden wollen würdest, müsste man sich sowieso auf eine Variante einigen, welche für beide möglichst wenig Arbeit bedeutet ^^

Über WLAN kann die App mehr oder weniger beliebig viele Sensoren aufnehmen, welche jedoch von einem Zentralen Hub kommen (ich hoffe ich spoiler hier nicht zu viel ^^), allerdings ist die Schnittstellenspezifikation noch nicht final.

 

Sofern du also beispielsweise Daten per Bluetooth senden wollen würdest, wäre es sinnvoll uns mitzuteilen, in welchem Format Du die Daten senden wollen würdest, dann können wir mal schauen, wie gut wir das implementieren können. Ich mutmaße jedoch, dass man in dem Fall auf einen externen GPS-Empfänger verzichten müsste, da bin ich mir jedoch gerade nicht ganz sicher (Die App würde dann das Handy-interne 1Hz-GPS verwenden)


   
ReplyQuote
(@andineise)
Active Member Customer
Joined: 8 months ago
Posts: 8
Topic starter  

Hi Stefan, 

danke für die Rückmeldung. Die Daten sollen per Bluetooth classic übertragen werden, da WLAN zur Konfiguration meines Devices verwendet wird.

Das Protokoll das ich aktuell verwende ist das NMEA RMC "$GPRMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,ddmmyy,x.x,a*hh<CR><LF>" angelehnt an den QSTARZ BT-818**. Andere Protokolle wären mit der aktuellen Hardware auch kein Problem. 

Wenn die APP aktuell schon etwas unterstützt schick mir doch bitte den erwarteten Datensatz mit Steuerzeichen 🙂 


   
ReplyQuote
(@stefan-kolloch)
Member Admin
Joined: 3 years ago
Posts: 102
 

standard NMEA wird unterstützt, aber ich dachte du wolltest noch andere Daten mit senden wie Öltemperatur, Drehzahl etc? Oder habe ich das falsch verstanden?


   
ReplyQuote
(@andineise)
Active Member Customer
Joined: 8 months ago
Posts: 8
Topic starter  

Die Möglichkeit die Motordaten zu schicken besteht, ist aktuell nicht geplant. 

Vor ca. 5 Monaten hat die Kommunikation, GPS Daten zur App noch funktioniert, jetzt allerdings nicht mehr... Deshalb Frage ich nach dem erwarteten Protokoll mit Steuerzeichen.


   
ReplyQuote
Danny Funkat
(@danny-funkat)
PaceLaps Entwickler Admin
Joined: 3 years ago
Posts: 7
 

@andineise Moin. Tolle Projektvorstellung!

Das erwartete Protokoll ist, wie Stefan schon erwähnt hat, NMEA 0183. Du sendest aktuell scheinbar nur den GPRMC Datensatz wie es von Deinem Post ersichtlich ist?

Die App erwartet zur Verarbeitung der GPS Daten weitere NMEA Sätze wie folgt:

  • GSV - Sichtbare Satelliten
  • RMC - Empfohlene Mindestnavigationsinformationen
  • GGA - Positionsdaten des Global Positioning Systems
  • GSA - GPS DOP und aktive Satelliten

Am einfachsten wäre es einfach die NMEA Datensätze die vom GPS Modul kommen 1:1 durchzureichen, im Normalfall dürfte das Format was das GPS Modul aussendet bereits korrekt geformt sein. Falls es noch andere NMEA Datensätze aussenden sollte werden diese von der App einfach ignoriert, falls diese nicht erkannt werden.

Hier ist eine "kurze" eingedeutschte Dokumentation der erwarteten NMEA Sätze.
Quelle (Englisch): https://gpsd.gitlab.io/gpsd/NMEA.html


GSV - Sichtbare Satelliten

  1. Gesamtanzahl der GSV-Sätze, die in dieser Gruppe übertragen werden sollen
  2. Satznummer, 1-9 dieser GSV-Nachricht innerhalb der aktuellen Gruppe
  3. Gesamtanzahl der sichtbaren Satelliten (mit führenden Nullen gesendet)
  4. Satelliten-ID oder PRN-Nummer (mit führenden Nullen gesendet)
  5. Höhenwinkel in Grad (-90 bis 90) (mit führenden Nullen gesendet)
  6. Azimut in Grad zum wahren Norden (000 bis 359) (mit führenden Nullen gesendet)
  7. SNR in dB (00-99) (mit führenden Nullen gesendet) weitere Satelliteninfo-Quadrupel wie 4-7 n-1) Signal-ID (NMEA 4.11) n) Prüfsumme
        1 2 3 4 5 6 7     n
        | | | | | | |     |
 $--GSV,x,x,x,x,x,x,x,...*hh

$GPGSV,4,1,14,01,77,154,45,03,13,156,,07,63,231,46,08,32,043,43,1*6E

RMC - Empfohlene Mindestnavigationsinformationen

  1. UTC der Positionsbestimmung, hh sind Stunden, mm sind Minuten, ss.ss sind Sekunden.
  2. Status, A = Gültig, V = Warnung
  3. Breitengrad, dd sind Grad. mm.mm sind Minuten.
  4. N oder S
  5. Längengrad, ddd sind Grad. mm.mm sind Minuten.
  6. O oder W
  7. Geschwindigkeit über Grund, Knoten
  8. Kurs über Grund, Grad wahr
  9. Datum, TTMMJJ
  10. Magnetische Variation, Grad
  11. O oder W
  12. FAA-Modusindikator (NMEA 2.3 und später)
  13. Navigationsstatus (NMEA 4.1 und später) A=autonom, D=differenziell, E=geschätzt, M=manuelle Eingabe, N=nicht gültig, S=Simulator, V=gültig
  14. Prüfsumme
        1         2 3       4 5        6  7   8   9    10 11
        |         | |       | |        |  |   |   |    |  |
 $--RMC,hhmmss.ss,A,ddmm.mm,a,dddmm.mm,a,x.x,x.x,xxxx,x.x,a*hh

$GNRMC,001031.00,A,4404.13993,N,12118.86023,W,0.146,,100117,,,A*7B

GGA - Positionsdaten des Global Positioning Systems

  1. UTC dieses Positionsberichts, hh sind Stunden, mm sind Minuten, ss.ss sind Sekunden.
  2. Breitengrad, dd sind Grad, mm.mm sind Minuten
  3. N oder S (Nord oder Süd)
  4. Längengrad, dd sind Grad, mm.mm sind Minuten
  5. O oder W (Ost oder West)
  6. GPS-Qualitätsindikator (nicht null)
    • 0 - Keine Fixierung verfügbar,
    • 1 - GPS-Fix,
    • 2 - Differential-GPS-Fix (Werte über 2 sind 2.3 Features)
    • 3 = PPS-Fix
    • 4 = Echtzeit-Kinematik
    • 5 = Float RTK
    • 6 = geschätzt (Toter Winkel)
    • 7 = Manueller Eingabemodus
    • 8 = Simulationsmodus
  7. Anzahl der verwendeten Satelliten, 00 - 12
  8. Horizontale Genauigkeitsminderung (Meter)
  9. Antennenaltitude über/unter dem mittleren Meeresspiegel (Geoid) (in Metern)
  10. Einheiten der Antennenaltitude, Meter
  11. Geoidale Trennung, der Unterschied zwischen dem WGS-84-Erdellipsoid und dem mittleren Meeresspiegel (Geoid), "-" bedeutet Meeresspiegel unterhalb des Ellipsoids
  12. Einheiten der geoidalen Trennung, Meter
  13. Alter der Differential-GPS-Daten, Zeit in Sekunden seit dem letzten SC104 Typ 1 oder 9 Update, Nullfeld, wenn DGPS nicht verwendet wird
  14. Differentialreferenzstations-ID, 0000-1023
  15. Prüfsumme
    11
    1         2       3 4        5 6 7  8   9  10 |  12 13  14   15
    |         |       | |        | | |  |   |   | |   | |   |    |
$--GGA,hhmmss.ss,ddmm.mm,a,ddmm.mm,a,x,xx,x.x,x.x,M,x.x,M,x.x,xxxx*hh

$GNGGA,001043.00,4404.14036,N,12118.85961,W,1,12,0.98,1113.0,M,-21.3,M*47

GSA - GPS DOP und aktive Satelliten

  1. Auswahlmodus: M=Manuell, gezwungen, im 2D- oder 3D-Modus zu arbeiten, A=Automatisch, 2D/3D
  2. Modus (1 = keine Fixierung, 2 = 2D-Fixierung, 3 = 3D-Fixierung)
  3. ID des ersten Satelliten, der für die Fixierung verwendet wird
  4. ID des zweiten Satelliten, der für die Fixierung verwendet wird
  5. ID des dritten Satelliten, der für die Fixierung verwendet wird
  6. ID des vierten Satelliten, der für die Fixierung verwendet wird
  7. ID des fünften Satelliten, der für die Fixierung verwendet wird
  8. ID des sechsten Satelliten, der für die Fixierung verwendet wird
  9. ID des siebten Satelliten, der für die Fixierung verwendet wird
  10. ID des achten Satelliten, der für die Fixierung verwendet wird
  11. ID des neunten Satelliten, der für die Fixierung verwendet wird
  12. ID des zehnten Satelliten, der für die Fixierung verwendet wird
  13. ID des elften Satelliten, der für die Fixierung verwendet wird
  14. ID des zwölften Satelliten, der für die Fixierung verwendet wird
  15. PDOP
  16. HDOP
  17. VDOP
  18. System-ID (NMEA 4.11)
  19. xx. Prüfsumme
    1 2 3                        14 15  16  17  18
    | | |                         |  |   |   |   |
$--GSA,a,a,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x.x,x.x,x.x*hh

$GNGSA,A,3,80,71,73,79,69,,,,,,,,1.83,1.09,1.47*17

Beispielhafte Daten:

    
$GNRMC,064822.80,A,2601.72562,N,11914.28110,E,35.329,246.34,070323,,,D,V*36
$GNGGA,064822.80,2601.72562,N,11914.28110,E,2,12,0.81,14.1,M,10.1,M,,0000*7A
$GNGSA,M,3,30,07,14,17,,,,,,,,,1.32,0.81,1.05,1*07
$GPGSV,4,1,14,01,77,154,45,03,13,156,,07,63,231,46,08,32,043,43,1*6E
$GNRMC,064822.84,A,2601.72546,N,11914.28069,E,35.407,246.30,070323,,,D,V*34
$GNGGA,064822.84,2601.72546,N,11914.28069,E,2,12,0.81,14.1,M,10.1,M,,0000*77

Damit sollte es klappen dass die App die GPS Daten von Deinem Gerät richtig verarbeiten kann!
Probier es mal aus und gib eine Rückmeldung ob es funktioniert oder noch irgendwo hakt!


   
ReplyQuote
(@andineise)
Active Member Customer
Joined: 8 months ago
Posts: 8
Topic starter  

Danke Danny, 

ich habe es um die 3 Datensätze erweitert und es läuft. 😀 

This post was modified 2 weeks ago by AndiNeise

   
ReplyQuote
Share:
My cart
Your cart is empty.

Looks like you haven't made a choice yet.