NEWS
Test Adapter SmartControl 0.3.x-0.6.x Latest
-
@hetti72 said in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
@da_Woody sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
@Mic said in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Auf welche Anfrage von oben beziehst du dich denn?
ich mein das mit sunset, aber nicht vor 2300. in meinen augen übertieben. dann nehm ich gleich 2300. selbst im hochsommer wird sunset nicht nach 2300 uhr sein.
Das Thema ist zwar erledigt, aber es ging (oder geht) in meinem Fall nicht um den Sonnenuntergang (sunset) sondern um den beginn der Nacht (night) das sind zwei verschiedene Astro Zeiten. Hatte ich in einem anderen Post auch schonmal erläutert.
sollte ich da irgendwas durcheinander gebracht haben sorry!
-
@jay-jey du hast bei den Auslösern einen Fehler drin, die lux DP passen nicht zum presence DP, oder ist das ein separater Lichtsensor
Zielgerät, schaltest du groups.4.on, kann es sein, das du das Arbeitszimmer Licht auch in der Gruppe mit drin hast? -
@crunchip Okay das mit den DP muss ich dann wohl falsch verstanden habe ich hatte es aus der Beschreibung (siehe unten) so verstanden:
DP presence: Timer fürs ausschalten
DP lux: wenn zu hell dann kein Licht anDie Gruppen sind soweit ich das sehe richtig definiert. Zudem würde dann nicht nur ein Eintrag im Log erscheinen:
also nur:
Trigger 'Motion.Wohnzimmer' activated Zone 'Wohnzimmer'.
und nicht ein paar Millisekunden später:
Trigger 'Motion.Arbeitszimmer_lux_deconz' activated Zone 'Arbeitszimmer_deconz'.https://github.com/Mic-M/ioBroker.smartcontrol/blob/master/admin/doc-md/table-trigger-motion_de.md
-
Ich schau mir das gerne an, aber brauche dazu bitte:
- Setze Log-Level des Adapters auf "Debug", dann reproduziere den Fehler und stelle die Logausgabe in Code-Tags hier ein. ioBroker schneidet Log-Zeilen ab, daher gehst du zum kopieren bitte direkt ins Logfile (durch Klicken auf "Download Log").
- Poste hier außerdem deinen Adapter-Optionen-Export: in den Adapter-Optionen oben rechts den blauen Button "Pfeil nach unten" anklicken.
-
@Mic
Use-Case: Ein BWM der bei Bewegung ein Display einschaltet und wenn zusätzlich ein weiterer Auslöser (hier Rollladen <=20%) eintritt soll eine Sockelbeleuchtung angehen.
So habe ich es versucht:
Die Sockelbeleuchtung geht dann aus, das Display geht aber nie aus.
Im Log sieht man das der Timer für Display nicht ausgeschaltet wird:smartcontrol.0 2020-09-23 20:57:42.165 info (22396) Timer 'Motion', trigger 'Kueche.Bewegung', target(s) 'Kueche.Sockelbeleuchtung': - Turned off per 20s timer. smartcontrol.0 2020-09-23 20:57:22.160 info (22396) Motion sensor 'Kueche.Bewegung', zone 'Kueche Sockelbeleuchtung': No more motion, so we set 20s timer. smartcontrol.0 2020-09-23 20:57:22.159 info (22396) Motion sensor 'Kueche.Bewegung', zone 'Kueche Display': No more motion, so we set 20s timer. smartcontrol.0 2020-09-23 20:56:06.298 info (22396) Trigger 'Kueche.Bewegung', Zone 'Kueche Sockelbeleuchtung': Timer of 20s will be set to turn off once no more motion recognized. smartcontrol.0 2020-09-23 20:56:06.298 info (22396) Trigger 'Kueche.Bewegung' activated Zone 'Kueche Sockelbeleuchtung'. Turned on: Kueche.Sockelbeleuchtung. smartcontrol.0 2020-09-23 20:56:06.247 info (22396) Trigger 'Kueche.Bewegung', Zone 'Kueche Display': Timer of 20s will be set to turn off once no more motion recognized. smartcontrol.0 2020-09-23 20:56:06.246 info (22396) Trigger 'Kueche.Bewegung' activated Zone 'Kueche Display'. Turned on: Kueche.Display.
Deaktiviere ich die 2. Zone funktioniert der Ablauf mit dem Display.
Bug oder anders lösen?
-
@FredF sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Ein BWM der bei Bewegung ein Display einschaltet und wenn zusätzlich ein weiterer Auslöser (hier Rollladen <=20%) eintritt soll eine Sockelbeleuchtung angehen.
Kannst du bitte wenn zusätzlich ein weiterer Auslöser ... eintritt spezifizieren:
- muss das gleichzeitig erfüllt sein bei Auslösung
- oder tritt das irgendwann später ein.
-
Falls ersteres, müssen wohl "2. ZUSÄTZLICHE BEDINGUNGEN" erweitert werden, dass hier - wie bei "Andere Auslöser" auch - Vergleichsoperatoren möglich sind.
Möglicherweise eh sinnvoll?
-
@Mic Hallo,
so hab jetzt das Szenario nochmal nachgestellt:
hier das Log:
2020-09-24 07:45:14.997 - info: smartcontrol.0 (3440) 'zoneOff' 300s timer still running 237s. We stop it and set new to 300s. 2020-09-24 07:45:26.365 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.sensors.00158d00031b4dca.presence' change: ack 'true' - "Real" adapter state (deconz.0.sensors.00158d00031b4dca.presence) requires ack:true 2020-09-24 07:45:26.365 - debug: smartcontrol.0 (3440) State Change: Trigger of tableTriggerMotion or tableTriggerDevices - Subscribed state 'deconz.0.sensors.00158d00031b4dca.presence' changed. 2020-09-24 07:45:26.366 - debug: smartcontrol.0 (3440) === check schedule conditions === 2020-09-24 07:45:26.366 - debug: smartcontrol.0 (3440) 'Wohnzimmer' - Current time '07:45' *is* within schedule times (start: '00:00', end: '24:00). 2020-09-24 07:45:26.366 - debug: smartcontrol.0 (3440) Wohnzimmer - Current weekday 'thu' *is* matching Execution table row. 2020-09-24 07:45:26.366 - debug: smartcontrol.0 (3440) Motion.Wohnzimmer: No extra condition(s) in schedule, so we return "true" to continue. 2020-09-24 07:45:26.366 - debug: smartcontrol.0 (3440) === check schedule conditions === 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) 'Arbeitszimmer_deconz' - Current time '07:45' *is* within schedule times (start: '00:00', end: '24:00). 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) Arbeitszimmer_deconz - Current weekday 'thu' *is* matching Execution table row. 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) Motion.Arbeitszimmer_lux_deconz: No extra condition(s) in schedule, so we return "true" to continue. 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) Motion.Wohnzimmer: No extra condition(s) in schedule, so we return "true" to continue. 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) Motion.Arbeitszimmer_lux_deconz: No extra condition(s) in schedule, so we return "true" to continue. 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) Zone 'Wohnzimmer' - execution table row *is* meeting conditions 2020-09-24 07:45:26.367 - debug: smartcontrol.0 (3440) 1 rows in Zones table for trigger 'Motion.Wohnzimmer' found and assigned execution table rows fetched successfully. 2020-09-24 07:45:26.368 - debug: smartcontrol.0 (3440) Zone 'Arbeitszimmer_deconz' - execution table row *is* meeting conditions 2020-09-24 07:45:26.368 - debug: smartcontrol.0 (3440) 1 rows in Zones table for trigger 'Motion.Arbeitszimmer_lux_deconz' found and assigned execution table rows fetched successfully. 2020-09-24 07:45:26.392 - debug: smartcontrol.0 (3440) Trigger [Motion.Wohnzimmer] Brightness of 0 is < threshold of 100, so we continue. 2020-09-24 07:45:26.393 - debug: smartcontrol.0 (3440) Trigger [Motion.Arbeitszimmer_lux_deconz] Brightness of 67 is < threshold of 400, so we continue. 2020-09-24 07:45:26.415 - info: smartcontrol.0 (3440) Trigger 'Motion.Arbeitszimmer_lux_deconz' activated Zone 'Arbeitszimmer_deconz'. However, devices 'Arbeitszimmer_deconz' not turned on as these are already on. 2020-09-24 07:45:26.416 - info: smartcontrol.0 (3440) Trigger 'Motion.Arbeitszimmer_lux_deconz', Zone 'Arbeitszimmer_deconz': Timer of 300s will be set to turn off once no more motion recognized. 2020-09-24 07:45:26.418 - info: smartcontrol.0 (3440) 'zoneOff' 300s timer for zone 'Arbeitszimmer_deconz' initially started. 2020-09-24 07:45:26.426 - debug: smartcontrol.0 (3440) State Change: IGNORED – state 'deconz.0.groups.4.on' change: ack 'false' - "Real" adapter state (deconz.0.groups.4.on) requires ack:true 2020-09-24 07:45:26.426 - info: smartcontrol.0 (3440) Trigger 'Motion.Wohnzimmer' activated Zone 'Wohnzimmer'. Turned on: Wohnzimmer. 2020-09-24 07:45:26.427 - info: smartcontrol.0 (3440) Trigger 'Motion.Wohnzimmer', Zone 'Wohnzimmer': Timer of 300s will be set to turn off once no more motion recognized. 2020-09-24 07:45:26.429 - info: smartcontrol.0 (3440) 'zoneOff' 60s timer for zone 'Wohnzimmer' initially started. 2020-09-24 07:45:26.434 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.sensors.00158d00031b4dca.presence' change: ack 'true' - "Real" adapter state (deconz.0.sensors.00158d00031b4dca.presence) requires ack:true 2020-09-24 07:45:26.434 - debug: smartcontrol.0 (3440) State Change: Trigger of tableTriggerMotion or tableTriggerDevices - Subscribed state 'deconz.0.sensors.00158d00031b4dca.presence' changed. 2020-09-24 07:45:26.435 - info: smartcontrol.0 (3440) Trigger 'Motion.Wohnzimmer' was already activated 0.07 seconds ago and is ignored. Must be at least 2 seconds. 2020-09-24 07:45:26.435 - info: smartcontrol.0 (3440) Trigger 'Motion.Arbeitszimmer_lux_deconz' was already activated 0.07 seconds ago and is ignored. Must be at least 2 seconds. 2020-09-24 07:45:26.608 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.groups.4.on' change: ack 'true' - "Real" adapter state (deconz.0.groups.4.on) requires ack:true 2020-09-24 07:45:26.608 - debug: smartcontrol.0 (3440) State Change: tableTargetDevices: on/off states - Subscribed state 'deconz.0.groups.4.on' changed. 2020-09-24 07:45:26.613 - debug: smartcontrol.0 (3440) State Change: IGNORED – state 'smartcontrol.0.targetDevices.Wohnzimmer' change: ack 'true' - Adapter Instance State (smartcontrol.0) requires ack:false 2020-09-24 07:45:26.614 - debug: smartcontrol.0 (3440) State 'deconz.0.groups.4.on' changed to 'true' -> 'smartcontrol.0.targetDevices.Wohnzimmer' set to true. 2020-09-24 07:45:26.878 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.groups.4.on' change: ack 'true' - "Real" adapter state (deconz.0.groups.4.on) requires ack:true 2020-09-24 07:45:26.878 - debug: smartcontrol.0 (3440) State Change: tableTargetDevices: on/off states - Subscribed state 'deconz.0.groups.4.on' changed. 2020-09-24 07:45:26.888 - debug: smartcontrol.0 (3440) State Change: IGNORED – state 'smartcontrol.0.targetDevices.Wohnzimmer' change: ack 'true' - Adapter Instance State (smartcontrol.0) requires ack:false 2020-09-24 07:45:26.889 - debug: smartcontrol.0 (3440) State 'deconz.0.groups.4.on' changed to 'true' -> 'smartcontrol.0.targetDevices.Wohnzimmer' set to true. 2020-09-24 07:45:26.924 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.groups.4.on' change: ack 'true' - "Real" adapter state (deconz.0.groups.4.on) requires ack:true 2020-09-24 07:45:26.924 - debug: smartcontrol.0 (3440) State Change: tableTargetDevices: on/off states - Subscribed state 'deconz.0.groups.4.on' changed. 2020-09-24 07:45:26.928 - debug: smartcontrol.0 (3440) State Change: IGNORED – state 'smartcontrol.0.targetDevices.Wohnzimmer' change: ack 'true' - Adapter Instance State (smartcontrol.0) requires ack:false 2020-09-24 07:45:26.970 - debug: smartcontrol.0 (3440) State 'deconz.0.groups.4.on' changed to 'true' -> 'smartcontrol.0.targetDevices.Wohnzimmer' set to true. 2020-09-24 07:45:26.997 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.groups.4.on' change: ack 'true' - "Real" adapter state (deconz.0.groups.4.on) requires ack:true 2020-09-24 07:45:26.998 - debug: smartcontrol.0 (3440) State Change: tableTargetDevices: on/off states - Subscribed state 'deconz.0.groups.4.on' changed. 2020-09-24 07:45:27.011 - debug: smartcontrol.0 (3440) State Change: IGNORED – state 'smartcontrol.0.targetDevices.Wohnzimmer' change: ack 'true' - Adapter Instance State (smartcontrol.0) requires ack:false 2020-09-24 07:45:27.012 - debug: smartcontrol.0 (3440) State 'deconz.0.groups.4.on' changed to 'true' -> 'smartcontrol.0.targetDevices.Wohnzimmer' set to true. 2020-09-24 07:45:27.063 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.groups.4.on' change: ack 'true' - "Real" adapter state (deconz.0.groups.4.on) requires ack:true 2020-09-24 07:45:27.063 - debug: smartcontrol.0 (3440) State Change: tableTargetDevices: on/off states - Subscribed state 'deconz.0.groups.4.on' changed. 2020-09-24 07:45:27.069 - debug: smartcontrol.0 (3440) State 'deconz.0.groups.4.on' changed to 'true' -> 'smartcontrol.0.targetDevices.Wohnzimmer' set to true. 2020-09-24 07:45:27.069 - debug: smartcontrol.0 (3440) State Change: IGNORED – state 'smartcontrol.0.targetDevices.Wohnzimmer' change: ack 'true' - Adapter Instance State (smartcontrol.0) requires ack:false 2020-09-24 07:45:37.098 - debug: smartcontrol.0 (3440) State Change: ACCEPTED – state 'deconz.0.sensors.00158d0002f043f1.presence' change: ack 'true' - "Real" adapter state (deconz.0.sensors.00158d0002f043f1.presence) requires ack:true 2020-09-24 07:45:37.099 - debug: smartcontrol.0 (3440) State Change: Trigger of tableTriggerMotion or tableTriggerDevices - Subscribed state 'deconz.0.sensors.00158d0002f043f1.presence' changed. 2020-09-24 07:45:37.099 - debug: smartcontrol.0 (3440) === check schedule conditions ===
und hier die Config. system.adapter.smartcontrol.0.json
Ach ja und noch eine Verständnissfrage:
ich habe im Arbeitszimmer zwei Bewegungsmelder, weil der eine mich nicht unbedingt erfasst wenn ich am Schreibtisch sitze. Ich dachte das wäre eine ODER Verknüpfung. Jetzt habe ich aber festgestellt, dass es eine UND Verknüpfung ist. Also erst wenn beide eine Bewegung melden geht das Licht an. Ist das richtig so? Falls ja, wie ändere ich das, also das wenn der eine oder der andere der Sensor eine Bewegung meldet, das Licht angeht. -
@Mic So sieht das bisherige Skript aus:
var timeout, timeout2; on({id: "alias.0.EG_Kueche.Sensoren.Bewegungsmelder"/*EG Kueche Bewegung Kuehlschrank*/, change: "any"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if ((obj.state ? obj.state.val : "") && getState("alias.0.EG_Kueche.Rollladen.Position").val <= '20') { (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})(); setState("alias.0.EG_Kueche.Licht.Sockelbeleuchtung"/*EG Kueche Sockelbeleuchtung*/, true); } else if (!(obj.state ? obj.state.val : "")) { timeout = setTimeout(function () { setState("alias.0.EG_Kueche.Licht.Sockelbeleuchtung"/*EG Kueche Sockelbeleuchtung*/, false); }, 240000); } if ((obj.state ? obj.state.val : "")) { (function () {if (timeout2) {clearTimeout(timeout2); timeout2 = null;}})(); setState("alias.0.EG_Kueche.Steckdosen.Display"/*EG Kueche Display*/, true); } else { timeout2 = setTimeout(function () { setState("alias.0.EG_Kueche.Steckdosen.Display"/*EG Kueche Display*/, false); }, 240000); } });
-
wäre es viel aufwand, einen datenpunkt bereitzustellen, der eine art log der letzten schaltvorgänge als json angibt.
im setting evtl einzustellen, wieviele logeinträge(schaltvorgänge) vorhanden sein sollen z.b 30 oder 50 und/oder ob überhaupt diese schaltvorgänge geloggt werden sollen
-
@liv-in-sky sagte in Test Adapter SmartControl 0.3.x Latest:
ob überhaupt diese schaltvorgänge geloggt werden sollen
Dem Wunsch schließe ich mich an
-
Könnte mit dem Adapter von einem Taster der true/false liefert short und long press ausgewertet werden?
Vielleicht aber zu speziell, oder?
Blockly:
Javascript: -
@liv-in-sky sagte in Test Adapter SmartControl 0.3.x Latest:
wäre es viel aufwand, einen datenpunkt bereitzustellen, der eine art log der letzten schaltvorgänge als json angibt.
im setting evtl einzustellen, wieviele logeinträge(schaltvorgänge) vorhanden sein sollen z.b 30 oder 50 und/oder ob überhaupt diese schaltvorgänge geloggt werden sollen
@FredF sagte in Test Adapter SmartControl 0.3.x Latest:
@liv-in-sky sagte in Test Adapter SmartControl 0.3.x Latest:
ob überhaupt diese schaltvorgänge geloggt werden sollen
Dem Wunsch schließe ich mich an
Hi zusammen,
klar, lässt sich machen Könnt ihr bitte spezifizieren:
- Welche Schaltvorgänge sollen geloggt werden, also sobald eine Zone auslöst?
- Was soll ins JSON-Log, z.B. (
timestamp:01234567890, msg:"Zone 'Badezimmer' successfully triggered"
--> also: welche Infos (Zeitstempel, etc.) sowie welcher Text
-
-
@Mic sagte in Test Adapter SmartControl 0.3.x Latest:
@FredF sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Ein BWM der bei Bewegung ein Display einschaltet und wenn zusätzlich ein weiterer Auslöser (hier Rollladen <=20%) eintritt soll eine Sockelbeleuchtung angehen.
Kannst du bitte wenn zusätzlich ein weiterer Auslöser ... eintritt spezifizieren:
- muss das gleichzeitig erfüllt sein bei Auslösung
- oder tritt das irgendwann später ein.
Falls ersteres, müssen wohl "2. ZUSÄTZLICHE BEDINGUNGEN" erweitert werden, dass hier - wie bei "Andere Auslöser" auch - Vergleichsoperatoren möglich sind.
Möglicherweise eh sinnvoll?
@FredF sagte in Test Adapter SmartControl 0.3.x Latest:
@Mic So sieht das bisherige Skript aus:
Ich habe ein Enhancement Request aufgemacht: https://github.com/Mic-M/ioBroker.smartcontrol/issues/28
-
@FredF sagte in Test Adapter SmartControl 0.3.x Latest:
Könnte mit dem Adapter von einem Taster der true/false liefert short und long press ausgewertet werden?
Vielleicht aber zu speziell, oder?
Blockly:
Javascript:Scheint auf den ersten Blick schon sehr speziell zu sein, der Adapter braucht hier eigentlich konkrete Auslöser....
-
Update 0.3.9
- (Mic-M) New feature: Table "Additional Conditions" is now allowing comparators like
> 30
,<= 25
etc. in column 'State value'. See issue #28
Nun kann man unter ZUSÄTZLICHE BEDINGUNGEN auch Vergleichsoperatoren nutzen:
Also: z.B. Helligkeit soll größer als 100 sein (falls Auslöser kein Bewegungsmelder, da wird das ja eh optional geprüft):
- (Mic-M) New feature: Table "Additional Conditions" is now allowing comparators like
-
Hallo, kein Update möglich.
-
@sigi234 sehe ich auch gerade bei mir, selbe Bild
-
@Mic sagte in Test Adapter SmartControl 0.3.x Latest:
klar, lässt sich machen Könnt ihr bitte spezifizieren:
Welche Schaltvorgänge sollen geloggt werden, also sobald eine Zone auslöst?
Was soll ins JSON-Log, z.B. (timestamp:01234567890, msg:"Zone 'Badezimmer' successfully triggered"
--> also: welche Infos (Zeitstempel, etc.) sowie welcher Texthallo @mic
ja genau sowas - könnte man auch noch den auslöser und das zielgerät reinschreiben ?bei der "msg" bin ich mir nicht sicher - braucht man eigentlich nicht - es gibt ja nur triggert oder ausgeführt ?