FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: The Grue am 24 Juli 2023, 14:40:49

Titel: Eine Leuchte, zwei PIRs
Beitrag von: The Grue am 24 Juli 2023, 14:40:49
Servus!

in einem verwinkelten Keller habe ich eine Leuchte und zwei PIRs um die Leuchte sicher einzuschalten. Mein erster Versuch das einzurichten ging etwas in die Hose:
define Basement.PIR.Activation DOIF (["^Basement.*PIR$:^alarm:.HomeSecurity:.Motion.Detection.-.Unknown.Location$"]) \
(set Basement.Corridor.Light on-for-timer 120) \
DOELSE ()
attr Basement.PIR.Activation do always

Wenn PIR1 auslöst startet der 120s timer. Wenn ich jetzt den Bereich von PIR1 verlasse und in den von PIR2 eintrete, schaltet PIR1 mir nach 120s die Leuchte ab, obwohl PIR2 fleissig auslösen würde. ::)

Wie bekomme ich denn das Verhalten, daß die Leuchte an bleibt, solange mindestens einer der PIRs auslöst?

cu
--
Markus
Titel: Aw: Eine Leuchte, zwei PIRs
Beitrag von: betateilchen am 24 Juli 2023, 16:29:31
Warum um alles in der Welt willst Du das mit einem DOIF lösen, wo es für sowas eigene device-Types gibt?

Beide PIR in eine structure packen und die Lampe über die structure schalten.
Funktioniert bei mir im Flur seit Jahren problemlos.

https://commandref.fhem.de/#structure


define st_fl_PIR_Motion structure fl_PIR_Motion fl_PIR1_Motion fl_PIR2_Motion
attr st_fl_PIR_Motion clientstate_behavior absolute

define n_st_fl_PIR notify st_fl_PIR_Motion:(undefined|motion|noMotion) {mache irgendwas, je nach Meldung der structure}

Titel: Aw: Eine Leuchte, zwei PIRs
Beitrag von: The Grue am 25 Juli 2023, 12:51:35
Zitat von: betateilchen am 24 Juli 2023, 16:29:31Warum um alles in der Welt willst Du das mit einem DOIF lösen, wo es für sowas eigene device-Types gibt?

 ;D

Möglicherweise weil ich noch nie was von "structure" bei FHEM gehört habe. Vielen Dank, Deine Antwort hat mir sehr geholfen!
Titel: Aw: Eine Leuchte, zwei PIRs
Beitrag von: thgorjup am 25 Juli 2023, 21:54:57
structure kenne ich auch nicht. Muss ich mal testen. Ich mach das auch mit DOIF und resetwait.


defmod KuecheLichtAn DOIF ([AliRF_05FA5C:"motion"] && [MyBrightness] < 160) (set Licht_Kueche on) (set Licht_Kueche off)
attr KuecheLichtAn disable 0
attr KuecheLichtAn do resetwait
attr KuecheLichtAn wait 0,120
Titel: Aw: Eine Leuchte, zwei PIRs
Beitrag von: betateilchen am 25 Juli 2023, 22:23:12
Zitat von: thgorjup am 25 Juli 2023, 21:54:57Ich mach das auch mit DOIF und resetwait.

Du hast aber auch nur EINEN Bewegungsmelder.
Vielleicht solltest Du nochmal lesen, worum es hier im Thread geht und was die eigentliche Frage war.
Titel: Aw: Eine Leuchte, zwei PIRs
Beitrag von: The Grue am 26 Juli 2023, 16:30:14
Ok, ich habe "structure" nachgelesen und mit ein paar dummies gesehen, daß es theoretisch funktioniert. Danke schon mal :)

Jetzt muss ich noch rausfinden, warum es mit meinen PIRs *nicht* funktioniert  >:(

Liegt es daran, daß der PIR den "interessanten" Teil im "alarm" reading versteckt? Ich dachte das könnte ich mit "stateFormat" reparieren...

define Basement.Corridor.PIR ZWave c83f1470 100
attr Basement.Corridor.PIR userattr BasementPir BasementPir_map structexclude
attr Basement.Corridor.PIR alias Kellergang: Sensor
attr Basement.Corridor.PIR classes ZWAVEPLUS_INFO VERSION MANUFACTURER_SPECIFIC DEVICE_RESET_LOCALLY ASSOCIATION_GRP_INFO ASSOCIATION POWERLEVEL WAKE_UP BATTERY ALARM CRC_16_ENCAP CONFIGURATION SENSOR_MULTILEVEL MULTI_CHANNEL_ASSOCIATION APPLICATION_STATUS SENSOR_BINARY SENSOR_ALARM SECURITY FIRMWARE_UPDATE_MD
attr Basement.Corridor.PIR devStateIcon .*HomeSecurity.*Event.cleared.*:motion_detector@gray .*HomeSecurity..Motion.Detection.*:motion_detector@yellow
attr Basement.Corridor.PIR group Sensoren
attr Basement.Corridor.PIR icon people_sensor
attr Basement.Corridor.PIR room Keller,ZWave
attr Basement.Corridor.PIR stateFormat alarm
attr Basement.Corridor.PIR vclasses ALARM:5 ASSOCIATION:2 ASSOCIATION_GRP_INFO:1 CONFIGURATION:1 CRC_16_ENCAP:1 DEVICE_RESET_LOCALLY:1 FIRMWARE_UPDATE_MD:3 MANUFACTURER_SPECIFIC:2 MULTI_CHANNEL_ASSOCIATION:2 POWERLEVEL:1 SECURITY:1 SENSOR_ALARM:1 SENSOR_BINARY:1 SENSOR_MULTILEVEL:8 VERSION:2 WAKE_UP:2 ZWAVEPLUS_INFO:2
#   DEF        c83f1470 100
#   FUUID      647b20b9-f33f-39ae-e5ed-ab27da8e0a939eca
#   IODev      ZWDongle_0
#   LASTInputDev ZWDongle_0
#   MSGCNT     110
#   NAME       Basement.Corridor.PIR
#   NR         584
#   STATE      HomeSecurity: Event cleared: Motion Detection - Unknown Location, arg 108
#   TYPE       ZWave
#   ZWDongle_0_MSGCNT 110
#   ZWDongle_0_RAWMSG 00040064063105030a0000
#   ZWDongle_0_TIME 2023-07-26 16:02:47
#   ZWaveSubDevice no
#   eventCount 110
#   homeId     c83f1470
#   isWakeUp   1
#   lastMsgSent 1690377684.94902
#   nodeIdHex  64
#   READINGS:
#     2023-07-24 15:01:39   IODev           ZWDongle_0
#     2023-07-05 17:58:17   UNPARSED        METER_PULSE 063505030a0004
#     2023-07-26 12:05:23   alarm           HomeSecurity: Event cleared: Motion Detection - Unknown Location, arg 108
#     2023-06-03 13:21:49   assocGroup_1    Max 1 Nodes ZWDongle_0
#     2023-06-03 13:21:49   assocGroup_2    Max 5 Nodes
#     2023-06-03 13:21:50   assocGroup_3    Max 5 Nodes
#     2023-06-03 13:21:50   assocGroup_4    Max 5 Nodes
#     2023-06-03 13:21:50   assocGroup_5    Max 5 Nodes
#     2023-06-03 13:21:48   assocGroups     5
#     2023-06-03 13:19:57   configAssociationsInZWaveNetwork18 15
#     2023-06-03 13:19:58   configBASICCommandClassConfiguration BASICOnAndOFF
#     2023-06-03 13:19:58   configBASICOFFCommandFrameValue 0
#     2023-06-03 13:19:58   configBASICONCommandFrameValue 255
#     2023-06-03 13:19:59   configLuminanceReportThreshold 200
#     2023-06-03 13:19:59   configLuminanceReportsInterval 3600
#     2023-06-03 13:19:59   configMotionDetectionAlarmCancellation6 30
#     2023-06-03 13:20:00   configMotionDetectionBlindTime 15
#     2023-06-03 13:20:00   configMotionDetectionNightDay 200
#     2023-06-03 13:20:00   configMotionDetectionOperatingMode PIRSensorAlwaysActive
#     2023-06-03 13:20:01   configMotionDetectionPulseCounter 2Pulses
#     2023-07-10 22:03:14   configMotionDetectionSensitivity 60
#     2023-06-03 13:20:01   configMotionDetectionWindowTime 12Seconds
#     2023-06-03 13:20:02   configTamperAlarmBroadcastMode TamperAlarmSentTo3rdAssociation0
#     2023-06-03 13:20:02   configTamperAlarmCancellation SendTamperCancellationReport
#     2023-06-03 13:20:03   configTamperAlarmCancellationDelay 30
#     2023-06-03 13:20:03   configTamperBackwardCompatible29 BackwardCompatibleTamperAlarm0
#     2023-06-03 13:20:03   configTamperOperatingModes TamperOnly
#     2023-06-03 13:21:48   configTamperSensitivity 0
#     2023-06-03 13:20:04   configTemperatureMeasuringInterval 900
#     2023-06-03 13:20:04   configTemperatureOffset 0
#     2023-06-03 13:20:05   configTemperatureReportInterval 0
#     2023-06-03 13:20:05   configTemperatureReportThreshold 10
#     2023-06-03 13:20:05   configVisualLEDIndicatorBrightness 50
#     2023-06-03 13:20:06   configVisualLEDIndicatorLuminanceFor82 100
#     2023-06-03 13:20:07   configVisualLEDIndicatorLuminanceFor83 1000
#     2023-06-03 13:20:08   configVisualLEDIndicatorSignallingMode LongBlinkThenShortBlinkLEDColour10
#     2023-06-03 13:20:09   configVisualLEDIndicatorTemperatureFor86 18
#     2023-07-26 16:02:47   luminance       0 Lux
#     2023-06-03 13:19:20   model           FIBARO System FGMS001-ZW5 Motion Sensor
#     2023-06-03 13:19:20   modelConfig     fibaro/fgmszw5.xml
#     2023-06-03 13:19:20   modelId         010f-0801-1002
#     2023-06-03 13:15:54   state           wakeupInterval 86400 1
#     2023-07-26 11:32:05   temperature     21.7 C
#     2023-07-26 15:21:25   timeToAck       0.127
#     2023-07-26 15:21:25   transmit        OK
#     2023-07-26 15:21:22   wakeup          notification
#     2023-06-03 13:18:49   zwavePlusInfo   version:01 role:SleepingReportingSlave node:Z-Wave+Node installerIcon:0c07 userIcon:0c07
#
setstate Basement.Corridor.PIR HomeSecurity: Event cleared: Motion Detection - Unknown Location, arg 108
setstate Basement.Corridor.PIR 2023-07-24 15:01:39 IODev ZWDongle_0
setstate Basement.Corridor.PIR 2023-07-05 17:58:17 UNPARSED METER_PULSE 063505030a0004
setstate Basement.Corridor.PIR 2023-07-26 12:05:23 alarm HomeSecurity: Event cleared: Motion Detection - Unknown Location, arg 108
setstate Basement.Corridor.PIR 2023-06-03 13:21:49 assocGroup_1 Max 1 Nodes ZWDongle_0
setstate Basement.Corridor.PIR 2023-06-03 13:21:49 assocGroup_2 Max 5 Nodes
setstate Basement.Corridor.PIR 2023-06-03 13:21:50 assocGroup_3 Max 5 Nodes
setstate Basement.Corridor.PIR 2023-06-03 13:21:50 assocGroup_4 Max 5 Nodes
setstate Basement.Corridor.PIR 2023-06-03 13:21:50 assocGroup_5 Max 5 Nodes
setstate Basement.Corridor.PIR 2023-06-03 13:21:48 assocGroups 5
setstate Basement.Corridor.PIR 2023-06-03 13:19:57 configAssociationsInZWaveNetwork18 15
setstate Basement.Corridor.PIR 2023-06-03 13:19:58 configBASICCommandClassConfiguration BASICOnAndOFF
setstate Basement.Corridor.PIR 2023-06-03 13:19:58 configBASICOFFCommandFrameValue 0
setstate Basement.Corridor.PIR 2023-06-03 13:19:58 configBASICONCommandFrameValue 255
setstate Basement.Corridor.PIR 2023-06-03 13:19:59 configLuminanceReportThreshold 200
setstate Basement.Corridor.PIR 2023-06-03 13:19:59 configLuminanceReportsInterval 3600
setstate Basement.Corridor.PIR 2023-06-03 13:19:59 configMotionDetectionAlarmCancellation6 30
setstate Basement.Corridor.PIR 2023-06-03 13:20:00 configMotionDetectionBlindTime 15
setstate Basement.Corridor.PIR 2023-06-03 13:20:00 configMotionDetectionNightDay 200
setstate Basement.Corridor.PIR 2023-06-03 13:20:00 configMotionDetectionOperatingMode PIRSensorAlwaysActive
setstate Basement.Corridor.PIR 2023-06-03 13:20:01 configMotionDetectionPulseCounter 2Pulses
setstate Basement.Corridor.PIR 2023-07-10 22:03:14 configMotionDetectionSensitivity 60
setstate Basement.Corridor.PIR 2023-06-03 13:20:01 configMotionDetectionWindowTime 12Seconds
setstate Basement.Corridor.PIR 2023-06-03 13:20:02 configTamperAlarmBroadcastMode TamperAlarmSentTo3rdAssociation0
setstate Basement.Corridor.PIR 2023-06-03 13:20:02 configTamperAlarmCancellation SendTamperCancellationReport
setstate Basement.Corridor.PIR 2023-06-03 13:20:03 configTamperAlarmCancellationDelay 30
setstate Basement.Corridor.PIR 2023-06-03 13:20:03 configTamperBackwardCompatible29 BackwardCompatibleTamperAlarm0
setstate Basement.Corridor.PIR 2023-06-03 13:20:03 configTamperOperatingModes TamperOnly
setstate Basement.Corridor.PIR 2023-06-03 13:21:48 configTamperSensitivity 0
setstate Basement.Corridor.PIR 2023-06-03 13:20:04 configTemperatureMeasuringInterval 900
setstate Basement.Corridor.PIR 2023-06-03 13:20:04 configTemperatureOffset 0
setstate Basement.Corridor.PIR 2023-06-03 13:20:05 configTemperatureReportInterval 0
setstate Basement.Corridor.PIR 2023-06-03 13:20:05 configTemperatureReportThreshold 10
setstate Basement.Corridor.PIR 2023-06-03 13:20:05 configVisualLEDIndicatorBrightness 50
setstate Basement.Corridor.PIR 2023-06-03 13:20:06 configVisualLEDIndicatorLuminanceFor82 100
setstate Basement.Corridor.PIR 2023-06-03 13:20:07 configVisualLEDIndicatorLuminanceFor83 1000
setstate Basement.Corridor.PIR 2023-06-03 13:20:08 configVisualLEDIndicatorSignallingMode LongBlinkThenShortBlinkLEDColour10
setstate Basement.Corridor.PIR 2023-06-03 13:20:09 configVisualLEDIndicatorTemperatureFor86 18
setstate Basement.Corridor.PIR 2023-07-26 16:02:47 luminance 0 Lux
setstate Basement.Corridor.PIR 2023-06-03 13:19:20 model FIBARO System FGMS001-ZW5 Motion Sensor
setstate Basement.Corridor.PIR 2023-06-03 13:19:20 modelConfig fibaro/fgmszw5.xml
setstate Basement.Corridor.PIR 2023-06-03 13:19:20 modelId 010f-0801-1002
setstate Basement.Corridor.PIR 2023-06-03 13:15:54 state wakeupInterval 86400 1
setstate Basement.Corridor.PIR 2023-07-26 11:32:05 temperature 21.7 C
setstate Basement.Corridor.PIR 2023-07-26 15:21:25 timeToAck 0.127
setstate Basement.Corridor.PIR 2023-07-26 15:21:25 transmit OK
setstate Basement.Corridor.PIR 2023-07-26 15:21:22 wakeup notification
setstate Basement.Corridor.PIR 2023-06-03 13:18:49 zwavePlusInfo version:01 role:SleepingReportingSlave node:Z-Wave+Node installerIcon:0c07 userIcon:0c07

Titel: Aw: Eine Leuchte, zwei PIRs
Beitrag von: The Grue am 26 Juli 2023, 16:34:16
Ich denke, <struct_type>_map wird mein Problem mit den PIRs lösen.