Ankündigung

Einklappen
Keine Ankündigung bisher.

OpenKNX-RaumController release - oder: Aus dem Sensormodul wird ein RaumController

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Zitat von baba2k Beitrag anzeigen
    sendet bei Neustart Sperren=1 aber der PM Kanal ist trotzdem nicht gesperrt
    Ok, also ist erklärlich, das kein ReadRequest gesendet wird, wenn ich Dich richtig verstanden habe.
    Aber der von Dir beobachtete Fehler wäre, das trotz Sperre nicht gesperrt wird. Wenn das so richtig ist, wäre eine Info über Version, Konfiguration und kurzer gefilterter Gruppenmonitorauszug gut. Ich bin jetzt erstmal im Urlaub und kann nichts nachstellen, aber mumpf schaut sich das dann bestimmt mal an.
    Gruß Bernhard

    Kommentar


      Wichtig: Hast Du es probiert, den Logikkanal NACH dem Präsenzkanal laufen zu lassen? Also Startverzōgerung Logik 2 Sekunden, Präsenz 1 Sekunde?

      Gruß, Waldemar
      OpenKNX www.openknx.de

      Kommentar


        Hallo,
        ich habe von smart-mf das Sensormodul im Einsatz (Raumcontroller v5.5.1) und ein Problem das ich nicht ganz zuordnen kann. Das erste Modul läuft mit einem BME680 und liefert plausible Werte wenn auch gute 2 K mehr Temperatur als im direkten Vergleich mit einem PT1000, DS18B20 und SHT30 (abgesetzter Sensor über Kabel waterproof).​

        Das zweite Modul sollte mit einem BME280 betrieben werden, doch die Temp Abweichung beträgt hier gute 5 K. Na gut, dachte ich mir, nimmst du halt einen SHT31, der soll ja nicht so extrem driften.

        Die Ernüchterung kam jedoch schnell, als auch dieser gute 5 K über meinen Referenzsensoren war. Ich habe dann einen weiteren SHT31 aus einer anderen Bestellung ausprobiert - ihr könnt es euch denken - wieder 5 K drüber.

        So langsam kam mir das komisch vor und ich wollte einfach nicht glauben das es immer am Sensor liegt.

        Kurzerhand habe ich mir einen ESP32 geschnappt und mit ESPHome mal schnell die I2C Anbindung mit den bereitgestellten SHT3X und BME280 Lib ausgelesen.
        Bei der Definition bin ich dann über folgende Option gestolpert:

        "Heater Enabled - Turn on/off heater at boot. This may help provide more accurate readings in condensing conditions, but can also increase temperature readings and decrease humidity readings as a side effect. Defaults to false." -> Habe ich auch auf 'false' belassen.​

        Ich war dann doch sehr erstaunt das sowohl der BME280 als auch beide SHT31 rund 5 K weniger Temperatur anzeigen.

        Bevor jemand fragt: Die Sensoren sind alle im selben Raum und so angeordnet, dass es keine gegenseitige Beeinflussung gibt.

        Wird der Sensor in der KNX Appl. dauerhaft beheizt? Wo kommt dieser Offset her?

        Grüße
        Markus

        Kommentar


          Ich frage mal vorher: Einen Temperaturoffset hast du nicht eingestellt?

          Laut Datenblatt wird die Heizung beim Neustart deaktiviert (SHT31):
          grafik.png​
          Im Code gibt es zwar eine Funktion -> Link https://github.com/OpenKNX/OGM-Senso...SHT3x.cpp#L115:
          PHP-Code:
          void SensorSHT3x::heater(bool iOn)
          {
              if (
          iOn)
                  
          writeCommand(SHT3X_HEATER_ENABLE);
              else
                  
          writeCommand(SHT3X_HEATER_DISABLE);
          }
          ​ 
          Die wird aber nirgends aufgerufen.

          Der BME280 hat lt. Datenblatt keine Heizung.

          Was hast du bei ESP32 für den BME280 für ein Messintervall angegeben?
          Ich schätze, dass sich der Sensor im PM durch die Messungen selbst erwärmt.
          Kannst du den Sensor mal über ein Kabel etwas absetzten und prüfen?

          Kommentar


            Nein ein Offset ist nicht drin, zumindest ist mir nur diese Einstellung in der ETS bekannt:
            Screenshot 2026-09-23 072554.png



















            Mit ESPHome rufe ich jede Minute die Temp/Feuchte ab. Wie schon erwähnt, der Sensor hat ordentlich Luft und sitz auf einem Steckboard, weit weg vom ESP32.
            Das Sensormodul ist vertikal ausgerichtet, dass keinerlei Wärmestau den Sensor verfälscht.
            Ich schau mir das nochmal an und versuche noch zwei, drei andere Positionen, aber wirklich Hoffnung habe ich da nicht.

            Kommentar


              Zitat von bios123 Beitrag anzeigen
              Mit ESPHome rufe ich jede Minute die Temp/Feuchte ab.
              Versuch mal aller 5sek abzufragen und schau dir das Verhalten mal an. Glaube openknx macht das auch in dem Bereich.

              Kommentar


                Zitat von bios123 Beitrag anzeigen
                ein Offset ist nicht drin, zumindest ist mir nur diese Einstellung in der ETS bekannt:
                Schau Dir mal den ersten Parameter an. Evtl. liefert die Kontext-Hilfe sogar direkt ein Beispiel...
                OpenKNX www.openknx.de | StateEngine: Universelle Zustandsautomaten in KNX | OpenKNX Konfigurationstransfer

                Kommentar


                  Kurzes Feedback: ESPHome Abfrage auf 5s runterschrauben hat keinerlei Einfluss auf den Messwert. Die Werte kommen öfter aber die Temperatur steigt nicht an.

                  Bezüglich KNX Applikation:

                  Messwert anpassen (interner Messwert)
                  Mit dieser Einstellung kann der Sensor kalibriert werden. Der eingegebene Wert wird zum gemessenen Wert addiert. die möglichen Eingabegrenzen und die Einheit werden bei dem konkreten Messwert beschrieben.
                  Heißt für mich: Wenn dort der Wert 0 steht wird der Sensorwert übernommen ohne weitere Korrektur (Offset).​

                  Habe nochmals die Ausrichtung geändert und beide Sensoren gegeneinander getauscht. Die zurückgemeldeten Werte sind auf ein/zwei Zehntel identisch, nur das Delta bleibt bestehen von ~5 K. Das kann doch nicht sein, wenn der Sensor über I2C gelesen wird, ist ja schließlich kein analoger Sensor wie beispielsweise der PT1000.

                  Kommentar


                    Zitat von bios123 Beitrag anzeigen
                    Habe nochmals die Ausrichtung geändert und beide Sensoren gegeneinander getauscht.
                    Ja. Siehe: https://github.com/OpenKNX/OFM-Senso...erner-messwert

                    D.h. der ausgegebene Offset ist abhängig vom Sensormodul und nicht vom Sensor?

                    Zur Sicherheit: mal nicht partiell programmieren
                    OpenKNX www.openknx.de | StateEngine: Universelle Zustandsautomaten in KNX | OpenKNX Konfigurationstransfer

                    Kommentar


                      Hast du noch einen zweiten BME280 zum testen da?

                      Zitat von bios123 Beitrag anzeigen
                      ESPHome Abfrage auf 5s runterschrauben hat keinerlei Einfluss auf den Messwert
                      Was hast du genau eingestellt?
                      Das sind die Standardwerte der Bibliothek: https://github.com/adafruit/Adafruit..._BME280.h#L221

                      Diese nutzt der Sensor, soweit ich sehe auch: https://github.com/OpenKNX/OGM-Senso...ME280.cpp#L108

                      Kommentar


                        Ja genau ich bekomme unterscheidliche Werte je nachdem ob per ESPHome oder KNX Sensor-Modul ausgelesen wird. Ich habe in ESPHome einfach die vorhandene Implemtierung als fertige Komponente genutzt, mir ging es ja in erster Linie darum zu verifizieren oder die drei Sensoren alle für die 'Tonne' sind.

                        Ich habe leider nur zwei SHT31 und einen BME280 gerade da. In einem zweiten Sensor-Modul läuft zudem der BME680. Den musste ich zwar auch angleichen an meine Referenz, aber das waren nur knapp 2K und bei diesem Sensor ist ja die Problemetik durch die Gasmelder bekannt.

                        So sieht es in ESPHome aus:
                        Screenshot 2026-09-25 073038.png

                        Kommentar


                          Du hast das Intervall ja nur bei SHT eingetragen. Um wirklich Eigenerwärmung bei schnellen Werteabfragen auszuschließen, würde ich mal folgende config probieren:
                          Code:
                          sensor:
                            - platform: bme280_i2c
                              id: sensor_bme280_i2c_1
                              i2c_id: i2c_1
                              update_interval: 500ms
                              iir_filter: "OFF"
                          
                              temperature:
                                name: "Temperature BME280"
                                id: sensor_bme280_i2c_1_temperature
                                oversampling: 16x
                          
                              humidity:
                                name: "Humidity BME280"
                                id: sensor_bme280_i2c_1_humidity
                                oversampling: 16x
                          
                              pressure:
                                name: "Pressure BME280"
                                id: sensor_bme280_i2c_1_pressure
                                oversampling: 16x​

                          Kommentar


                            Code:
                            oversampling: 16x
                            iir_filter: "OFF"
                            Die beide Parameter sind bereist der Default bei ESPHome. Ich habe sie trotzdem nochmal gesetzt und die Abfrage auf absurde 500ms runtergeschraubt (für meine Zwecke völlig overkill). Das beeindruckt den BME280 in keinster Weise und auch der SHT31 verhält sich bei 500ms nicht anders als zuvor.

                            Kommentar

                            Lädt...
                            X