Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter Bosch ebik connect / flow

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter Bosch ebik connect / flow

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      schienw last edited by

      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
      nke

      VG
      Schienw

      M bahnuhr 2 Replies Last reply Reply Quote 0
      • M
        McLane @schienw last edited by McLane

        @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

        1 Reply Last reply Reply Quote 0
        • bahnuhr
          bahnuhr Forum Testing Most Active @schienw last edited by

          @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

          S 1 Reply Last reply Reply Quote 0
          • S
            schienw @bahnuhr last edited by

            @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

            bahnuhr 1 Reply Last reply Reply Quote 0
            • bahnuhr
              bahnuhr Forum Testing Most Active @schienw last edited by

              @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.

              S 1 Reply Last reply Reply Quote 0
              • S
                schienw @bahnuhr last edited by

                @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: '&copy; ' + 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!');
                    });
                
                
                
                
                bahnuhr 1 Reply Last reply Reply Quote 0
                • bahnuhr
                  bahnuhr Forum Testing Most Active @schienw last edited by

                  @schienw

                  Super
                  Und wenns funktioniert noch besser.

                  1 Reply Last reply Reply Quote 0
                  • A
                    ae55 last edited by ae55

                    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...
                    34d98a5b-4c2f-4037-911f-9a8b9038c9f9-grafik.png
                    Ich habe die Flow App mit einem Kiox300 und einer LED Remote am E-Bike.

                    Samson71 T 2 Replies Last reply Reply Quote 0
                    • Samson71
                      Samson71 Global Moderator @ae55 last edited by

                      @ae55
                      Warum auf Englisch im deutschen Bereich und in einem deutschen Post? Der IP nach sollte Dir Deutsch nicht fremd sein.

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        ae55 @Samson71 last edited by

                        @samson71 Sorry, war es halt noch gewohnt vom Home Assistant-Forum alles auf Englisch zu schreiben :-)...

                        Samson71 1 Reply Last reply Reply Quote 0
                        • T
                          tombox @ae55 last edited by

                          @ae55 also ich würde vermuten der browser blockiert irgendwas wie cookies

                          A 1 Reply Last reply Reply Quote 0
                          • A
                            ae55 @tombox last edited by

                            @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?

                            T 1 Reply Last reply Reply Quote 0
                            • Samson71
                              Samson71 Global Moderator @ae55 last edited by

                              @ae55
                              Gerade davon und deswegen heben wir bzw. dieses Forum sich (bewusst) ab 😄

                              1 Reply Last reply Reply Quote 1
                              • T
                                tombox @ae55 last edited by

                                @ae55 cache leeren oder incognitio Fenster

                                A 1 Reply Last reply Reply Quote 0
                                • A
                                  ae55 @tombox last edited by

                                  @tombox Danke, nachdem ich einmal mit "Briwserdaten löschen → gesamte Zeit" alles gelöscht hab, hat es nun auch funktioniert 👍🏻

                                  G 1 Reply Last reply Reply Quote 0
                                  • G
                                    Gonzokalle @ae55 last edited by Gonzokalle

                                    Hallo zusammen,

                                    ich komme bei der Anmeldung auch nicht weiter.
                                    Nach dem Klick auf Singlekey Login komme öffnet sich diese Seite.

                                    9568daae-7439-4119-b8e0-fffcf989df35-image.png

                                    beziehungsweise diese Seite

                                    a86eb154-d18f-4844-b7db-297a5858561f-image.png

                                    Ich würde ungerne meine Browserdaten löschen.
                                    Wie komme ich an die URL?

                                    Im Inkgnito Fenster kommt das hier.

                                    3288442f-5a71-4baf-9fe1-906776066495-image.png

                                    Problem gelöst. Der Werbeblocker war aktiv.

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      no6mis last edited by

                                      @mclane said in Test Adapter Bosch ebik connect / flow:

                                      Ein anderes Thema ist die Übermittlung des Akku Stands. Habe mich mal ein wenig informiert.
                                      Dazu ist ein Flow+ Abo von Bosch notwendig, welches knapp 40 Euro im Jahr kostet.
                                      Zudem ist - sofern nicht verbaut - ein ConnectModul notwendig, welches so round about 100 Euro kostet.

                                      Wird mit ConnectModul dann auch der letzte bekannte Standort und der Akku-Stand durch den Adapter ausgelesen? Jemand mit ConnectModul hier, der das mal ausprobieren könnte?

                                      R 1 Reply Last reply Reply Quote 0
                                      • R
                                        ratte-rizzo @no6mis last edited by

                                        @no6mis sagte in Test Adapter Bosch ebik connect / flow:

                                        Wird mit ConnectModul dann auch der letzte bekannte Standort und der Akku-Stand durch den Adapter ausgelesen? Jemand mit ConnectModul hier, der das mal ausprobieren könnte?

                                        Also ich hab sowohl das Connect-Modul verbaut, als auch das Abo... Was muss ich zum Testen tun?

                                        N 1 Reply Last reply Reply Quote 0
                                        • N
                                          no6mis @ratte-rizzo last edited by

                                          @ratte-rizzo said in Test Adapter Bosch ebik connect / flow:

                                          Also ich hab sowohl das Connect-Modul verbaut, als auch das Abo... Was muss ich zum Testen tun?

                                          Mein Verständnis ist, dass mit ConnectModul (und Abo) sowohl SOC als auch die letzte bekannte Position in der Cloud landen müssen, da sie auch ohne Bluetooth Verbindung in der Flow-App angezeigt werden.

                                          Tauchen die Datenpunkte bei dir im Adapter auf?
                                          @tombox falls nicht, was muss @ratte-rizzo tun, um dich bei der Implementierung zu unterstützen?

                                          R 1 Reply Last reply Reply Quote 0
                                          • R
                                            ratte-rizzo @no6mis last edited by

                                            @no6mis sagte in Test Adapter Bosch ebik connect / flow:

                                            Mein Verständnis ist, dass mit ConnectModul (und Abo) sowohl SOC als auch die letzte bekannte Position in der Cloud landen müssen, da sie auch ohne Bluetooth Verbindung in der Flow-App angezeigt werden.

                                            Tauchen die Datenpunkte bei dir im Adapter auf?

                                            Ich habe lediglich

                                            bosch-ebike.0.trips.01.attributes.totalBatteryConsumptionPercentage
                                            

                                            der aber leer ist. Sonst weist nichts auf Batterie oder Ort hin.

                                            N 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            911
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            32
                                            174
                                            21865
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo