Ja, die al53.init Routine läuft in der Tat länger, hab da aber bisher nicht mit gestoppt:
Es werden
Variablen initialisiert
ADS115 initialisiert
S35770 initialisiert
1 Sekunde (!!) gewartet
16384 Testpulse auf den I2C-Zähler ausgegeben und das Zählergebnis geprüft
Also das dauert > 1 Sekunde . Das wird ja auch nur sehr selten durchlaufen.
Kann das die Ursache sein? Die doppelte Initialisiert würde das ja vielleicht erklären: Neuer Versuch, wenn rechtzeitig keine Antwort kommt.
Dann muss ich wahrscheinlich die Übergabe der neuen Kanalparameter von dem einmaligen Initialisieren trennen.
Geräte-/ Kanalparameter einstellen / firmware rftypes XML Datei
Moderator: Co-Administratoren
- FUEL4EP
- Beiträge: 584
- Registriert: 01.11.2017, 17:26
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 76 Mal
- Danksagung erhalten: 77 Mal
- Kontaktdaten:
Re: Geräte-/ Kanalparameter einstellen / firmware rftypes XML Datei
Zuletzt geändert von FUEL4EP am 30.10.2021, 21:08, insgesamt 1-mal geändert.
Grüße
Ewald
Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs
Ewald
Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs
-
- Beiträge: 12085
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 847 Mal
- Danksagung erhalten: 2139 Mal
- Kontaktdaten:
Re: Geräte-/ Kanalparameter einstellen / firmware rftypes XML Datei
Möglich wäre es. Kommentier die Zeile
Code: Alles auswählen
al53.init((uint16_t)this->getList1().alarm_level_counts_per_measurement_interval(), (int32_t)this->getList1().alarm_level_moving_average()); // set threshold levels for alarm signals as channel parameters
- FUEL4EP
- Beiträge: 584
- Registriert: 01.11.2017, 17:26
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 76 Mal
- Danksagung erhalten: 77 Mal
- Kontaktdaten:
Re: Geräte-/ Kanalparameter einstellen / firmware rftypes XML Datei
Bingo, das war's. Du bist einfach genial. Vielen Dank!
Das war nun wirklich kniffelig
Das Auseinandertröseln des Init-Prozesses ist jetzt nur noch Arbeit
Das war nun wirklich kniffelig
Das Auseinandertröseln des Init-Prozesses ist jetzt nur noch Arbeit
Zuletzt geändert von FUEL4EP am 31.10.2021, 09:05, insgesamt 2-mal geändert.
Grüße
Ewald
Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs
Ewald
Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs
-
- Beiträge: 12085
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 847 Mal
- Danksagung erhalten: 2139 Mal
- Kontaktdaten:
Re: Geräte-/ Kanalparameter einstellen / firmware rftypes XML Datei
Ich hätte wohl das al53.init() in einen extra Alarm gepackt und diesen 2 Sekunden nach dem configChanged() laufen lassen.
Und feste Delays sind immer mist, wenn bidirektional kommuniziert wird.
- FUEL4EP
- Beiträge: 584
- Registriert: 01.11.2017, 17:26
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 76 Mal
- Danksagung erhalten: 77 Mal
- Kontaktdaten:
Re: Geräte-/ Kanalparameter einstellen / firmware rftypes XML Datei
Jupp, Delays sind Mist. Hinterher ist man immer schlauer. Ich hab heute wieder was gelernt! Zuerst hab ich in der völlig falschen Ecke nach der Ursache für das Fehlverhalten gesucht. Danke nochmals, dass Du wirkliche Ursache sehr schnell erkannt hast. Das macht immer wieder Spaß, diese großartige Unterstützung durch Dich zu bekommen.
Nachtrag 31. Oktober 2021: Das Update der Kanalparameter geht nach der Einführung einer kurzen 'al53.update_channel_parameters()' Methode, die ausschließlich die Kanalparameter in der Sensorklasse updated und sonst nichts. Diese wird nun von configChanged() aufgerufen:
Nachtrag 31. Oktober 2021: Das Update der Kanalparameter geht nach der Einführung einer kurzen 'al53.update_channel_parameters()' Methode, die ausschließlich die Kanalparameter in der Sensorklasse updated und sonst nichts. Diese wird nun von configChanged() aufgerufen:
Code: Alles auswählen
void configChanged() {
DPRINTLN(F("Config Changed: List1"));
DPRINT(F("alarm level counts per measurement interval : ")); DDECLN(this->getList1().alarm_level_counts_per_measurement_interval());
DPRINT(F("alarm level moving average : ")); DDECLN( (double)(this->getList1().alarm_level_moving_average()) / 100.0 );
al53.update_channel_parameters((uint16_t)this->getList1().alarm_level_counts_per_measurement_interval(), (int32_t)this->getList1().alarm_level_moving_average()); // set threshold levels for alarm signals as channel parameters
}
Grüße
Ewald
Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs
Ewald
Meine SmartHome Entwicklungen gibt es hier: FUEL4Ps Homeautomation Github Repository oder als ZIP
Das passende RaspberryMatic Addon ist hb-ep-devices-addon
Passende Platinen gib es hier: PCBs