Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter bshb (Bosch Smart Home) v0.0.x

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter bshb (Bosch Smart Home) v0.0.x

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

      @rosi8818 sagte in Test Adapter bshb (Bosch Smart Home) v0.0.x:

      Fragen zu einer neue Heizung von Junkers/Bosch

      Ich bin mir nicht ganz sicher, ob du hier richtig bist bzw. den Adapter richtig zuordnest.
      Der Adapter ist die Schnittstelle zum Controller von Bosch, welcher sonst über die App angesteuert wird.
      Ich gehe davon aus, dass deine neue Heizung etwas völlig anderes an Controller/Steuereinheit nutzt, als der verlinkte Controller von mir.

      R 1 Reply Last reply Reply Quote 0
      • R
        Rosi8818 @BigTom91 last edited by

        @bigtom91 , das ist auch genau mein Problem das ich das nicht zuordnen kann. So wie ich es verstanden habe ist die App EasyControl die App die meine Heizung steuern soll. Dieses EasyControl nutzt wohl ein Bussystem zur Anlage. Da steige ich überhaupt nicht durch. Meine Hoffnung was das hier jemand unterwegs ist der auch die Konstellation nutzt bzw. etwas dazu sagen ann

        Q 1 Reply Last reply Reply Quote 0
        • Q
          qara2003 @holomekc last edited by

          @holomekc

          Hey Christopher,

          bei mir sind die Massenfehler nach dem Update komplett verschwunden.

          Vielen Dank für deine schnelle Hilfe.

          VG
          Olli

          H 1 Reply Last reply Reply Quote 0
          • Q
            qara2003 @Rosi8818 last edited by

            @rosi8818

            Hallo, wenn du eine Junkers Therme Smart machen willst brauchst du einen Bosch Smart Home Controller um die Bosch Perepherie anmelden zu können. Dann brauchst du ein MBLan2 um die Therme Netzwerkfähig zu machen. (Achtung einige moderne Thermen haben schon eine LAN Schnittstelle integriert oder können mit einem MBLan1 erweitert werden), und zuletzt brauchst du ein Raumthermostat CR400 da alle anderen nicht mit der SmartHome Perepherie funktionieren. Als APP kannst du die Bosch Easy Remote nutzen um Informationen abzurufen und Einstellungen am Raumthermostat vorzunehmen. Mit der Bosch Smart Home APP kannst du dann auch die Perepherie wie z.B. Heizkörperthermostate oder Fensterkontakte zu steuern. Und zum Schluß brauchst du diese Konstelation um überhaupt die Datenpunkte der Anlage und den Perepheriegeräten in den bshb Adapter zu übernehmen um die Datenpunkte im IoBroker zu nutzen.

            Den CT200 EasyControl kannst du als Alternative nutzen, dann aber ohne den Bosch Smart Home Controller und ohne eine Anbindung zum IoBroker. Der funktioniert nicht am Bosch Smart Home Controller. Und kann auch keine Fensterkontakte verwalten. AYlso einfach nur ein APP gesteuertes Raumthermostat

            Ich hoffe dir mit der Ausführung weitergeholfen zu haben. Aber Sicherheitshalber rufst du noch mal die Bosch Hotline 00800 84376278 an, die geben excellente Auskunft zu dem Thema.

            VG
            Olli

            R 1 Reply Last reply Reply Quote 0
            • H
              holomekc @qara2003 last edited by

              @qara2003
              Super freut mich das es jetzt besser funktioniert. Sorry das ich so oft nachbessern musste. Muss vielleicht doch über ein paar mehr Tests nachdenken 😅

              Q 1 Reply Last reply Reply Quote 0
              • Q
                qara2003 @holomekc last edited by qara2003

                @holomekc
                Macht doch nichts. Hauptsache du konntest dich aufraffen und das Ergebnis ist doch Klasse.

                Ich würde mich freuen wenn ich noch einen Datenpunkt bekäme. Ich habe ein Raumthermostat CR400 davon könnte ich die aktuelle Temperatur gebrauchen. Siehe Foto.

                image0.jpeg

                Müsste hier rein:

                Bildschirmfoto 2022-04-03 um 14.08.44.png

                H 1 Reply Last reply Reply Quote 0
                • H
                  holomekc @qara2003 last edited by

                  @qara2003
                  Normalerweise zeigt der Adapter alle Werte an. Bosch hat eine Schnittstelle die nahezu alle Informationen bereitstellt. Eigentlich kann ich mir nicht vorstellen, dass es für diesen einen Wert eine andere Schnittstelle gibt.
                  Was du probieren kannst ist auf dem updates State in ioBroker lauschen. Leider ist das jetzt kein Wert, den du in der Bosch app ändern kannst, dann könntest du sofort sehen, ob der Controller Daten dazu liefert.

                  Ansonsten mal in der Bosch Smart Home App schauen. Du nutzt 2 verschiedene und diese sind verlinkt oder? Wenn in der genannten App der Wert auftaucht, dann sollte es möglich sein.

                  1 Reply Last reply Reply Quote 0
                  • R
                    Rosi8818 @qara2003 last edited by

                    @qara2003 Hallo Olli, danke für die Ausführliche Information. Der Monteur hat ein mb Lan "x" bestellt, das soll laut Bosch/Junkers an meine neue Heizung gehen. Ein CW/CR400 habe ich auch installiert bekommen in der Heizung.

                    Wenn ich das richtig verstanden habe,

                    • müsste ich nur noch einen "Bosch Smart Home Controller" besorgen.
                    • dann geht auch die EasyRemote App oder schon mit mb Lan?

                    Kann ich den selber an das MB Lan anschalten oder müsste das der Monteur machen (traue ich mir zu wenn ich weiß wie es grob geht).

                    Die Rufnummer habe ich mir notiert für weiteres 🙂

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      MikeRow @Rosi8818 last edited by MikeRow

                      @holomekc Hallo, ich habe eine funktionierende Instanz des Adapter auf meinem Raspi laufen. Ich will jetzt von Raspi auf einen NUC mit Debian umziehen. Ich mache das mit Backup und Restore des Backitup Adapters. Der BSH Adapter lässt sich nach dem Restore nicht mehr starten. Ich sehe dann immer diese Fehler.


                      host.iobroker
                      2022-04-23 20:10:59.959 info Restart adapter system.adapter.bshb.3 because enabled
                      host.iobroker
                      2022-04-23 20:10:59.959 info instance system.adapter.bshb.3 terminated with code NaN ()
                      host.iobroker
                      2022-04-23 20:10:59.958 warn instance system.adapter.bshb.3 terminated due to SIGSEGV

                      bshb.3
                      2022-04-23 20:10:59.877 info Check if client with identifier: ioBroker.bshb_b41a1371-163f-452d-849f-6b0e8488089d is already paired.

                      bshb.3
                      2022-04-23 20:10:59.859 info private key seems to be actual content. Use value from state.

                      bshb.3
                      2022-04-23 20:10:59.859 info certificate seems to be actual content. Use value from state.

                      bshb.3
                      2022-04-23 20:10:59.857 info Check if certificate is file reference or actual content

                      bshb.3
                      2022-04-23 20:10:59.857 info Client certificate found in system.certificates

                      bshb.3
                      2022-04-23 20:10:59.787 info starting. Version 0.1.20 in /opt/iobroker/node_modules/iobroker.bshb, node: v12.22.5, js-controller: 4.0.21
                      host.iobroker
                      2022-04-23 20:10:56.840 info instance system.adapter.bshb.3 started with pid 3747
                      host.iobroker
                      2022-04-23 20:10:26.680 info Restart adapter system.adapter.bshb.3 because enabled
                      host.iobroker
                      2022-04-23 20:10:26.679 info instance system.adapter.bshb.3 terminated with code NaN ()
                      host.iobroker
                      2022-04-23 20:10:26.678 warn instance system.adapter.bshb.3 terminated due to SIGSEGV

                      Lege ich eine neue Instanz an läuft die bis zum nächsten restart des Adapters.

                      Hast du dazu eine Idee was ich überprüfen könnte?
                      Adapter Neuinstallation habe ich auch schon ohne Erfolg getestet.

                      Danke und Gruß Mike

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        MikeRow @MikeRow last edited by MikeRow

                        Witzig, Ich habe gerade bei der Instanz das Logging erhöht. Der Fehler tritt nur bei Log Stufe Info auf. Bei jeder anderen Stufe ist der Fehler weg.

                        H 1 Reply Last reply Reply Quote 0
                        • H
                          holomekc @MikeRow last edited by

                          @mikerow
                          Hi Mike,

                          soweit ich weiß werden die Adapter selber nicht im Backup gespeichert. Diese werden nachträglich automatisch neu installiert. Teil des Backups sind die Objekte. Normalerweise hätte ich dir jetzt geschrieben, dass du bitte einmal den Adapter mit höherem Log Level ausführst. Aber du hattest ja geschrieben, dass dies nur bei info auftritt.

                          Ich schaue mal, ob ich am Wochenende die Zeit finde das nachzustellen. So mit den log Meldungen komme ich nicht wirklich weiter 😉

                          Ich hoffe du kannst mit einem anderen Log Level erst einmal arbeiten.

                          Viele Grüße
                          Christopher

                          M Great SUN 2 Replies Last reply Reply Quote 0
                          • M
                            MikeRow @holomekc last edited by

                            @holomekc

                            Hi Christopher, der Adapter läuft in allen non Info Loglevel Stufen stabil. Für mich ist es so ok so.

                            1 Reply Last reply Reply Quote 0
                            • Great SUN
                              Great SUN @holomekc last edited by Great SUN

                              @holomekc Noch eine schnelle (dumme) Frage...
                              Der Adapter setzt immer den Bosch Smart Home Controller voraus, richtig?
                              Kann ich durch dieses Setup dann auch (endlich) alle am Gerät verfügbaren Programme nutzen, oder ist das dann trotzdem, wie in App/HomeConnect limitiert?

                              H 1 Reply Last reply Reply Quote 0
                              • H
                                holomekc @Great SUN last edited by

                                @great-sun
                                Sorry für die extrem späte Antwort. Ja der Adapter funktioniert mit dem Bosch Smart Home Controller. Die Kommunikation ist nur lokal. Nichts über Internet. Du kannst in der Regel fast alle Funktionen der App auch im Adapter nutzen. Ich kenne HomeConnect nicht gut genug, um das zu beantworten.

                                Was bspw. nicht geht ist einen nicht Bosch Bewegungsmelder zu nehmen und dann mit diesem bspw. die Bosch Alarmanlage auslösen. Da ist man etwas beschränkter. Man kann aber falls die normalen Funktionen nicht reichen eine "fake" Hue-Brige ins Bosch System einbinden und damit ein paar Restriktionen umgehen.

                                H 1 Reply Last reply Reply Quote 0
                                • H
                                  holomekc @holomekc last edited by holomekc

                                  Btw. Die Version 0.2.1 ist in GitHub und npm verfügbar. Für Feedback wäre ich seht dankbar.
                                  Was ist neu:

                                  • Update von libraries
                                  • Mehr Dienste: Gesunde Raumluft, Bewegungslicht, Wasseralarm
                                  • Und noch mehr Dinge die optisch nicht sichtbar sind aber für neuere Versionen von ioBroker dann nötig waren.

                                  Vielen Dank für die Hilfe und noch ein schönes Wochenende.
                                  Christopher

                                  1 Reply Last reply Reply Quote 2
                                  • B
                                    bfit last edited by

                                    Ein toller Adapter, vielen vielen Dank dafür!

                                    Hat mir i.V.m. den Raumklimathermostaten 230V und Grafana die Visualisierungsmöglichkeit und Datenhistorie geschaffen, die dem System selber kurioserweise fehlen…

                                    Gibt es die Möglichkeit, auch aus dem Rauchwarnmelder II einige Daten zu erhalten? Ich habe leider keine Ahnung, ob und welche Infos das Gerät überhaupt erfasst und an den Smart Home Controller übermittelt (die App selbst ist ja sehr sparsam, aber das ist bei den Raumklimathermostaten ja auch nicht anders). Batteriezustand, Verschmtzungsgrad oder einfach eine Info über die letzte Alarmierung wären im ioBroker schon auch interessant. Oder gar die Möglichkeit, eine akkustische Alarmierung anzutriggern.

                                    H 1 Reply Last reply Reply Quote 0
                                    • H
                                      holomekc @bfit last edited by

                                      @benefit
                                      Vielen Dank für die netten Worte.

                                      Bezüglich Batterie wird dir das weiterhelfen:
                                      https://github.com/holomekc/ioBroker.bshb/wiki/Value-you-may-not-see-at-first

                                      Ich habe bisher den Ansatz gefahren mehr oder minder die Werte vom Controller 1:1 auszugeben. Vorteil: weniger Aufwand, neue Werte direkt sichtbar. Nachteil: nicht immer transparent für euch. Problem ist das ich auch nicht weiß, welche Werte es alles gibt. Nicht alles ist dokumentiert. Daher dachte ich lieber so.

                                      Beim Rauchmelder muss ich leider passen. Ich habe dieses Gerät leider nicht. Normalerweise sollte das gehen was auch in der App geht. Falls nicht einfach melden und ich kann mal schauen warum das so ist.

                                      Alarm selber triggern geht leider nicht. Die Api erlaubt das nicht. Verrücktere Dinge kann man tun, wenn man ein simuliertes Hue Gerät mit dem Controller verbindet. Aber auch hier erlaubt Bosch nicht bspw. Einen Hue Bewegungsmelder für den Alarm zu verwenden.

                                      B 1 Reply Last reply Reply Quote 1
                                      • B
                                        bfit @holomekc last edited by bfit

                                        @holomekc
                                        Habe mir inzwischen einen Rauchwarnmelder II zugelegt – folgende Infos spuckt der Adapter aus:

                                        Bildschirmfoto 2022-10-21 um 20.29.38.png
                                        Bildschirmfoto 2022-10-21 um 20.26.18.png

                                        Bin gespannt, das BatteryLevel irgendwann mal ausspuckt. Wird dort irgendwann ein neuer "value" auftauchen (auf den man heute schon mal in einem Javascript einen Trigger setzen könnte) oder werden in deinem Link beschriebenen Werte in den "faults" State direkt reingeschrieben?

                                        H 1 Reply Last reply Reply Quote 0
                                        • H
                                          holomekc @bfit last edited by

                                          @benefit
                                          Hi. Klingt gut ich hoffe du kommst an alle Werte die du brauchst. Die Fehler werden in den faults landen. Wie bei GitHub zu sehen nur ohne entries dazwischen. Also bspw. faults[index].type === „LOW_BATTERY“ könnte auftauchen. Ich wollte nicht das Werte einfach so auftauchen, aber ich weiß auch nicht wo überall Fehler auftauchen können. Daher so ein „Rundumschlag“.

                                          Im GitHub wiki bei Yahka -> WindowContact gibt es ein Beispiel wie man das verwenden kann. Ansonsten musst du mal schauen wie es aussieht wenn die Battery dann mal leer wird. Ich habe es gerade bei einem Thermostat im Schlafzimmer. Da ist es noch so wie auf GitHub beschrieben.

                                          Das ist so eine Stelle wo ich es theoretisch viel einfacher für euch machen könnte. Aber ich habe keine Infos darüber welche Werte wo wie auftauchen können. War jedoch schon am überlegen einfach beides anzubieten. Wäre aber ein bissle Aufwand und sicher nicht vollständig.

                                          1 Reply Last reply Reply Quote 0
                                          • B
                                            bfit last edited by bfit

                                            Vielleicht kann es jemand brauchen: Hier ein kleines Javascript, mit dem man die Solltemperaturen der Raumthermostate (Achtung: Nur getestet mit den Raumthermostaten Fußbodenheizung 230V Generation I) in eigene Objekte schreiben kann. Damit lässt sich z.B. neben dem Ist-Wert auch der Soll-Wert in ein Diagramm zeichnen.

                                            schedule('*/5 * * * *', roomSetpoints);
                                            
                                            function roomSetpoints() {
                                            
                                                // Define rooms with their specific data sources and targets
                                                var home = {
                                                    "rooms": [
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_1.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.arbeitszimmer"
                                                        },
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_2.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.bad1"
                                                        },
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_3.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.bad2"
                                                        },
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_4.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.kind1"
                                                        },
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_5.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.kind2"
                                                        },
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_6.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.schlafzimmer"
                                                        },
                                                        {
                                                            "source": "bshb.0.roomClimateControl_hz_7.RoomClimateControl",
                                                            "target": "0_userdata.0.haus.wohnzimmer"
                                                        },
                                                    ]
                                                };
                                            
                                                // Weekdays as lookup
                                                const weekday = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
                                                const d = new Date();
                                                let day = weekday[d.getDay()].toUpperCase();
                                                
                                                // Minutes of current day for matching last valid switchPoint
                                                const now = new Date();
                                                let currentMinutesOfDay = now.getHours()*60 + now.getMinutes();
                                            
                                                // Loop through all rooms
                                                home.rooms.forEach((room) =>{
                                            
                                                    let t_setpoint = null;
                                                
                                                    // Get all values from source
                                                    var schedule =        getState(room.source + ".schedule").val;
                                                    var t_comfort =       getState(room.source + ".setpointTemperatureForLevelComfort").val;
                                                    var t_eco =           getState(room.source + ".setpointTemperatureForLevelEco").val;
                                                    var t_manual =        getState(room.source + ".setpointTemperature").val;
                                                    var controlMode =     getState(room.source + ".roomControlMode").val;
                                                    var operationMode =   getState(room.source + ".operationMode").val;
                                            
                                                    // If controlMode is not HEATING or COOLING, set t_setpoint = null
                                                    if (controlMode == "OFF") {
                                                        t_setpoint = null;
                                                    }
                                                    else {
                                            
                                                        // If operationMode is not AUTOMATIC, directly use manual setpoint without looping through schedule
                                                        if (operationMode == "MANUAL") {
                                                            t_setpoint = t_manual;
                                                        }
                                                        else {
                                            
                                                            // Otherwise, loop through all daily profiles in schedule-JSON
                                                            schedule.profiles.forEach((item) => {
                                                                if (item.day == day) {
                                                                    
                                                                    // Loop through all switchPoints of current day until last valid switchPoint is found
                                                                    item.switchPoints.forEach((point) => {
                                                                        if (currentMinutesOfDay >= point.startTimeMinutes) {
                                                                            if (point.value.temperatureLevel == "ECO") {
                                                                                t_setpoint = t_eco;
                                                                            }
                                                                            if (point.value.temperatureLevel == "COMFORT") {
                                                                                t_setpoint = t_comfort;
                                                                            }
                                                                            if (t_setpoint != t_manual) {
                                                                                t_setpoint = t_manual;
                                                                            }
                                                                        }
                                                                    });
                                                                }
                                                            });
                                            
                                                        }
                                                    
                                                    }
                                            
                                                    // Write setpoint temperature to target
                                                    let StateName = room.target + ".temperatur_sollwert";
                                                    if(!existsState(StateName)) {
                                                        createState(StateName, t_setpoint);
                                                    };
                                                    setState(StateName, t_setpoint);
                                            
                                                });
                                                
                                            }
                                            

                                            In der Variable home.rooms müssen nur die RoomClimateControl-Pfade der gewünschen Thermostate/Räume im bshb-Adapter angegeben werden (= source). Außerdem die gewünschten Zielordner zu den Räumen/Thermostaten, in denen dann ein Objekt "temperatur_sollwert" erzeugt und fünfminütlich aktualisiert wird (= target).

                                            Ob das Script mit anderen Bosch Smart Home Heizkörper- und Fußbodenheizungsthermostaten auch klappt, weiß ich leider nicht.

                                            Verbesserungen werden gerne genommen!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            747
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            bosch
                                            85
                                            437
                                            80985
                                            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