Ankündigung

Einklappen
Keine Ankündigung bisher.

Alternative Firmware für das Raum-Sensormodul von Masifi

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

    Zitat von mumpf Beitrag anzeigen
    • Musstest Du nur GA neu zuordnen oder auch die Parameter neu eingeben?
    • Von welcher beta Applikationsversion (3.x, das x interessiert mich) bist Du auf die 3.8 gegangen?
    • Ich bin von Version 3.1 beta auf 3.8 gegangen. Ich musste auch die Parameter neu konfigurieren.
    • Zitat von mumpf Beitrag anzeigen
      Wichtig: Den Update-Knopf nutzen, nicht die Dropdown mit den Versionen nutzen.
    • Ich habe die Combobx verwendet. Danke für die Info. Dann kann ich es das nächste mal richtig machen Hätte nicht erwartet das sie die Funktionalität so unterschiedlich verhält.

    Kommentar


      Die Dropdown ist dazu da, um eine bestimmte Applikationsversion einem Gerät zuzuweisen. Die ETS beachtet dabei nicht, ob es ein up- oder ein downgrade ist, die Applikation wird auf jeden Fall auf den Initialwert zurückgesetzt.

      Der Update-Button dient dazu, ein Gerät auf die neuste im Projekt (nicht im Katalog) bekannte Applikationsversion zu bringen. Man hat da keine Wahl, eine Version auszuwählen (es wird immer die neueste genommen), aber alle Parameter und alle GA bleiben erhalten.

      Gruß, Waldemar

      P.S.: Ich hab das Update-Verfahren in der Applikationsbeschreibung beschrieben...
      OpenKNX www.openknx.de

      Kommentar


        Hallo in die Runde,

        wollte heute ein Update für einen V3 Sensor machen. Beim kompilieren laufe ich in folgenden Fehler:
        Code:
        Compiling .pio\build\build\lib136\knx-common\bsec\bme680\bme680.c.o
        C:\Users\Etien\Documents\PlatformIO\Projects\knx-common\src\SensorSCD40.cpp: In member function 'bool SensorSCD40::getSensorData()':
        C:\Users\Etien\Documents\PlatformIO\Projects\knx-common\src\SensorSCD40.cpp:98:43: error: 'readMeasurementTicks' is not a member of 'SensirionI2CScd4x'
        lResult = (SensirionI2CScd4x::readMeasurementTicks(lCo2, lTemp, lHum) == 0);
        ^~~~~~~~~~~~~~~~~~~~
        Compiling .pio\build\build\lib136\knx-common\bsec\bsec.cpp.o
        *** [.pio\build\build\lib136\knx-common\SensorSCD40.cpp.o] Error 1
        Habe ich irgendwo einen Fehler gemacht und wenn ja, welchen?

        Grüße

        Edit:
        Jetzt kommen noch diese Fehler, haben die vielleicht etwas damit zu tun?:
        FehlerIO.png

        Edit 2:
        Ich habe jetzt mal alles geupdatet, was mir angezeigt wurde und nun klappt es. Keine Ahnung was genau es war aber eben ist es durchgelaufen
        Zuletzt geändert von Amenophis; 06.02.2022, 11:36.
        Grüße Etienne

        Kommentar


          Hi,

          Update-Anleitung oder Neuinstallation? Ich vermute, Du hast nicht alle Pakete aktualisiert. knx-common ist wahrscheinlich nicht auf dem neuesten Stand. Sag mal, wie Du das Update versucht hast, dann bekommen wir das schon hin.

          Gruß, Waldemar
          OpenKNX www.openknx.de

          Kommentar


            War die Update-Anleitung, da ich den Sensor schon in Betrieb habe. Wie gesagt habe ich hinbekommen nachdem ich in dem Programm mal gesucht habe, wo man updates machen kann. Dann habe ich alles was ich gefunden habe einem Update unterzogen und dann ging es. Kenne mich leider mit dem Programm überhaupt nicht aus aber mit etwas try and error hat es geklappt. Trotzdem vielen Dank für deine schnelle Rückmeldung
            Grüße Etienne

            Kommentar


              Ok, weiter geht es. Bin jetzt dabei die Prod zu erstellen. Dabei habe ich quasi ab hier angefangen:

              knx-sensor/doc/knx-dev-setup.md -> Again "Quick Access" appears, click "Miscellaneous->PlatformIO Core CLI"

              und laufe nun in folgende Probleme:
              Code:
              PS C:\Users\Etien\Documents\PlatformIO\Projects\knx-wire> git checkout release
              error: pathspec 'release' did not match any file(s) known to git
              PS C:\Users\Etien\Documents\PlatformIO\Projects\knx-wire> cd ..\knx-sensor
              PS C:\Users\Etien\Documents\PlatformIO\Projects\knx-sensor> git checkout release
              error: Your local changes to the following files would be overwritten by checkout:
              Sensormodul.code-workspace
              platformio.ini
              src/Sensormodul.h
              Please commit your changes or stash them before you switch branches.
              Aborting
              PS C:\Users\Etien\Documents\PlatformIO\Projects\knx-sensor>
              Hätte ich ganz zu beginn anfangen müssen? Das Test projekt habe ich ja schon erstellt, als ich das erste Mal die Prod erstellt habe.
              Grüße Etienne

              Kommentar


                Damit Du (und auch ich) uns sicher sind, dass Du wirklich den aktuellsten Stand hast und nicht nur eine compilierbare Version, überprüfe bitte folgendes:
                • knx-sensor/src/Sensormodul.cpp, Zeile 18-20, da sollte:
                  Code:
                  	const uint8_t cFirmwareMajor = 3;    // 0-31
                  	const uint8_t cFirmwareMinor = 8;    // 0-31
                  	const uint8_t cFirmwareRevision = 0; // 0-63
                  stehen.
                • knx-wire/src/WireGateway.cpp, Zeile 15-17, gleicher Inhalt
                • knx-logic/src/Logikmodul.cpp, Zeile 6-8, gleicher Inhalt
                • knx-common/src/Helper.cpp, Zeile 11
                  Code:
                  	SERIAL_DEBUG.print(buffer);
                Wenn in den Dateien jeweils der Inhalt ist, hast Du die aktuellste Version. Wenn nicht, melde Dich nochmal.
                Ansonsten: Kann ich die Update-Anleitung noch irgendwie verbessern, damit das nicht nochmal passiert? Ich mach das ja dauernd, deswegen kann es schon sein, dass ich irgendwas, was mir absolut klar ist, nicht genau genug beschrieben habe.

                Gruß, Waldemar
                OpenKNX www.openknx.de

                Kommentar


                  Ich habe wohl nicht die aktuelle Version:

                  Code:
                  const uint8_t cFirmwareMajor = 3;    // 0-31
                  const uint8_t cFirmwareMinor = 6;    // 0-31
                  const uint8_t cFirmwareRevision = 0; // 0-63
                  Ich fand die Anleitung sehr verständlich und bis auf das Update hatte ich auch keine Probleme. Auch das Pull hat bei mir keine Probleme angezeigt oder ich wüsste nicht wo ich suchen muss.
                  Grüße Etienne

                  Kommentar


                    Hier habe ich bei allen auf die Punkte gedrückt und dann auf Pull. So sieht es jetzt aus:
                    FehlerIO.png
                    Grüße Etienne

                    Kommentar


                      Ich habe jetzt alles in C:\Users\Etien\Documents\PlatformIO\Projects nochmal gelöscht und die Anleitung https://github.com/mumpf/knx-sensor/...x-dev-setup.md von vorne gestartet. Jetzt stimmen die obigen Daten aber ich laufe in einen neuen Fehler. Zum Verrückt werden

                      Code:
                      > Executing task in folder knx-sensor: C:\Users\Etien\.platformio\penv\Scripts\pio.exe run -e build <
                      
                      Processing build (platform: atmelsam; board: zeroUSB; framework: arduino)
                      ------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
                      CONFIGURATION: https://docs.platformio.org/page/boards/atmelsam/zeroUSB.html
                      PLATFORM: Atmel SAM (7.1.0) > Arduino Zero (USB Native Port)
                      HARDWARE: SAMD21G18A 48MHz, 32KB RAM, 256KB Flash
                      DEBUG: Current (jlink) External (atmel-ice, blackmagic, jlink)
                      PACKAGES:
                      - framework-arduino-samd 1.8.11
                      - framework-cmsis 1.40500.0 (4.5.0)
                      - framework-cmsis-atmel 1.2.2
                      - toolchain-gccarmnoneeabi 1.70201.0 (7.2.1)
                      LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
                      LDF Modes: Finder ~ deep+, Compatibility ~ soft
                      Found 31 compatible libraries
                      Scanning dependencies...
                      Dependency Graph
                      |-- <SPI> 1.0
                      |-- <Wire> 1.0
                      |-- <Adafruit SleepyDog Library> 1.4.0
                      |-- <Adafruit BME280 Library> 2.1.2
                      | |-- <Adafruit Unified Sensor> 1.1.4
                      | |-- <SPI> 1.0
                      | |-- <Wire> 1.0
                      |-- <SparkFun SCD30 Arduino Library> 1.0.14
                      | |-- <Wire> 1.0
                      |-- <Sensirion I2C SCD4x> 0.3.1
                      | |-- <Wire> 1.0
                      | |-- <Sensirion Core> 0.5.2
                      | | |-- <Wire> 1.0
                      |-- <VL53L1X> 1.2.1
                      | |-- <Wire> 1.0
                      |-- <knx-wire> 3.0.0
                      | |-- <knx> 1.1.2
                      | |-- <knx-logic> 3.8.0
                      | | |-- <knx-sensor> 3.8.0
                      | | | |-- <knx> 1.1.2
                      | | | |-- <Wire> 1.0
                      | | |-- <knx> 1.1.2
                      | | |-- <Wire> 1.0
                      | | |-- <Adafruit SleepyDog Library> 1.4.0
                      | |-- <knx-sensor> 3.8.0
                      | | |-- <knx> 1.1.2
                      | | |-- <Wire> 1.0
                      |-- <knx> 1.1.2
                      |-- <knx-logic> 3.8.0
                      | |-- <knx-sensor> 3.8.0
                      | | |-- <knx> 1.1.2
                      | | |-- <Wire> 1.0
                      | |-- <knx> 1.1.2
                      | |-- <Wire> 1.0
                      | |-- <Adafruit SleepyDog Library> 1.4.0
                      |-- <knx-sensor> 3.8.0
                      | |-- <knx> 1.1.2
                      | |-- <Wire> 1.0
                      Building in release mode
                      Compiling .pio\build\build\src\Sensormodul.cpp.o
                      Compiling .pio\build\build\src\main.cpp.o
                      Compiling .pio\build\build\libf78\SPI\SPI.cpp.o
                      src\Sensormodul.cpp:1:10: fatal error: Helper.h: No such file or directory
                      
                      ************************************************** **************
                      * Looking for Helper.h dependency? Check our library registry!
                      *
                      * CLI > platformio lib search "header:Helper.h"
                      * Web > https://platformio.org/lib/search?query=header:Helper.h
                      *
                      ************************************************** **************
                      
                      #include "Helper.h"
                      ^~~~~~~~~~
                      compilation terminated.
                      Compiling .pio\build\build\libe9c\Wire\Wire.cpp.o
                      Compiling .pio\build\build\lib0b7\Adafruit SleepyDog Library@1.4.0\Adafruit_SleepyDog.cpp.o
                      Compiling .pio\build\build\lib0b7\Adafruit SleepyDog Library@1.4.0\utility\WatchdogAVR.cpp.o
                      Compiling .pio\build\build\lib0b7\Adafruit SleepyDog Library@1.4.0\utility\WatchdogKinetisK.cpp.o
                      *** [.pio\build\build\src\Sensormodul.cpp.o] Error 1
                      Compiling .pio\build\build\lib0b7\Adafruit SleepyDog Library@1.4.0\utility\WatchdogKinetisL.cpp.o
                      In file included from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/SafeRingBuffer.h:24:0,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Uart.h:23,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\variants\arduino_zero/variant.h:43,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Arduino.h:48,
                      from C:\Users\Etien\Documents\PlatformIO\Projects\knx\s rc/knx/bits.h:36,
                      from C:\Users\Etien\Documents\PlatformIO\Projects\knx\s rc/knx_facade.h:3,
                      from C:\Users\Etien\Documents\PlatformIO\Projects\knx\s rc/knx.h:86,
                      from src\main.cpp:1:
                      C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/api/RingBuffer.h:33:0: warning: "SERIAL_BUFFER_SIZE" redefined
                      #define SERIAL_BUFFER_SIZE 64
                      
                      <command-line>:0:0: note: this is the location of the previous definition
                      src\main.cpp:3:10: fatal error: Hardware.h: No such file or directory
                      
                      ************************************************** ****************
                      * Looking for Hardware.h dependency? Check our library registry!
                      *
                      * CLI > platformio lib search "header:Hardware.h"
                      * Web > https://platformio.org/lib/search?query=header:Hardware.h
                      *
                      ************************************************** ****************
                      
                      #include "Hardware.h"
                      ^~~~~~~~~~~~
                      compilation terminated.
                      In file included from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/SafeRingBuffer.h:24:0,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Uart.h:23,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\variants\arduino_zero/variant.h:43,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Arduino.h:48,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\libraries\SPI\SPI.h:23,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\libraries\SPI\SPI.cpp:20:
                      C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/api/RingBuffer.h:33:0: warning: "SERIAL_BUFFER_SIZE" redefined
                      #define SERIAL_BUFFER_SIZE 64
                      
                      <command-line>:0:0: note: this is the location of the previous definition
                      *** [.pio\build\build\src\main.cpp.o] Error 1
                      In file included from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/SafeRingBuffer.h:24:0,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Uart.h:23,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\variants\arduino_zero/variant.h:43,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Arduino.h:48,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\libraries\Wire\Wire.cpp:24:
                      C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/api/RingBuffer.h:33:0: warning: "SERIAL_BUFFER_SIZE" redefined
                      #define SERIAL_BUFFER_SIZE 64
                      
                      <command-line>:0:0: note: this is the location of the previous definition
                      In file included from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/SafeRingBuffer.h:24:0,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Uart.h:23,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\variants\arduino_zero/variant.h:43,
                      from C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/Arduino.h:48,
                      from C:\tmp\libdeps\build\Adafruit SleepyDog Library@1.4.0\utility/WatchdogSAMD.h:4,
                      from C:\tmp\libdeps\build\Adafruit SleepyDog Library@1.4.0\Adafruit_SleepyDog.h:17,
                      from C:\tmp\libdeps\build\Adafruit SleepyDog Library@1.4.0\Adafruit_SleepyDog.cpp:27:
                      C:\Users\Etien\.platformio\packages\framework-arduino-samd\cores\arduino/api/RingBuffer.h:33:0: warning: "SERIAL_BUFFER_SIZE" redefined
                      #define SERIAL_BUFFER_SIZE 64
                      
                      <command-line>:0:0: note: this is the location of the previous definition
                      ================================================== == [FAILED] Took 7.84 seconds ================================================== ==
                      Environment Status Duration
                      ------------- -------- ------------
                      build FAILED 00:00:07.836
                      ============================================== 1 failed, 0 succeeded in 00:00:07.836 ==============================================
                      Der Terminalprozess "C:\WINDOWS\System32\WindowsPowerShell\v1.0\powers hell.exe -Command C:\Users\Etien\.platformio\penv\Scripts\pio.exe run -e build" wurde mit folgendem Exitcode beendet: 1.
                      Grüße Etienne

                      Kommentar


                        Tausend Dank an Waldemar, der mir in einer persönlichen Session bei den Problemen geholfen hat. Sämtliche Lösungen werden von ihm in die Anleitung eingepflegt. Bei mir war es ein Zusammenspiel aus verschiedenen Dingen aber folgender Hinweis an dieser Stelle. Wer den Projekt Ordner von VSC synchonrisiert mit einer NAS oder so, der kann in Probleme laufen. Diese Synch sollte man besser ausstellen
                        Grüße Etienne

                        Kommentar


                          Ich habe ein Problem mit der aktuellen Release-Version. Bevor ich da tiefer reindebugge wollte ich fragen ob das irgendwie erklärlich ist.

                          Hardware ist eine Masifi-Aussenplatine V13 mit SHT31 Sensor.

                          knxprod wurde neu importiert, Gerät ins Projekt eingefügt und ein vorhandenes Gerät danach aktualisiert. Konfiguriert ist der SHT31 für Temperatur und Feuchtigkeit. Temp/Luftfeuchte soll alle 5 Sekunden gesendet werden.

                          Das Verhalten ist dann so, dass zum Start "In Betrieb" gesendet, Datum und Uhrzeit vom Bus gelesen wird und dann die Feuchtigkeit mit einem plausiblen Wert gesendet wird. Danach kommt nur noch "In Betrieb" (alle 300s).

                          Auf "Alle Werte senden"-Anforderung wird die gleiche wie zuerst gesendete Luftfeuchtigkeit gesendet (Also nicht die aktuelle, sondern immer die gleiche). Keine Temperatur.

                          Auf ein Read-Request auf das Temperatur-Objekt wird mit 0°C geantwortet. Bei Luftfeuchte wird immer mit dem gleichen zuerst gesendeten Wert geantwortet.

                          Ich habe eine Debug-Ausgabe in SensorSHT3x::getTempHum eingebaut, die rund alle 2 Sekunden eine plausible, sich ändernde Temperatur und Luftfeuchtigkeit ausschreibt.

                          Änderung der Konfiguration auf "alle 0 Sekunden senden" (also nicht zeitgesteuert sondern bei Änderung) zeigt exakt das gleiche Verhalten.

                          Kommentar


                            Hi mike ,

                            Danke für die Rückmeldung. Nur damit ich sicher sein kann, dass Du das Update richtig gemacht hast (was nicht an Dir liegt, das ist eben fehleranfällig):

                            Kannst Du mal bei dem Gerät->Eigenschaften->Informationen->Applikationsprogramm vergleichen, ob das drin steht:
                            Sensormodul-v3.8.jpg
                            Vor allem Gerätetyp und Programmversion sind wichtig.

                            Und dann noch die Geräteinfo auslesen und schauen, ob da
                            Code:
                            Firmware-Version: [3] 8.0 steht?
                            Dann sehen wir weiter, ok?

                            Gruß, Waldemar

                            OpenKNX www.openknx.de

                            Kommentar


                              Vielen Dank mumpf! Das hilft mir schon weiter. Der Fingerprint ist unterschiedlich! Bei mir steht 253E.

                              Edit: Mit neu erzeugter knxprod und identischem Fingerprint funktioniert es dann. Nochmals Danke.

                              Edit2: Falls die Fragen aufkommen:
                              Wie konnte eine falsche knxprod erzeugt werden? => Ich hatte nicht die Version 2.1.2 von multiply-channels sondern den aktuellen Master verwendet.

                              Warum die Master-Version von multiply-channels? => Ich hatte mir multiply-channels angesehen und wollte es erweitern. Daher hatte ich die Master-Version gebaut und noch in meinem bin-Verzeichnis. Ich ging davon aus, dass Master statt 2.1.2 auch OK sein würde.

                              D.h. typisches RTFM-Problem. Sorry!
                              Zuletzt geändert von mike; 10.02.2022, 18:44. Grund: MultiCopy -> multiply-channels (my bad)

                              Kommentar


                                Hi mike,

                                danke für die Info mit multiply-channels. Eigentlich dachte ich auch, dass die master kompatibel ist. Da muss ich mal schauen. Bis dahin bitte nur release (also 2.1.2) verwenden.

                                Gruß, Waldemar
                                OpenKNX www.openknx.de

                                Kommentar

                                Lädt...
                                X