Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ankündigung
Einklappen
Keine Ankündigung bisher.
Alternative Firmware für das Raum-Sensormodul von Masifi
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.
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...
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.
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.
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
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.
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:
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.
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.
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.
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
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.
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
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.
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.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar