Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Beca Thermostate einbinden (Firmware-Mod)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Beca Thermostate einbinden (Firmware-Mod)

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

      Ich glaube ich hab es selbst gefunden 😀

      Also die ganzen Smarthome Devices dürfen bei mir nicht ins Internet.
      Weil einige sich aber keinen anderen Zeitserver unterjubeln lassen (z.B. per DHCP) ist der Zugriff auf NTP erlaubt.

      Ich hatte jetzt mal testweise das Thermostat mit ins Internet gelassen und schon hab ich auch eine Zeitzone.
      Das Log sagt mir eine NTP Anfrage an 217.13.65.177 (das klappte ja auch vorher schon) und eine Anfrage auf 52.18.156.77 Port 80.

      Nanu, was ist denn das?
      Hab dann mal im Sourcecode gesucht und siehe da in KaClock.cpp:

      String request = "http://worldtimeapi.org/api/ip";
      

      Die liefern offensichtlich zu eigenen IP eine Zeitzone.

      Also Firewallregel angepasst, das Thermostat darf auf http://worldtimeapi.org:80 zugreifen und gut ist.

      1 Reply Last reply Reply Quote 0
      • H
        Himbi777 last edited by

        Hallo zusammen
        Ich habe heute einen BHT002GCLW mit der BecaThermostat0.95 Firmware von Klaus Ahrensberg geflasht.
        Das Gerät ist im Netz und sendet fleißig MQTT-Strings , allerdings nimmt das Thermostat nicht meine gesendeten Temperaturen an.
        Hat jemand den genauen Aufbau des Publish-Strings?

        1 Reply Last reply Reply Quote 0
        • B
          bishop @Wal last edited by

          @Wal

          Firmware läuft prima bei mir, danke dafür.
          Hätte da noch eine Frage wie bekomme ich die ganzen Datenpunkte hin wie es bei dir im Bild ist?

          Wal 1 Reply Last reply Reply Quote 0
          • Wal
            Wal Developer @bishop last edited by Wal

            @bishop ,
            normalerweise werden die automatisch erzeugt. Ich muß aber leider gestehen, das ich auf die neue Firmware von Klaus Ahrenberg umgeswitcht bin. Die sendet nur noch ein Json-String über MQTT, den ich mit einem Skript danach auswerte, da ich den Hardwaremod für die Abfrage des Relais gemacht habe.

            createState("javascript.0.Wohnzimmer.Isttemperatur", {type: "number"});
            createState("javascript.0.Wohnzimmer.Solltemperatur", {type: "number"});
            createState("javascript.0.Wohnzimmer.Heizen", {type: "boolean"});
            
            on({id: "mqtt.0.beca.thermostatbeca_6036635.things.thermostat.properties", change: "ne"}, function (obj) {
                var value = JSON.parse(obj.state.val);
                setState("javascript.0.Wohnzimmer.Isttemperatur", {val: value.temperature, ack: true});
                setState("javascript.0.Wohnzimmer.Solltemperatur", {val: value.targetTemperature, ack: true});
                if (value.state=="off") {
                    setState("javascript.0.Wohnzimmer.Heizen", {val: false, ack: true});
                    setState("sonoff.0.Sonoff_Heizung.POWER", {val: false, ack: true})
                } else {
                   setState("javascript.0.Wohnzimmer.Heizen", {val: true, ack: true})
                   setState("sonoff.0.Sonoff_Heizung.POWER", {val: true, ack: true});
                };
            
                console.log(value.temperature); 
                console.log(value.targetTemperature);
                console.log(value.state); 
            });
            
            1 Reply Last reply Reply Quote 0
            • B
              bishop last edited by bishop

              @Wal

              danke
              ich meinte eigentlich so wo in deinem Bild am Anfang.
              Habe das mal versucht:
              mqtt topic erstellen.jpg

              wieso bekomme ich so keine änderungen!?!

              Habe mal dein Script auf mich angepasst.

              createState("mqtt.0.Fussbodenheizung_Bad.things.TemperaturRaum", {type: "number"});
              createState("mqtt.0.Fussbodenheizung_Bad.things.TemperaturSoll", {type: "number"});
              createState("mqtt.0.Fussbodenheizung_Bad.things.TemperaturBoden", {type: "number"});
              createState("mqtt.0.Fussbodenheizung_Bad.things.heizen", {type: "boolean"});
              
              on({id: "mqtt.0.Fussbodenheizung_Bad.things.thermostat.properties", change: "ne"}, function (obj) {
                  var value = JSON.parse(obj.state.val);
                  setState("mqtt.0.Fussbodenheizung_Bad.things.TemperaturRaum", {val: value.temperature, ack: true});
                  setState("mqtt.0.Fussbodenheizung_Bad.things.TemperaturSoll", {val: value.targetTemperature, ack: true});
                  setState("mqtt.0.Fussbodenheizung_Bad.things.TemperaturBoden", {val: value.floorTemperature, ack: true});
                  if (value.state=="off") {
                      setState("mqtt.0.Fussbodenheizung_Bad.things.heizen", {val: false, ack: true})
                  } else if (value.state=="heating") {
                     setState("mqtt.0.Fussbodenheizung_Bad.things.heizen", {val: true, ack: true});
                  };
              
                  //console.log(value.temperature); 
                  //console.log(value.targetTemperature);
                  //console.log(value.state); 
              });
              

              jetzt wäre es noch schön wenn ich die TemperaturSoll ändere, er es auch sendet!

              was ich auch nicht ganz verstehe, warum werden die Datenpunke mit "createState" nicht automatisch angelegt?

              Wal 1 Reply Last reply Reply Quote 0
              • Wal
                Wal Developer @bishop last edited by Wal

                @bishop ,
                für Solltemperatur must du dir ein Object "targetTemperature" erstellen, siehe Bild.
                beca.png

                B 1 Reply Last reply Reply Quote 0
                • B
                  bishop @Wal last edited by bishop

                  @Wal
                  kannst du mal auf den stift gehen und mir den Inhalt zeigen?

                  so wie ich das oben im Bild gemacht habe -> topic oder?

                  targettemp.jpg

                  ändern kann ich den wert, wenn ich einen eintrage wird er auch gesendet!
                  Er wird aber nicht aktualisiert wenn ich am Becathemostat ein wert eingebe!?!
                  Kann es sein das er den Topic nur sendet aber nicht empfängt?

                  Wal 1 Reply Last reply Reply Quote 0
                  • Wal
                    Wal Developer @bishop last edited by

                    @bishop ,
                    du mußt das Objekt unter properties erstellen siehe mein Bild.

                    {
                      "_id": "mqtt.0.beca.thermostatbeca_6036635.things.thermostat.properties.targetTemperature",
                      "type": "state",
                      "common": {
                        "name": "targetTemperature",
                        "role": "",
                        "type": "number",
                        "desc": "Manuell erzeugt",
                        "unit": "°C",
                        "min": 15,
                        "max": 30,
                        "def": 20,
                        "read": false,
                        "write": true
                      },
                      "native": {},
                      "from": "system.adapter.admin.0",
                      "user": "system.user.admin",
                      "ts": 1583050297419,
                      "acl": {
                        "object": 1636,
                        "owner": "system.user.admin",
                        "ownerGroup": "system.group.administrator",
                        "state": 1636
                      }
                    }
                    
                    1 Reply Last reply Reply Quote 0
                    • Wal
                      Wal Developer last edited by

                      Ja gesendet wird nur der properties-string, deswegen das Auswerteskript.

                      B 1 Reply Last reply Reply Quote 0
                      • B
                        bishop @Wal last edited by

                        @Wal
                        habe gesehen das es neue Updates gibt! 🙂

                        läuft soweit ich bekomme nun in stat im MQTT Adapter alles gesendet ohne vorher anlegen zu müssen.

                        Meine Frage ist jetzt, wie bekomme ich die cmnd angezeigt damit ich auch aus dem Mqtt Adapter steuern kann?
                        Die werden bei mir nicht angelegt.

                        Wal 1 Reply Last reply Reply Quote 0
                        • Wal
                          Wal Developer @bishop last edited by

                          @bishop
                          aktuell ist die 1.09 von fashberg, da habe ich aber noch einen pullrequest am laufen, da er die cmnd nicht erstellt wie du schon sagtest.
                          du kannst das Objekt selber erstellen.

                          cmnd/things/thermostat/properties/ecoMode
                          cmnd/things/thermostat/properties/mode
                          cmnd/things/thermostat/properties/locked
                          cmnd/things/thermostat/properties/targetTemperature

                          ecoMode u. locked als Logikwert
                          mode als Zeichenkette
                          targetTemperature als Zahl

                          mode steht für "off,heat,auto" heisst soviel wie "aus,hand,Wochenschaltung"

                          B 1 Reply Last reply Reply Quote 0
                          • Wal
                            Wal Developer last edited by

                            Mit pullrequest sieht es dann so aus:
                            term.png

                            1 Reply Last reply Reply Quote 0
                            • R
                              RandyAndy last edited by

                              Hallo würde mich mal interessieren ob die auch mit dem Broadlink Adapter zusammen spielen.
                              Würde ich fast wetten. Könnte das jemand mal antesten ?

                              1 Reply Last reply Reply Quote 0
                              • B
                                bishop @Wal last edited by bishop

                                @Wal
                                Vielen Dank werde ich testen.

                                P.s. dein Boden hat 104,5 grad 🙂

                                edit.
                                Funktioniert das ich die Werte ändern kann, aber im tele/log kommt "warning: Not sending state via MQTT Fussbodenheizung_Bad/stat/things/thermostat/properties, deviceStateComplete=false"
                                in den stats wird dann auch nichts geändert.

                                Wal 1 Reply Last reply Reply Quote 0
                                • L
                                  leonracer last edited by

                                  Guten Morgen 🙂

                                  Ich habe nun endlich erfolgreich per Tuya-Convert ein meiner Thermostate geflasht. Jedoch habe ich nun Tasmota 8.20 drauf. Wie bekomme ich nun die FW für das Thermostat installiert? Die Version 1.0.3 von Klaus Ahrenberg sitzt wohl auf Tasmota 7.x, smit geht kein Downgrade. Habt ihr ne Firmware, die auf Tasmota 8.x aufgebaut ist?

                                  Im Moment habe ich aus einem funktionierenden Tuya Thermostat einen Tasmota Briefbeschwerer gemacht, aber wenigstens ist das 1. Thermostat schon mal den China-Cloud-Zwang los. Den Rest schaffe ich bestimmt noch mit Euch zusammen.

                                  Über diesen Weg habe ich geflasht: https://ownsmarthome.de/2019/12/07/tasmota-mit-tuya-convert-over-the-air-flashen/

                                  Hat erst mal prima geklappt. Nun fangen die Probleme an 😞

                                  Danke schon mal im Voraus.

                                  B Wal 2 Replies Last reply Reply Quote 0
                                  • B
                                    bishop @leonracer last edited by

                                    @leonracer
                                    kannst du nicht die bin auswählen bei tasmota upgrade und flashen? Wenn nicht versuch mal eine tasmota minimal zu flashen und dann die bin!?!

                                    1 Reply Last reply Reply Quote 0
                                    • Wal
                                      Wal Developer @leonracer last edited by Wal

                                      @leonracer
                                      du musst die Tasmota 7.2 minimal flashen, danach die 1.09 von Fashberg. Firmware 1.09 Fashberg

                                      edit: danach Pfeil nach unten für 7sec. um das Thermostat in den AP-Mode zu versetzen ... das Übliche wie bei Tasmota.

                                      1 Reply Last reply Reply Quote 0
                                      • Wal
                                        Wal Developer last edited by Wal

                                        edit: Tip vom mir, erstellt euch ein alias.thermostat damit ihr nicht bei jeder Firmwareänderung eure Skripte neu ändern müsst.
                                        Es müssen dann nur noch die Links von den Objekten geändert werden.
                                        targetTemperatur -> alias.0.Wohnzimmer.Heizung.Sollwert

                                        {
                                          "from": "system.adapter.admin.0",
                                          "user": "system.user.admin",
                                          "ts": 1584820633665,
                                          "common": {
                                            "name": "Sollwert",
                                            "unit": "°C",
                                            "role": "value.temperature",
                                            "type": "number",
                                            "alias": {
                                              "id": "mqtt.0.beca.Wohnzimmerthermostat.cmnd.things.thermostat.properties.targetTemperature",
                                              "write": "val",
                                              "read": "val"
                                            },
                                            "custom": {
                                              "history.0": {
                                                "enabled": true,
                                                "changesOnly": true,
                                                "debounce": "1000",
                                                "maxLength": "960",
                                                "retention": "31536000",
                                                "changesRelogInterval": "60",
                                                "changesMinDelta": 0,
                                                "aliasId": ""
                                              },
                                              "iqontrol.0": {
                                                "enabled": true,
                                                "readonly": false,
                                                "invert": false,
                                                "confirm": false,
                                                "pincode": "",
                                                "unit": "°C",
                                                "unit_zero": "°C",
                                                "unit_one": "°C",
                                                "min": 15,
                                                "max": "30",
                                                "step": 0.5,
                                                "type": "number",
                                                "role": "",
                                                "targetValueId": ""
                                              }
                                            }
                                          },
                                          "native": {},
                                          "acl": {
                                            "object": 1636,
                                            "owner": "system.user.admin",
                                            "ownerGroup": "system.group.administrator",
                                            "state": 1636
                                          },
                                          "_id": "alias.0.Wohnzimmer.Heizung.Sollwert",
                                          "type": "state"
                                        }
                                        

                                        alias.png

                                        1 Reply Last reply Reply Quote 0
                                        • Wal
                                          Wal Developer @bishop last edited by Wal

                                          @bishop sagte in Beca Thermostate einbinden (Firmware-Mod):

                                          @Wal
                                          Vielen Dank werde ich testen.

                                          P.s. dein Boden hat 104,5 grad 🙂

                                          edit.
                                          Funktioniert das ich die Werte ändern kann, aber im tele/log kommt "warning: Not sending state via MQTT Fussbodenheizung_Bad/stat/things/thermostat/properties, deviceStateComplete=false"
                                          in den stats wird dann auch nichts geändert.

                                          Ja, die 104,5 Grad 🙂 ist kein Sensor dran, waren irgendwann mal da nach einem Update und gingen nicht wieder.

                                          Versuche mal die Firmware von mir, da werden die cmnd erstellt. Vorher die Objekte vom Thermostat aus MQTT.0 löschen und am Besten den Adapter neu starten.

                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            bishop @Wal last edited by bishop

                                            @Wal
                                            hab die neue Firmware mal drauf gemacht aber glaube da stimmt was mit den update intervall nicht, die Werte leuchten dauer Grün ich kann auch nichts ändern.

                                            In cmnd fehlt noch deviceOn!
                                            Im Tele Log kommt:
                                            warning: Not sending state via MQTT Fussbodenheizung_Bad/stat/things/thermostat/properties, deviceStateComplete=false

                                            Wal 3 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            804
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            mqtt raumthermostat tuyamqtt
                                            18
                                            135
                                            18307
                                            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