KNX Device Status nach reboot

Begonnen von elektro_rainer, 03 Januar 2018, 16:32:31

Vorheriges Thema - Nächstes Thema

elektro_rainer

servus zusammen,
nach einem reboot sind alle meine KNX geräte auf ??? status.
ein "get" bei dem jeweiligem gerät meldet dann den richtigen zustand und zeigt dann auch das passende symbol.

--> kann ich bei fhem start (oder auch sonst zyklisch) ein "get status" für alle bekannten knx geräte machen?
wenn ja,.. wie??

danke und grüße

Beta-User

Hallo elektro_rainer,

beim Starten wirft das Device global einen Event INITIALIZED (gibt es auch für REREADCFG etc).
Darauf ein notify sollte den Job erledigen können.

Mit einem FILTER auf TYPE <was auch immer für KNX steht> sollten sich dann alle KNX-Devices auf einen Rutsch abfragen lassen (bitte vorher testen und ggf. etwas verzögern, nicht dass FHEM beim Starten hängt).

Gruß, Beta-User

Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Andi291

Quasi so (erprobt :-):

define Notify_get_values_at_startup notify global:INITIALIZED { \
fhem("sleep 0.02 quiet;; get datum");; \
fhem("sleep 0.02 quiet;; get uhrzeit");; \
}


Grüße, Andi

elektro_rainer

muss ich da wirklich JEDES device EINZELN eintragen?
gibt's da kein *.* oder all???

danke und grüße,
rainer

Beta-User

Zitat von: elektro_rainer am 04 Januar 2018, 08:54:45
muss ich da wirklich JEDES device EINZELN eintragen?
Na ja, entweder man kann den Befehl gleichzeitig an alle senden (mit devspec und FILTER, wie bereits angemerkt), oder es ist besser, das bei KNX einzeln mit einem sleep zu machen. Dann wäre eine Schleife mit devspec2array sinnvoller. (Geht auch innerhalb des notify, ich würde das aber eher in eine myUtils-Funktion auslagern; frage mich aber, ob es nicht sinnvoll wäre, sowas wenigstens optional direkt ins Modul einzubauen).
Beispiel dazu (aus 10_CUL_HM, Zeile 1040ff):

sub CUL_HM_setupHMLAN(@){
foreach (devspec2array("TYPE=CUL_HM:FILTER=DEF=......:FILTER=subType!=virtual")){
  $defs{$_}{helper}{io}{newChn} = 0;
  CUL_HM_hmInitMsg($defs{$_}); #update device init msg for HMLAN
  }
}


Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files