Hallo,
bin eben dabei meine HmIP Rauchwarnmelder nach dem Update auf die HMCCU 5.0 mit "get createDev" neu anzulegen, weil ich möglichst Standard Readings verwenden will.
Danke zap für deine unermüdliche Arbeit für uns Homematic Anwender!
Bisher waren alle Homematic Komponenten als HMCCUDEV Devices angelegt, mit "get createDev" werden diese nun als HMCCUCHN Devices angelegt.
Da ich eh schon sehr viele Module nacharbeiten muss, möchte ich gerne die Readings vom Gerät so verwenden wie diese vom HMCCUCHN Device kommen.
Wo kann ich nachschlagen, welche Zustände die Readings "SMOKE_DETECTOR_TEST_RESULT", "SMOKE_DETECTOR_ALARM_STATUS" und "hmstate" annehmen können, damit ich diese Zustände in verknüpften Modulen sauber auswerten kann (mit doif und notify)?
Anbei noch ein List eines Rauchmelders um welchen es geht:
Internals:
CFGFN
DEF 000A55699D6F4F:1
FUUID 61b4b59f-f33f-7df9-3b2b-4761d366b867ff31
IODev CCU2
NAME OG_RM1_Garderobe
NR 3209
STATE IDLE_OFF
TYPE HMCCUCHN
ccuaddr 000A55699D6F4F:1
ccudevstate active
ccuif HmIP-RF
ccuname HmIP-SWSD 000A55699D6F4F:1
ccurolectrl SMOKE_DETECTOR
ccurolestate SMOKE_DETECTOR
ccusubtype SD
ccutype HmIP-SWSD
firmware 1.0.11
readonly no
READINGS:
2021-12-11 15:40:31 Devicename OG Garderobe - Rauchmelder 1
2021-12-11 15:34:12 ERROR_CODE 0
2021-12-11 15:34:12 ERROR_DEGRADED_CHAMBER false
2021-12-11 15:28:47 IODev CCU2
2021-12-11 15:40:31 SMOKE_DETECTOR_ALARM_STATUS IDLE_OFF
2021-12-11 15:34:12 SMOKE_DETECTOR_TEST_RESULT SMOKE_TEST_OK
2021-12-11 15:40:31 activity alive
2021-12-11 15:40:31 battery ok
2021-12-11 15:40:31 devstate ok
2021-12-11 15:40:31 hmstate IDLE_OFF
2021-12-11 15:40:31 rssidevice -62
2021-12-11 15:40:31 state IDLE_OFF
hmccu:
channels 1
detect 1
devspec 000A55699D6F4F:1
nodefaults 0
role 1:SMOKE_DETECTOR
setDefaults 0
cmdlist:
get
set command:RESERVED_ALARM_OFF,INTRUSION_ALARM_OFF,INTRUSION_ALARM,SMOKE_TEST,COMMUNICATION_TEST,COMMUNICATION_TEST_REPEATED
control:
chn 1
dpt SMOKE_DETECTOR_COMMAND
dp:
0.CONFIG_PENDING:
VALUES:
NVAL 0
ONVAL 0
OSVAL false
OVAL 0
SVAL false
VAL 0
0.DUTY_CYCLE:
VALUES:
NVAL 0
ONVAL 0
OSVAL false
OVAL 0
SVAL false
VAL 0
0.LOW_BAT:
VALUES:
NVAL 0
ONVAL 0
OSVAL ok
OVAL 0
SVAL ok
VAL 0
0.RSSI_DEVICE:
VALUES:
NVAL -62
ONVAL -63
OSVAL -63
OVAL -63
SVAL -62
VAL -62
0.TIME_OF_OPERATION:
VALUES:
NVAL 1734
ONVAL 1734
OSVAL 1734
OVAL 1734
SVAL 1734
VAL 1734
0.TIME_OF_OPERATION_STATUS:
VALUES:
NVAL 0
ONVAL 0
OSVAL NORMAL
OVAL 0
SVAL NORMAL
VAL 0
0.UNREACH:
VALUES:
NVAL 0
ONVAL 0
OSVAL alive
OVAL 0
SVAL alive
VAL 0
1.ERROR_CODE:
VALUES:
NVAL 0
ONVAL 0
OSVAL 0
OVAL 0
SVAL 0
VAL 0
1.ERROR_DEGRADED_CHAMBER:
VALUES:
NVAL 0
ONVAL 0
OSVAL false
OVAL 0
SVAL false
VAL 0
1.SMOKE_DETECTOR_ALARM_STATUS:
VALUES:
NVAL 0
ONVAL 0
OSVAL IDLE_OFF
OVAL 0
SVAL IDLE_OFF
VAL 0
1.SMOKE_DETECTOR_TEST_RESULT:
VALUES:
NVAL 1
ONVAL 0
OSVAL NONE
OVAL 0
SVAL SMOKE_TEST_OK
VAL 1
roleCmds:
get:
set:
command:
channel 1
role SMOKE_DETECTOR
subcount 1
syntax V:SMOKE_DETECTOR_COMMAND:#command
usage command {RESERVED_ALARM_OFF,INTRUSION_ALARM_OFF,INTRUSION_ALARM,SMOKE_TEST,COMMUNICATION_TEST,COMMUNICATION_TEST_REPEATED}
subcmd:
000:
args RESERVED_ALARM_OFF,INTRUSION_ALARM_OFF,INTRUSION_ALARM,SMOKE_TEST,COMMUNICATION_TEST,COMMUNICATION_TEST_REPEATED
dpt SMOKE_DETECTOR_COMMAND
fnc
max 5
min 0
parname command
partype 1
ps VALUES
scn 000
unit
look:
COMMUNICATION_TEST 4
COMMUNICATION_TEST_REPEATED 5
INTRUSION_ALARM 2
INTRUSION_ALARM_OFF 1
RESERVED_ALARM_OFF 0
SMOKE_TEST 3
state:
chn 1
dpt SMOKE_DETECTOR_ALARM_STATUS
Attributes:
DbLogExclude .*
event-on-change-reading .*
group Batterieanzeige_einfach,HmIP-Device,Sicherheit
icon secur_smoke_detector
room Homematic,OG_Garderobe
userReadings Devicename {return 'OG Garderobe - Rauchmelder 1'}
Danke für eure Hilfe
Gruß Reinhard
Für einen ersten Hinweis kannst Du den Befehl "get paramsetDesc" ausführen. Da siehst Du die interne Definition der Datenpunkte in der CCU. Für den Rauchmelder auszugsweise:
Paramset VALUES
SMOKE_DETECTOR_ALARM_STATUS: ENUM [R,E] [Visible,Sticky] RANGE=IDLE_OFF...SECONDARY_ALARM DFLT=IDLE_OFF VALUES=IDLE_OFF,PRIMARY_ALARM,INTRUSION_ALARM,SECONDARY_ALARM
SMOKE_DETECTOR_COMMAND: ENUM [W] [Visible,Sticky] RANGE=RESERVED_ALARM_OFF...COMMUNICATION_TEST_REPEATED DFLT=RESERVED_ALARM_OFF VALUES=RESERVED_ALARM_OFF,INTRUSION_ALARM_OFF,INTRUSION_ALARM,SMOKE_TEST,COMMUNICATION_TEST,COMMUNICATION_TEST_REPEATED
SMOKE_DETECTOR_TEST_RESULT: ENUM [R,E] [Visible,Sticky] RANGE=NONE...COMMUNICATION_TEST_OK DFLT=NONE VALUES=NONE,SMOKE_TEST_OK,SMOKE_TEST_FAILED,COMMUNICATION_TEST_SENT,COMMUNICATION_TEST_OK
Etwas schwer zu lesen, bei der Menge an Werten. Aber man sieht, dass z.B. SMOKE_DETECTOR_ALARM_STATUS den Typ ENUM (Aufzählung) hat, d.h. diese Werte sind von EQ-3/CCU vordefiniert. Hinter VALUES= stehen dann die möglichen Werte. HMCCU übernimmt diese 1:1.
Unter Paramset VALUES stehen immer die Datenpunkte eines Kanals, unter MASTER die Config-Parameter. Dann gibt es noch SERVICE und LINKS.
Wenn Du mehr Details brauchst:
für HmIP (so um die 10.000 Seiten, aber gut strukturiert): https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwi96-aC1N70AhWB87sIHVfsA7gQFnoECAYQAQ&url=https%3A%2F%2Fwww.eq-3.de%2FDownloads%2Feq3%2Fdownload%2520bereich%2Fhm_web_ui_doku%2FHmIP_Device_Documentation.pdf&usg=AOvVaw3TZxCYcxsh275keTKBXNvc
für BidCos: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwjxzLur1N70AhUfh_0HHZ7bCNcQFnoECAkQAQ&url=https%3A%2F%2Fwww.eq-3.de%2FDownloads%2Feq3%2Fdownload%2520bereich%2Fhm_web_ui_doku%2FHM-Script_4-Datenpunkte.pdf&usg=AOvVaw1Wfh18I-xVR_N_dXQye1pQ
Hallo zap,
vielen Dank für deine Antwort.
Anscheinend haben sich beim HMCCUCHN Device (ab HMCCU Vers. 5.0) auch die Readingwerte der Rauchmelder geändert. Das was ich durch lesen und mit Versuchen ermitteln konnte, hänge ich nun hier an, in der Hoffnung es hilft auch anderen Usern.
Die Werte des Readings "SMOKE_DETECTOR_ALARM_STATUS" kann folgende Werte annehmen (in Klammer die Bedeutung der Werte):
IDLE_OFF - (kein Alarm, Rauchmelder ist still)
PRIMARY_ALARM - (Brandalarm an diesem Melder erkannt)
INTRUSION_ALARM - (ein Einbruchalarm wurde ausgelöst)
SECONDARY_ALARM - (ein Brandalarm an einem entfernten Melder wird an diesem Melder noch mit Signalisiert)
Die Werte des Readings "SMOKE_DETECTOR_TEST_RESULT" kann folgende Werte annehmen:
NONE - (normaler Wert, wenn kein Test gestartet wurde)
SMOKE_TEST_OK - (Rauchmeldertest über Testtaste oder als Programmbefehl gestartet, Test OK)
SMOKE_TEST_FAILED - (Rauchmeldertest über Testtaste oder als Programmbefehl gestartet, Test Fehlerhaft)
COMMUNICATION_TEST_SENT - (meldet der Rauchmelder welcher ein Signal zum Kommunikationstest aussendet, mit Testtaste oder Programmbefehl)
COMMUNICATION_TEST_OK - (Kommunikationstest OK, eine Kommunikation wurde an diesem Rauchmelder erfolgreich empfangen)
Rauchmeldertest an einem Rauchmelder auslösen:
set <Gerätename> command SMOKE_TEST - (der Rauchmelder führt einen Selbsttest, durch dreimaliges piepen aus und verstummt wieder)
Einbruchalarm an einem Rauchmelder schalten (wird an allen Rauchmeldern signalisiert, sollte wegen der Batterielebensdauer vorsichtig verwendet werden):
set <Gerätename> command INTRUSION_ALARM - (Einbruchalarm wird eingeschaltet)
set <Gerätename> command INTRUSION_ALARM_OFF - (der Einbruchalarm wird wieder abgeschaltet)
Ich hoffe diese Auflistung erspart einige Versuche, damit die Ohren und die Gerätebatterien geschont werden ;).
Gruß Reinhard
Wobei bei "set command" im UI die möglichen Werte in der Dropdown-Liste angezeigt werden