Zero Motorcycle Cockpit integration for navigation instruction

Hiho,

ich hab eine Zero DSR/X und bin schon viel mit Kurviger gefahren.
Die DSR hat die Möglichkeit über die Zero App Navigationsanweisungen im Cockpitdisplay anzuzeigen.

Ich würde das gerne verknüpfen, da die Navigation in der Zero-App unglaublich simpel ist und nur Schnellste Route und keine Zwischenziele erlaubt.

Wenn es Interesse und einen Integrationsweg gibt, würde ich einen “Treiber” für die BLE-Schnittstelle zum Motorrad bauen, so dass es ein einfaches Interface gibt, um die Infos zu setzen.

Edit: Könnte ich nur für Android machen :slight_smile:

Danke für den Vorschlag. Wir planen aktuell die Umsetzung von Android Auto. Ich weiß nicht ob Zero Android Auto kompatibel ist? Aber falls ja, dann würde das funktionieren.

Nein leider nicht. Nach meinem Kenntnisstand kann man per BLE sowas hinschicken wie [symbol, abstand, straßenname] wobei symbol aus einem vorgefertigten satz ist, und das zeigt das cockpit dann an

Ok, danke für die Rückmeldung. Ich weiß ehrlich gesagt nicht ob sich der Aufwand dann lohnt. Hab auf die schnelle nichts so richtig passendes von Zero gefunden und wenn das keine öffentliche Schnittstelle ist die Morgen wieder anders aussehen kann, dann macht das für uns glaub keinen Sinn, vorallem da wir keine Zero zum testen haben.

Von Zero gibts nix offizielles.
Ich hab schon angefangen, die Anbindung zu machen, die würde ich (falls ich denn erfolgreich bin) auf github tun.

Falls die Einbindung davon zu aufwändig ist, wäre es denn möglich, dass die Kurviger App die Navigations-Anweisungen einfach per Intent veröffentlicht? dann könnte ich eine App bauen, die die Übersetzung macht.

Das wäre vermutlich möglich, müssten wir nochmal im Detail checken. Da müsstest du uns auch mal genau mitteilen was du brauchst.

Der Abstand ändert sich ja konstant, wir müssten dann ja z.B. alle 10/100m einen neuen Intent schicken.

Ich denke, es macht sinn, das immer dann zu senden, wenn es auch in der Anzeige aktualisiert wird, also wahrscheinlich alle 100m.

Ich bin schon ein bisschen weiter gekommen, aber leider noch nicht fertig.
Folgende Daten kann die Zero anzeigen:

  • Next maneuver (ist eine Zahl, die angibt, was der Fahrer tun soll, was welche Zahl bedeutet weiss ich noch nicht)
  • Abstand in Metern bis abgebogen werden muss
  • Name der Straße, auf der man grade fährt ()
  • Name der Straße, auf die man fahren soll (könnte natürlich auch sowas wie “Richtung Frankfurt” sein)
  • Vorr. Ankunftszeit am Ziel
  • Aktuelle Geschwindigkeitsbegrenzung

Traumhaft wäre perspektivisch natürlich, wenn ich die Reichweite des Akkus an Kurviger schicken könnte und das plant mir dann eine Ladestation (möglichst nahe einer Kneipe :slight_smile: ) in die Route, aber eins nach dem anderen.

Vielleicht könnte Kurviger auch eine Plugin-Schnittstelle für solche Anbindungen haben.

Es wird je nach Distanz aktualisiert, also z.B. auch 50 oder 10m. Zusätzlich werden auch noch weitere Infos wie z.B. Zeit zum Ziel etc. aktualisiert.

Ja, ich glaube das dauert noch ein bisschen :wink:

Vielleicht irgendwann mal :slight_smile:.

1 Like


So, nu brauch ich Daten :slight_smile: , oder Ihr integriert die Schnittstelle doch? Ich schick euch gern den Code.

Danke fürs Update :+1: - @Patrick siehst du da ein Problem wenn wir Intents für die Abbiegehinweise verschicken? Oder Alternativ eine ganz andere Idee?

Sender.zip (1.4 KB)

Das wäre die Interface-Klasse die momentan funktioniert. Leider habe ich aktuell keinen Weg gefunden das hin zu bekommen, ohne dass in der Kurviger App die Zielklassen explizit drin stehen müssten.

Für ein allgemeineres Interface könnte man auch etwas konstruieren, mit dem die Bridge App sich bei Kurviger per Intent registriert und dabei die Intent-Konfigs mitsendet. Dann wären wir schon fast bei ner Plugin-API :slight_smile:

Nö seh ich erstmal keine Probleme, super Idee eigentlich. Sind die Daten für den Intent denn vorgegeben irgendwo oder erstellen wir da unsere eigene API?

1 Like

In meinem letzten Post ist ein Vorschlag für das Interface angehängt. Es ist auf die Daten für die Zero zugeschnitten, aber meiner Meinung nach allgeimen genug um für andere Integrationen zu taugen.

Es gibt hier aber noch keinen Daten-Rückkanal. Für die Streckenaufzeichnung könnten evtl. Livedaten vom Motorrad interessant sein. Die Zero liefert coole Sachen per Bluetooth:
Geschwindigkeit, Leistung, Drehmoment, Kippwinkel ( :slight_smile: , wo bei man den mit ein bisschen Phantasie wahrscheinlich auch aus dem Telefon-Gyro bekommen könnte )
Aber das ist vielleicht was für später…

1 Like

Die Bridge App ist hier verfügbar:

Bin gespannt auf die Integration :slight_smile:

2 Likes

Ich hab das mal auf unsere Todo-Liste gepackt :+1: - ich kann hier aber aktuell noch keine direkte Time-Line versprechen. Aber vielleicht können die Leute, die das gern nutzen wollen hier entsprechend kommentieren damit klarer wird wie viele Leute das aktuell betrifft und wir das Feature besser priorisieren können.

Ich hab noch ein bisschen rumgewerkelt und eine Anbindung an Google-Maps über Notifications gemacht.

Das wäre für Euch noch einfacher: Die Infos einfach als Extras mit an die Notification hängen die während der Navigation an ist. Dann brauchts bei euch keine UI zum an und aus machen und keinen fremden Code. Dafür bei mir die Notifications-Read-Permission :slight_smile:

Ja passt von meiner Seite aus. Wie ist denn das Format von Google Maps, also wie liest du das aus, dann kann ich mal schauen ob wir das analog machen können.

Bitte nicht, bei GMaps muss ich die sachen mühsam wieder aus den Anzeigestrings basteln. Die Navianweisung hole ich mir mit einer Ähnlichkeitsanalyse des Icons mit Trainingsdaten.

Ihr könntet ja einfach roh die Daten dranpacken, wie ihr sie habt. Für das aktuelle Manöver bräuchte ich dann aber ne tabelle.

Ah verstehe, du könntest also den selben Ansatz auch bei Kurviger verwenden ;). Also das mit den Extras klingt von meiner Seite aus eigentlich auch nach einem guten Ansatz :+1:

Leider nicht, da Maps im Gegensatz zu kurviger kein Custom View für die Notification verwendet, sondern standard-daten wie “android.title” oder “android.subtext” extras setzt. An den Kurviger-Notifications sind keine Extras gefüllt.

1 Like