[Gelöst] Magic Home mit tasmota über Doif dimmen help

Begonnen von Zander1st, 17 November 2020, 12:30:52

Vorheriges Thema - Nächstes Thema

Zander1st

Hallo,
Ich habe eine weiße LED Lampe an einem Magic Home controller an Fhem über MQTT2 angebunden
Was ich auch erfolgreich über ein Schieberegler hell und dunkel dimmen kann.

Ich würde es gerne zu einer bestimmten Zeit 25% hoch dimmen. Aber alles was ich vmit doif versucht habe klappt irgendwie nicht.
Ist mein Vorhaben überhaupt möglich?
Hat jemand ein Ansatz für mich womit ich überhaupt starten kann?
Danke schon mal im voraus für jeden Tipp.
Hier mein Device.


CFGFN     
   CID        Aquarium
   DEF        Aquarium
   DEVICETOPIC MQTT2_Aquarium
   FUUID      5fb110da-f33f-d7f8-fa23-dfe311d21897cc96
   IODev      MQTT2_FHEM
   LASTInputDev MQTT2_FHEM
   MQTT2_FHEM_MSGCNT 747
   MQTT2_FHEM_TIME 2020-11-17 12:21:08
   MSGCNT     747
   NAME       MQTT2_Aquarium
   NR         954138
   STATE      Dimmer:25
   TYPE       MQTT2_DEVICE
   JSONMAP:
     Dimmer     pct
     POWER1     0
   OLDREADINGS:
   READINGS:
     2020-11-17 12:21:08   Channel_1       25
     2020-11-17 12:21:08   Channel_2       25
     2020-11-17 12:21:08   Channel_3       25
     2020-11-17 12:21:08   Color           404040
     2020-11-17 12:21:08   Fade            off
     2020-11-16 20:50:49   FallbackTopic   cmnd/Aquarium_fb/
     2020-11-16 20:50:49   GroupTopic      licht/cmnd/tasmotas/
     2020-11-17 12:21:08   HSBColor        0,0,25
     2020-11-17 12:21:08   Heap            27
     2020-11-16 20:50:49   Hostname        Aquarium-5013
     2020-11-16 20:50:49   IPAddress       192.168.178.51
     2020-11-17 06:01:20   LWT             Online
     2020-11-17 12:21:08   LedTable        on
     2020-11-17 12:21:08   LoadAvg         99
     2020-11-16 20:50:49   Module          Arilux LC01
     2020-11-17 12:21:08   MqttCount       5
     2020-11-17 06:01:20   POWER           
     2020-11-16 20:50:49   RestartReason   Power On
     2020-11-15 12:30:12   SaveData        on
     2020-11-17 12:21:08   Scheme          0
     2020-11-15 12:30:12   SetOption26     on
     2020-11-17 12:21:08   Sleep           10
     2020-11-17 12:21:08   SleepMode       Dynamic
     2020-11-17 12:21:08   Speed           1
     2020-11-15 12:30:09   StateText1      off
     2020-11-15 12:30:09   StateText2      on
     2020-11-15 12:30:09   StateText3      toggle
     2020-11-15 12:30:10   StateText4      hold
     2020-11-17 12:21:08   Time            2020-11-17T12:21:08
     2020-11-17 12:21:08   Uptime          0T15:30:24
     2020-11-17 12:21:08   UptimeSec       55824
     2020-11-16 20:50:49   Version         9.1.0(tasmota)
     2020-11-16 20:50:49   WebServerMode   Admin
     2020-11-17 12:21:08   Wifi_AP         1
     2020-11-17 12:21:08   Wifi_BSSId      2C:91:AB:E8:4F:90
     2020-11-17 12:21:08   Wifi_Channel    1
     2020-11-17 12:21:08   Wifi_Downtime   0T00:00:27
     2020-11-17 12:21:08   Wifi_LinkCount  3
     2020-11-17 12:21:08   Wifi_RSSI       42
     2020-11-17 12:21:08   Wifi_SSId       LizardSquad
     2020-11-17 12:21:08   Wifi_Signal     -79
     2020-11-15 12:30:09   attrTemplateVersion 20200522 or prior
     2020-11-16 20:50:50   config_btn_1    0
     2020-11-16 20:50:50   config_btn_2    0
     2020-11-16 20:50:50   config_btn_3    0
     2020-11-16 20:50:50   config_btn_4    0
     2020-11-16 20:50:50   config_dn       Tasmota
     2020-11-16 20:50:50   config_fn_1     Tasmota
     2020-11-16 20:50:50   config_ft       licht/%prefix%/%topic%/
     2020-11-16 20:50:50   config_hn       Aquarium-5013
     2020-11-16 20:50:50   config_if       0
     2020-11-16 20:50:50   config_ip       192.168.178.51
     2020-11-16 20:50:50   config_lk       1
     2020-11-16 20:50:50   config_lt_st    3
     2020-11-16 20:50:50   config_mac      D8F15B871395
     2020-11-16 20:50:50   config_md       Arilux LC01
     2020-11-16 20:50:50   config_ofln     Offline
     2020-11-16 20:50:50   config_onln     Online
     2020-11-16 20:50:50   config_rl_1     2
     2020-11-16 20:50:50   config_rl_2     0
     2020-11-16 20:50:50   config_rl_3     0
     2020-11-16 20:50:50   config_rl_4     0
     2020-11-16 20:50:50   config_rl_5     0
     2020-11-16 20:50:50   config_rl_6     0
     2020-11-16 20:50:50   config_rl_7     0
     2020-11-16 20:50:50   config_rl_8     0
     2020-11-16 20:50:50   config_so_11    0
     2020-11-16 20:50:50   config_so_114   0
     2020-11-16 20:50:50   config_so_13    0
     2020-11-16 20:50:50   config_so_17    0
     2020-11-16 20:50:50   config_so_20    0
     2020-11-16 20:50:50   config_so_30    0
     2020-11-16 20:50:50   config_so_4     0
     2020-11-16 20:50:50   config_so_68    0
     2020-11-16 20:50:50   config_so_73    0
     2020-11-16 20:50:50   config_so_82    0
     2020-11-16 20:50:50   config_state_1  off
     2020-11-16 20:50:50   config_state_2  on
     2020-11-16 20:50:50   config_state_3  toggle
     2020-11-16 20:50:50   config_state_4  hold
     2020-11-16 20:50:50   config_sw       9.1.0
     2020-11-16 20:50:50   config_swc_1    -1
     2020-11-16 20:50:50   config_swc_2    -1
     2020-11-16 20:50:50   config_swc_3    -1
     2020-11-16 20:50:50   config_swc_4    -1
     2020-11-16 20:50:50   config_swc_5    -1
     2020-11-16 20:50:50   config_swc_6    -1
     2020-11-16 20:50:50   config_swc_7    -1
     2020-11-16 20:50:50   config_swc_8    -1
     2020-11-16 20:50:50   config_t        Aquarium
     2020-11-16 20:50:50   config_tp_1     cmnd
     2020-11-16 20:50:50   config_tp_2     stat
     2020-11-16 20:50:50   config_tp_3     tele
     2020-11-16 20:50:50   config_ty       0
     2020-11-16 20:50:50   config_ver      1
     2020-11-17 12:21:08   pct             25
     2020-11-15 12:30:31   saturation      0
     2020-11-16 20:50:50   sensors_sn_Time 2020-11-16T20:50:50
     2020-11-16 20:50:50   sensors_ver     1
     2020-11-16 22:11:30   state           on
     2020-11-15 22:23:51   white           set 0
Attributes:
   IODev      MQTT2_FHEM
   autocreate 1
   comment    NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/licht/cmnd/Aquarium/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
   devStateIcon {Color::devStateIcon($name,"pct","state")}
   icon       light_control
   jsonMap    POWER1:0 Dimmer:pct
   model      tasmota_rgbw_led
   readingList licht/tele/Aquarium/LWT:.* LWT
  licht/tele/Aquarium/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
  licht/tele/Aquarium/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
  licht/tele/Aquarium/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
  licht/tele/Aquarium/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
  licht/stat/Aquarium/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
  licht/stat/Aquarium/RESULT:.* { $EVENT =~ m,HSBColor...(\d+)\,(\d+)\,(\d+), ? $2 eq ReadingsVal($NAME,"saturation","unknown") ? return : { "saturation"=>$2 } : return }
  licht/stat/Aquarium/POWER1:.* state
Aquarium:licht/cmnd/Aquarium/POWER:.* POWER
licht/stat/Aquarium/DIMMER:.* state
Aquarium:licht/cmnd/Aquarium/DIMMER:.* DIMMER
Aquarium:tasmota/discovery/D8F15B871395/config:.* { json2nameValue($EVENT, 'config_', $JSONMAP) }
Aquarium:tasmota/discovery/D8F15B871395/sensors:.* { json2nameValue($EVENT, 'sensors_', $JSONMAP) }
   room       MQTT2_DEVICE
   setList    off:noArg licht/cmnd/Aquarium/POWER1 0
  on:noArg licht/cmnd/Aquarium/POWER1 1
  toggle:noArg licht/cmnd/Aquarium/POWER1 2
  Color:colorpicker,RGB licht/cmnd/Aquarium/COLOR
  pct:colorpicker,BRI,0,5,100 licht/cmnd/Aquarium/DIMMER
  dimup:noArg { my $num=int((ReadingsNum($NAME,'pct',0)+4)/10)*10+10; return qq {licht/cmnd/Aquarium/Dimmer $num}; }
  dimdown:noArg { my $num=int((ReadingsNum($NAME,'pct',0)+7)/10)*10-10; return qq {licht/cmnd/Aquarium/Dimmer $num}; }
  white:colorpicker,BRI,0,5,100 { "licht/cmnd/Aquarium/COLOR ". sprintf("000000%02X",$EVTPART1*2.55) }
  saturation:colorpicker,BRI,0,1,100 licht/cmnd/Aquarium/HSBCOLOR2
  Speed:colorpicker,BRI,0,1,20 licht/cmnd/Aquarium/SPEED
  Fade:uzsuSelect,ON,OFF licht/cmnd/Aquarium/FADE $EVTPART1
  mode:selectnumbers,0,1,4,0,lin licht/cmnd/Aquarium/SCHEME
   setStateList on off toggle
   stateFormat Dimmer:pct
   webCmd     pct:
   webCmdLabel Helligkeit


Das ist noch das doif was ich gerade probiert habe
nternals:
   CFGFN     
   DEF        ([MQTT2_Aquarium:Dimmer 20] and [11:05]) (set MQTT2_Aquarium:pct 30)
   FUUID      5fb114f9-f33f-d7f8-3d9e-0f912e3b42121dec
   MODEL      FHEM
   NAME       aquarium_dimmer
   NOTIFYDEV  global,MQTT2_Aquarium
   NR         955601
   NTFY_ORDER 50-aquarium_dimmer
   STATE      cmd_2
   TYPE       DOIF
   VERSION    22913 2020-10-04 21:46:02
   READINGS:
     2020-11-16 11:05:00   cmd             2
     2020-11-16 11:05:00   cmd_event       timer_1
     2020-11-16 11:05:00   cmd_nr          2
     2020-11-16 11:03:35   mode            enabled
     2020-11-16 11:05:00   state           cmd_2
     2020-11-17 11:05:00   timer_01_c01    18.11.2020 11:05:00
   Regex:
     accu:
     cond:
       MQTT2_Aquarium:
         0:
           Dimmer 20  ^MQTT2_Aquarium$:^Dimmer 20:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'MQTT2_Aquarium','Dimmer 20') and ::DOIF_time_once($hash,0,$wday)
   days:
   do:
     0:
       0          set MQTT2_Aquarium:pct 30
     1:
   helper:
     DEVFILTER  ^global$|^MQTT2_Aquarium$
     NOTIFYDEV  global|MQTT2_Aquarium
     event      timer_1
     globalinit 1
     last_timer 1
     sleeptimer -1
     timerdev   
     timerevent timer_1
     triggerDev
     timerevents:
       timer_1
     timereventsState:
       timer_1
     triggerEvents:
       timer_1
     triggerEventsState:
       timer_1
   interval:
   intervalfunc:
   localtime:
     0          1605693900
   readings:
     all         MQTT2_Aquarium:Dimmer 20
   realtime:
     0          11:05:00
   time:
     0          11:05:00
   timeCond:
     0          0
   timer:
     0          0
   timers:
     0           0
   triggertime:
     1605693900:
       localtime  1605693900
       hash:
   uiState:
   uiTable:
Attributes:

Beta-User

Mehrfach falscher Forenbereich...

Vermutlich ist es ein Syntaxproblem mit DOIF. Da ich das nicht kenne, "dasselbe in at":
define a1_aquarium_dimmer_1105 at *11:05 { if(ReadingsNum('MQTT2_Aquarium','pct',0) == 20) { fhem("set MQTT2_Aquarium pct 30") } }

Ansonsten das Ding besser in den Anfängerbereich oder nach DOIF verschieben... (ja, kannst du selbst)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Damian

[MQTT2_Aquarium:Dimmer] == 20

In der Commandref sind solche Beispiele beschrieben.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Zander1st

Vielen Dank für die schnelle Antwort. Werde ich testen. Habe es verschoben.

Zander1st

#4
Danke Beta-User, Danke Damian,
habe es jetzt über ein doif hinbekommen. Der at hat auch funktioniert.
([MQTT2_Aquarium:pct] eq "0" and [07:00|1234567]) ((set MQTT2_Aquarium pct 5))
DOELSEIF ([10:00]) (set MQTT2_Aquarium pct 10)

Usw. Bis auf 100% hoch