NEWS
Test Adapter Bosch ebik connect / flow
-
Ein Backup-Konzept musste ja eh haben, egal wieviel Zeug auf der Kiste läuft.
Könnte ja auch sein, dass der Hobel aus anderen Gründen neuinstalliert werden muss. -
Hallo McLane,
eine Frage, was machst du mit den Daten der einzelnen Ausfahrten?
Ich würde mir gerne auch meine Fahrten, vor allem die unterschiedlichen Stufen, anzeigen lassen. Vielleicht sogar die map dazu. Hast du hierzu einen Ansatz wie die Daten zu visualisieren sind?
Da
nkeVG
Schienw -
@schienw Da ich mit der Trennung der beiden Adapter nicht wirklich weiter gekommen bin, visualisiere ich im Moment nur meine gefahrenen Kilometer in einer Jahrestabelle. Letzte Woche wollte ich noch mal zum Vergleich den onebikeapp-ios Link von der Instanz 2 über die Konsole holen, und selbst das geht jetzt nicht mehr, weil die Browser alle melden, das Cookies nicht gefunden wurden. Ein entsprechender Link wurde nicht wieder angezeigt. Hoffe da irgendwann weiter zu kommen.
Was die einzelnen Werte in den "assistModeUsage" Spalten bedeuten, kann ich dir nicht sagen.
Hoffe du kommst weiter!
Gruß
Jo -
@schienw sagte in Test Adapter Bosch ebik connect / flow:
Vielleicht sogar die map dazu. Hast du hierzu einen Ansatz wie die Daten zu visualisieren sind?
Suche benutzt ?
z.B. hier:
https://forum.iobroker.net/topic/55918/maps-mit-streckendarstellung/47?_=1741421233456 -
@bahnuhr
anscheinend nicht erfolgreich, aber dank deiner Hilfe bin ich jetzt schon sehr weit gekommen.
Ich kann mir in einer Tabelle alle Fahrten mit Datum und Fahrstrecke je Unterstützung anzeigen lassen. Zu den Touren werden in der zweiten Spalte auch alle Maps in klein angezeigt, Mittelpunkt ist Start der Tour.
Als nächstes versuche ich nun noch das Höhenprofil als Grafik anzeigen zu lassen.Vielen Dank
Schienw -
@schienw sagte in Test Adapter Bosch ebik connect / flow:
Ich kann mir in einer Tabelle alle Fahrten mit Datum und Fahrstrecke je Unterstützung anzeigen lassen. Zu den Touren werden in der zweiten Spalte auch alle Maps in klein angezeigt,
Na, dann stell doch deine Lösung mal hier ein.
-
@bahnuhr
Anbei mein Script:// Script um aus den DP vom Adapter "bosch-ebike" eine MAP zu erstellen und den Weg zu zeichnen // bahnuhr, 03_2024 // Variablen var poly =""; // hier werden die GPS gespeichert // var trip = "03"; // DP bei den Objekten der eingelesen werden soll: bosch-ebike.0.trips.xx.details var logging = true; var center_gps = "53.465, 11.71"; // Mittelpunkt der Karte var zoom = 17 // Zoom der Karte var pfad = "route.html" // Dateiname - wird in vis.0 gespeichert // GPS einlesen und der Variablen poly zuweisen // html erzeugen und speichern in /vis.0/xxx.html var string = '<!DOCTYPE html>\n<html>\n<head>\n<title>Simple Leaflet Map</title>\n<meta charset="utf-8" />\n' string = string + '<body>\n' string = string + '<table border=0>' string = string + '<tr>' const idsCO2 = $('bosch-ebike.0.trips.*.id'); var f = 2 var hilf = 0 idsCO2.each(function(id, i) { var poly =""; var h= getState(id).val if (i < 9){ ii = i + 1 hilf = "0" + ii } else{ ii =i + 1 hilf = i + 1 } distance = 0 var distance = getState("bosch-ebike.0.trips." + hilf + ".attributes.distance").val; var startTime = getState("bosch-ebike.0.trips." + hilf + ".attributes.startTime").val; var ModeUsage01_name = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage01.name").val; var ModeUsage01_assistModeUsage = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage01.assistModeUsage").val; var ModeUsage01_color = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage02.color").val; var ModeUsage02_name = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage02.name").val; var ModeUsage02_assistModeUsage = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage02.assistModeUsage").val; var ModeUsage02_color = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage03.color").val; var ModeUsage03_name = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage03.name").val; var ModeUsage03_assistModeUsage = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage03.assistModeUsage").val; var ModeUsage03_color = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage04.color").val; var ModeUsage04_name = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage04.name").val; var ModeUsage04_assistModeUsage = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage04.assistModeUsage").val; var ModeUsage04_color = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage05.color").val; var ModeUsage05_name = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage05.name").val; var ModeUsage05_assistModeUsage = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage05.assistModeUsage").val; var ModeUsage05_color = getState("bosch-ebike.0.trips." + hilf + ".attributes.assistModeUsage05.color").val; var date = formatDate(startTime, "TT.MM.JJJJ SS:mm") string = string + '<td>' string = string + date + ' ' + distance/1000 + " KM" string = string + '<table border=0>' string = string + '<tr>' string = string + '<td bgcolor=yellow>' string = string + ModeUsage01_name string = string + '</td>' string = string + '<td bgcolor=blue>' string = string + ModeUsage02_name string = string + '</td>' string = string + '<td bgcolor=green>' string = string + ModeUsage03_name string = string + '</td>' string = string + '<td bgcolor=orange>' string = string + ModeUsage04_name string = string + '</td>' string = string + '<td bgcolor=red>' string = string + ModeUsage05_name string = string + '</td>' string = string + '</tr>' string = string + '<tr>' string = string + '<td>' string = string + ModeUsage01_assistModeUsage/1000 string = string + '</td>' string = string + '<td>' string = string + ModeUsage02_assistModeUsage/1000 string = string + '</td>' string = string + '<td>' string = string + ModeUsage03_assistModeUsage/1000 string = string + '</td>' string = string + '<td>' string = string + ModeUsage04_assistModeUsage/1000 string = string + '</td>' string = string + '<td>' string = string + ModeUsage05_assistModeUsage/1000 string = string + '</td>' string = string + '</tr>' var Prokm = distance /100 string = string + '<tr>' string = string + '<td>' string = string + Math.round(ModeUsage01_assistModeUsage/Prokm) + ' %' string = string + '</td>' string = string + '<td>' string = string + Math.round(ModeUsage02_assistModeUsage/Prokm) + ' %' string = string + '</td>' string = string + '<td>' string = string + Math.round(ModeUsage03_assistModeUsage/Prokm) + ' %' string = string + '</td>' string = string + '<td>' string = string + Math.round(ModeUsage04_assistModeUsage/Prokm) + ' %' string = string + '</td>' string = string + '<td>' string = string + Math.round(ModeUsage05_assistModeUsage/Prokm) + ' %' string = string + '</td>' string = string + '</tr>' string = string + '</table>' var poly =""; var string3 = ""; var obj = JSON.parse(getState("bosch-ebike.0.trips." + hilf + ".details").val); var end = obj.activityData.length - 1; var center_gps = '"' + obj.activityData[30].lat + ', ' + obj.activityData[30].lon + '"'; for (var x=0; x<=end; x++) { if (obj.activityData[x].lat != null) { poly = poly + "["+obj.activityData[x].lat+", "+obj.activityData[x].lon+"]" if (x < end) poly = poly + "," } else { } } if (logging) log (poly); string = string + '</td>' string = string + '<td>' var center_gps = "48.90376, 11.93504"; // Mittelpunkt der Karte var zoom = 11 string = string + '<link rel="stylesheet" href="https://unpkg.com/leaflet@1.6.0/dist/leaflet.css"integrity="sha512-xwE/Az9zrjBIphAcBb3F6JVqxf46+CDLwfLMHloNu6KEQCAWi6HcDUbeOfBIptF7tcCzusKFjFw2yuvEpDL9wQ=="crossorigin=""/></head>\n' string = string + '<body>\n<div id="map' + hilf + '" style="width: 600px; height: 400px"></div>\n<script src="https://unpkg.com/leaflet@1.6.0/dist/leaflet.js"integrity="sha512-gZwIG9x3wUXg2hdXF6+rVkLF/0Vi9U8D2Ntg4Ga5I5BZpVkVxlJWbSQtXPSiUTtC0TjtGOmxa1AJPuV0CPthew=="crossorigin=""></script>\n<script>\n' string = string + "var map"+ hilf + " = L.map('map" + hilf + "').setView([" + center_gps + "], " + zoom + ");\n" string = string + "mapLink = '<a href=" + '"http://openstreetmap.org"' + ">OpenStreetMap</a>';\n" string = string + "L.tileLayer( 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {attribution: '© ' + mapLink + ' Contributors', maxZoom: 18,}).addTo(map" + hilf + ");\n" string = string + 'var polyline = L.polyline([ \n' + poly + '\n], { color: "blue", weight: 3, opacity: .7, lineJoin: "round" } ).addTo(map' + hilf + ');\n' string = string + '</script>\n' string = string + '</td>' string = string + '</tr>' }); string = string + '</body>\n</html>' writeFile("vis.0", "/" + pfad, string, (error) => { if (logging) log('Datei "" gespeichert!'); });
-
Super
Und wenns funktioniert noch besser. -
Habe gerade versucht, den Adapter einzurichten, jedoch kam keine onebikeapp-ios:// URL sondern nur ein Link, der mit "https://p9.authz.bosch.com/auth/realms/obc/broker/skid/endpoint" beginnt...
Ich habe die Flow App mit einem Kiox300 und einer LED Remote am E-Bike. -
@ae55
Warum auf Englisch im deutschen Bereich und in einem deutschen Post? Der IP nach sollte Dir Deutsch nicht fremd sein. -
@samson71 Sorry, war es halt noch gewohnt vom Home Assistant-Forum alles auf Englisch zu schreiben :-)...
-
@ae55 also ich würde vermuten der browser blockiert irgendwas wie cookies
-
@tombox Ich habe in den Einstellungen von Chrome Drittanbieter-Cookies auf "immer erlaubt" gesetzt, dies hat das Problem nicht gelöst...
Wie könnte ich es lösen? -
@ae55
Gerade davon und deswegen heben wir bzw. dieses Forum sich (bewusst) ab -
@ae55 cache leeren oder incognitio Fenster
-
@tombox Danke, nachdem ich einmal mit "Briwserdaten löschen → gesamte Zeit" alles gelöscht hab, hat es nun auch funktioniert
-
Hallo zusammen,
ich komme bei der Anmeldung auch nicht weiter.
Nach dem Klick auf Singlekey Login komme öffnet sich diese Seite.beziehungsweise diese Seite
Ich würde ungerne meine Browserdaten löschen.
Wie komme ich an die URL?Im Inkgnito Fenster kommt das hier.
Problem gelöst. Der Werbeblocker war aktiv.