NEWS
Test Adapter SmartControl 0.3.x-0.6.x Latest
-
Aktuelle Test Version 0.6.x Veröffentlichungsdatum 0.3.x ab 12.09.2020 (seit 23.09.20 im Latest Repository) Github Link https://github.com/Mic-M/ioBroker.smartcontrol Permanenter Forum-Link ioBroker Forum: Smart Control Neu mit 0.3.0
Breaking Changes
- (Mic-M) Entire adapter code refactored. Therefore, tests are required to verify if these massive changes do not affect the adapter functionality. However, none of your existing adapter configuration should be lost and will be kept if you upgrade from 0.2.0+. But please check ALL of your configuration, since new options were added which
can have an effect to your existing configuration. - (Mic-M) New feature: Implemented issue #22 - Motion sensors timeout, e.g. for Homematic sensors: Motion sensor timer will now start once a motion sensor is set to false. In previous adapter versions, it was started once set to true. Note: This change will cause that per your existing adapter configuration, the timer end will be reached later (so: once no motion detected any longer + the seconds you have set)
- (Mic-M) New feature: Time triggers - added options for additional conditions for 'any' or 'all'. issue #24
- (Mic-M) New feature: Zones > Execution - added options for additional conditions for 'any' or 'all'.
- (Mic-M) Many fixes under the hood
Was macht dieser Adapter?
In unserer Heim-Automation haben wir ja diverse Auslöser, z.B. Bewegungsmelder im Flur löst aus, ein Wandschalter wird gedrückt, oder eine bestimmte Zeit tritt ein (z.B. 30 Minuten nach Sonnenuntergang, oder Mo-Fr um 7:00, usw.), zu der wir was schalten möchten.
Dieser Adapter führt nun das ganze zusammen, also
- Auslöser lösen aus oder bestimmte Zeitpunkte (wie Mo-Fr um 7:00) treten ein
- Optional zusätzliche Bedingungen (jemand anwesend?, Fenster im Bad offen, Feiertag heute, usw.)
- Zu schaltende Zielgeräte
Das ganze führt man dann gemäß IFTTT in Zonen zusammen.
Ziel ist, hiermit viele JavaScripts und Blockly abzulösen und hierfür eine anwenderfreundliche Möglichkeit zu bieten.
Auszug aus den Features
- Auslöser: hier können Bewegungsmelder, Datenpunkte, oder Zeiten definiert werden. Es werden dabei auch Taster unterstützt.
- Smarte Bewegungsmelder-Schaltung: mehrere Bewegungsmelder pro Raum, Berücksichtung Helligkeit, automatischer Ausschalttimer (optional aber nicht gesetzt, falls Zielgeräte bereits vor Bewegung an waren), Optional Ignorierung Helligkeit falls Ausschalt-Timer noch läuft (damit auch wiederkehrende Bewegungen erfasst werden trotz Licht an), ...
- Pro definierter Zone können dann zur Ausführung detaillierte Zeitpläne mit Bedingungen hinterlegt werden.
- Unterstützung von Astro-Zeiten (z.B. Sonnenuntergang) mit "Offset", also Zeitdifferenz.
Ein paar Beispiel-Anwendungen (Use Cases):
- Flurlicht-Steuerung mit Bewegungsmeldern, Lichtschaltern, etc. (Ablösung Bewegungsmelder-Script)
- Kaffeemaschine täglich morgens einschalten. Mo-Fr um 6:30 Uhr, Sa/So um 8:00 Uhr, Feiertags auch um 8:00 Uhr. Aber nie einschalten, wenn keiner anwesend.
- Bad wird am Mo-Fr zwischen 7:00-9:00 betreten (falls nicht Feiertag): Licht an und das Radio einschalten. Falls nach 5 Minuten keine Bewegung mehr: ausschalten.
- Staubsaugerroboter-Integration
Bisherige Threads
Alle Erklärungen zum Adapter sind jeweils im 1. Beitrag:
- 18.08. - 12.09.2020: Test Adapter SmartControl 0.2.x GitHub
- 19.07. - 18.08.2020: Teste Adapter SmartControl 0.1.x-beta.x
- 10.07. - 19.07.2020 : Aufruf: Neuen SmartControl-Adapter 0.1.0-alpha.x testen
- 23.05. - 10.07.2020 : Planung neuer Adapter: Smart Control
- 25.04.2020 : Umfrage: Welchen Adapter soll ich als nächstes entwickeln?
FAQ / Use Cases (Anwendungs-Fälle/Szenarien)
https://forum.iobroker.net/topic/36237/smart-control-adapter-faq-use-cases
Adapter-Anleitung / Dokumentation
Diese ist direkt und ohne Umwege in den Adapter-Optionen integriert, ihr werdet es sehen
Screenshots der Adapter-Optionen
Einstiegsseite:
Zonen:
Zonen - Button "Ausführung":
Definition der Zielgeräte:
Auslöser:
Wie Testen?
Infos zum Testen findest du im Adapter selbst:
Wohin mit Bugs / Fehlerberichten oder Erweiterungswünschen?
Da der Adapter noch jung und in fortlaufender Erweiterung ist, könnt ihr diese gerne hier posten (anders als es bereits in den Adapter-Optionen steht).
Wichtig: Fehler (Bugs) bitte immer aussagekräftig beschreiben, am besten mit
- Screenshots, soweit möglicherweise hilfreich für mich als Entwickler
- Log-Auszug (in Code-Tags)
- Adapter-Optionen-Export, sofern als sinnvoll erachtet, Diese bekommt ihr so: ganz oben rechts in den SmartControl-Adapter-Optionen den blauen Button mit dem "Pfeil nach unten" anklicken.
Was wurde alles seit der letzten Version geändert?
Siehe Change Log
- (Mic-M) Entire adapter code refactored. Therefore, tests are required to verify if these massive changes do not affect the adapter functionality. However, none of your existing adapter configuration should be lost and will be kept if you upgrade from 0.2.0+. But please check ALL of your configuration, since new options were added which
-
@Mic
Hallo Mic, ich war mal so mutig und habe das Update auf die 0.3 gemacht.Ich bekomme aber bei den Bewegungsmeldern immer errors:
smartcontrol.0 2020-09-12 21:12:05.160 error (21696) [asyncSetZoneTimer_motion] – No motion duration set for Wohnzimmer.Bewegungsmelder-Nord. smartcontrol.0 2020-09-12 21:11:42.590 error (21696) [asyncSetZoneTimer_motion] – No motion duration set for Wohnzimmer.Bewegungsmelder-Süd.
Ich setze Homematic IP Bewegungsmelder ein.
Ich habe auch beide Einstellungen unter weitere Optionen getestet, leider mit gleichem Ergebnis.
Ich lege hier einen Export der Einstellungen bei:
{ "_id": "system.adapter.smartcontrol.0", "common": { "name": "smartcontrol", "version": "0.3.0", "title": "Smart Control", "authors": [ "Mic-M <iob.micm@gmail.com>" ], "keywords": [ "smart", "control", "rooms", "groups", "motion sensors", "devices", "switches", "lights", "trigger", "schedule", "zones" ], "license": "MIT", "platform": "Javascript/Node.js", "main": "main.js", "icon": "smartcontrol.png", "enabled": true, "extIcon": "https://raw.githubusercontent.com/Mic-M/ioBroker.smartcontrol/master/admin/smartcontrol.png", "readme": "https://github.com/Mic-M/ioBroker.smartcontrol/blob/master/README.md", "loglevel": "info", "mode": "daemon", "type": "logic", "compact": true, "connectionType": "local", "dataSource": "poll", "materialize": true, "dependencies": [ { "js-controller": ">=1.4.2" } ], "plugins": { "sentry": { "dsn": "https://5a01dc9b29b846218064c49700c7a302@sentry.iobroker.net/94" } }, "installedFrom": "https://github.com/Mic-M/ioBroker.smartcontrol/tarball/55e7a381aad31225e0c95a03f145abda6bc666a4", "installedVersion": "0.3.0", "host": "iobroker" }, "native": { "motionIgnoreBriIfZoneOn": false, "fixNightNightEnd": true, "triggerStatesAck": "false", "limitTriggerInterval": "10", "extendedInfoLog": true, "fancy-filter-input": "", "executeZoneAlways": true, "tableTriggerMotion": [ { "active": true, "name": "Wohnzimmer.Bewegungsmelder-Süd", "stateId": "hm-rpc.2.000918A98BEDE4.1.MOTION", "duration": "", "notIfManual": true, "briStateId": "hm-rpc.2.000918A98BEDE4.1.ILLUMINATION", "briThreshold": "5" }, { "active": true, "name": "Wohnzimmer.Bewegungsmelder-Nord", "stateId": "hm-rpc.2.000918A98BEDEF.1.MOTION", "duration": "", "notIfManual": true, "briStateId": "hm-rpc.2.000918A98BEDEF.1.ILLUMINATION", "briThreshold": "5" } ], "tableTriggerDevices": [ { "active": true, "name": "Diele.Haustür offen", "userState": false, "stateId": "hm-rpc.1.NEQ1480228.1.STATE", "stateVal": "true", "targetOff": false, "isToggle": false }, { "active": true, "name": "Diele.Haustür geschlossen", "userState": false, "stateId": "hm-rpc.1.NEQ1480228.1.STATE", "stateVal": "false", "targetOff": false, "isToggle": false }, { "active": true, "name": "Garten.Aussentemperatur grösser 24", "userState": false, "stateId": "alias.0.Wetter.Weatherman.Aussentemperatur", "stateVal": ">24", "targetOff": false, "isToggle": false }, { "active": true, "name": "Wohnzimmer.Bewegungsmelder-Süd-aus", "userState": false, "stateId": "hm-rpc.2.000918A98BEDE4.1.MOTION", "stateVal": "false", "targetOff": true, "isToggle": false }, { "active": true, "name": "Wohnzimmer.Bewegungsmelder-Nord-aus", "userState": false, "stateId": "hm-rpc.2.000918A98BEDEF.1.MOTION", "stateVal": "false", "targetOff": true, "isToggle": false }, { "active": true, "name": "Helligkeit Aussen kleiner 70Lux", "userState": true, "stateId": "Aussen-Dunkel", "stateVal": "true", "targetOff": false, "isToggle": false }, { "active": true, "name": "Alarm erkannt", "userState": true, "stateId": "Alarm_erkannt", "stateVal": "true", "targetOff": false, "isToggle": false } ], "tableTriggerTimes": [ { "active": true, "name": "Every hour at minute 42", "time": "42 * * * *", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false }, { "active": true, "name": "At 22:00 on every day-of-week from Monday through Friday", "time": "0 22 * * 1-5", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false }, { "active": true, "name": "At 04:05 on Sunday", "time": "5 4 * * sun", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false }, { "active": true, "name": "30 Minutes after Sunset", "time": "sunset+30", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false }, { "active": true, "name": "Sonnenuntergang", "time": "sunset", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false }, { "active": true, "name": "Sonnenaufgang", "time": "sunrise", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false }, { "active": true, "name": "Sonnenaufgang_spät", "time": "sunrise+60", "additionalConditions": [], "additionalConditionsAll": false, "never": [], "neverAll": false, "targetOff": false } ], "tableTargetDevices": [ { "active": true, "name": "Wohnzimmer.Schreibtischlampe", "onState": "hm-rpc.1.OEQ0478213.1.STATE", "onValue": "true", "noTargetOnCheck": false, "offState": "hm-rpc.1.OEQ0478213.1.STATE", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Wohnzimmer.Ecklampe", "onState": "hm-rpc.1.OEQ0478215.1.STATE", "onValue": "true", "noTargetOnCheck": false, "offState": "hm-rpc.1.OEQ0478215.1.STATE", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Wohnzimmer.Tischlampe", "onState": "zigbee.0.14b457fffe2be766.state", "onValue": "true", "noTargetOnCheck": false, "offState": "zigbee.0.14b457fffe2be766.state", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Diele.Tischlampe", "onState": "hm-rpc.2.00021A498C79C0.3.STATE", "onValue": "true", "noTargetOnCheck": false, "offState": "hm-rpc.2.00021A498C79C0.3.STATE", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Garten.Teichlampe", "onState": "hm-rpc.1.OEQ0215986.3.STATE", "onValue": "true", "noTargetOnCheck": false, "offState": "hm-rpc.1.OEQ0215986.3.STATE", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Garten.Lampe-Weide", "onState": "hm-rpc.1.OEQ0215986.4.STATE", "onValue": "true", "noTargetOnCheck": false, "offState": "hm-rpc.1.OEQ0215986.4.STATE", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Wohnzimmer.Deckenbeleuchtung", "onState": "hm-rpc.1.OEQ0662984.1.LEVEL", "onValue": "80", "noTargetOnCheck": false, "offState": "hm-rpc.1.OEQ0662984.1.LEVEL", "offValue": "0", "noTargetOffCheck": false }, { "active": true, "name": "Wohnzimmer.Kronleuchter", "onState": "hm-rpc.1.OEQ1722527.1.LEVEL", "onValue": "80", "noTargetOnCheck": false, "offState": "hm-rpc.1.OEQ1722527.1.LEVEL", "offValue": "0", "noTargetOffCheck": false }, { "active": true, "name": "Schlafzimmer.Lampen", "onState": "hm-rpc.2.0008D8A99307C4.4.LEVEL", "onValue": "80", "noTargetOnCheck": false, "offState": "hm-rpc.2.0008D8A99307C4.4.LEVEL", "offValue": "0", "noTargetOffCheck": false }, { "active": true, "name": "Küche.Lampe", "onState": "hm-rpc.2.00085A499BE388.4.STATE", "onValue": "true", "noTargetOnCheck": false, "offState": "hm-rpc.2.00085A499BE388.4.STATE", "offValue": "false", "noTargetOffCheck": false }, { "active": true, "name": "Haus.Rollos-Hoch", "onState": "shuttercontrol.0.control.openAll", "onValue": "true", "noTargetOnCheck": false, "offState": "shuttercontrol.0.control.closeAll", "offValue": "true", "noTargetOffCheck": false } ], "tableCombinedDevices": [], "tableZones": [ { "active": true, "name": "Wohnzimmer an bei Motion1", "triggers": [ "Wohnzimmer.Bewegungsmelder-Nord" ], "targets": [ "Wohnzimmer.Schreibtischlampe" ], "offAfter": "180", "executeAlways": false, "executionJson": "[{\"active\":true,\"start\":\"sunset\",\"end\":\"08:00\",\"mon\":true,\"tue\":true,\"wed\":true,\"thu\":true,\"fri\":true,\"sat\":true,\"sun\":true,\"additionalConditions\":[\"Haus.Jemand Zuhause\"],\"never\":[]}]" }, { "active": true, "name": "Wohnzimmer an bei Motion2", "triggers": [ "Wohnzimmer.Bewegungsmelder-Süd" ], "targets": [ "Wohnzimmer.Ecklampe" ], "offAfter": "180", "executeAlways": false, "executionJson": "[{\"active\":true,\"start\":\"sunset\",\"end\":\"08:00\",\"mon\":true,\"tue\":true,\"wed\":true,\"thu\":true,\"fri\":true,\"sat\":true,\"sun\":true,\"additionalConditions\":[\"Haus.Jemand Zuhause\"],\"never\":[]}]" }, { "active": true, "name": "Wohnzimmer Dunkelheit", "triggers": [ "Helligkeit Aussen kleiner 70Lux" ], "targets": [ "Wohnzimmer.Schreibtischlampe", "Wohnzimmer.Ecklampe", "Wohnzimmer.Tischlampe" ], "offAfter": "", "executeAlways": false, "executionJson": "[{\"active\":true,\"start\":\"goldenHour-30\",\"end\":\"21:00\",\"mon\":true,\"tue\":true,\"wed\":true,\"thu\":true,\"fri\":true,\"sat\":true,\"sun\":true,\"additionalConditions\":[],\"never\":[\"Haus.Niemand Zuhause\"]}]" }, { "active": true, "name": "Diele #1", "triggers": [ "Diele.Haustür offen" ], "targets": [ "Diele.Tischlampe" ], "offAfter": "300", "executeAlways": false, "executionJson": "[{\"active\":true,\"start\":\"goldenHour-30\",\"end\":\"goldenHourEnd\",\"mon\":true,\"tue\":true,\"wed\":true,\"thu\":true,\"fri\":true,\"sat\":true,\"sun\":true,\"additionalConditions\":[],\"never\":[]}]" }, { "active": true, "name": "Haus.Alarm Licht an", "triggers": [ "Alarm erkannt" ], "targets": [ "Wohnzimmer.Schreibtischlampe", "Wohnzimmer.Ecklampe", "Wohnzimmer.Tischlampe", "Diele.Tischlampe", "Wohnzimmer.Deckenbeleuchtung", "Wohnzimmer.Kronleuchter", "Schlafzimmer.Lampen", "Küche.Lampe", "Haus.Rollos-Hoch" ], "offAfter": "", "executeAlways": true, "executionJson": "[]" } ], "tableConditions": [ { "active": true, "name": "Diele.Haustür geschlossen", "conditionState": "hm-rpc.1.NEQ1480228.1.STATE", "conditionValue": "false" }, { "active": true, "name": "Diele.Haustür offen", "conditionState": "hm-rpc.1.NEQ1480228.1.STATE", "conditionValue": "true" }, { "active": true, "name": "Haus.Jemand Zuhause", "conditionState": "0_userdata.0.Anwesenheit.Anwesenheit", "conditionValue": "true" }, { "active": true, "name": "Haus.Niemand Zuhause", "conditionState": "0_userdata.0.Anwesenheit.Anwesenheit", "conditionValue": "false" }, { "active": true, "name": "Diele.Tischlampe an", "conditionState": "hm-rpc.2.00021A498C79C0.3.STATE", "conditionValue": "true" }, { "active": true, "name": "Diele.Tischlampe aus", "conditionState": "hm-rpc.2.00021A498C79C0.3.STATE", "conditionValue": "false" }, { "active": true, "name": "Wohnzimmer.Schreibtischlampe an", "conditionState": "hm-rpc.1.OEQ0478213.1.STATE", "conditionValue": "true" }, { "active": true, "name": "Wohnzimmer.Schreibtischlampe aus", "conditionState": "hm-rpc.1.OEQ0478213.1.STATE", "conditionValue": "false" } ], "tableZoneExecution": [] } }
Edit:
Aktuell ist die Beleuchtung im Wohnzimmer an und damit wird der Grenzwert der beiden Bewegungsmelder überschritten. Vielleicht hängen die Errors damit zusammen. -
danke für den Fehlerbericht, ist ein Bug. Ich schau mir das gleich an.
-
@MartyBr
Sollte gefixt sein mit 0.3.1. Bitte testen und Feedback -
@Mic läuft bisher
kein Fehler im log -
@Mic
Ich habe das Update auf die 0.3.1 gemacht. Sieht bisher gut aus. Alle "Programme" laufen. Bisher auch keine errors mehr gesehen.
Vielen dank für die schnelle Rückmeldung. -
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Mic-M) New feature: Implemented issue #22 - Motion sensors timeout, e.g. for Homematic sensors: Motion sensor timer will now start once a motion sensor is set to false.
Hallo Mic,
hier mal mein erstes Feedback mit 0.3.1 zur Thematik Homematic (bei mir HMIP) Bewegungsmelder.Ich habe für mich zwei funktionierende Varianten herausgefunden.
-
Variante 1, Konfiguration über Bewegungsmelder
-
- Dazu eine Anmerkung. Der Timer Wert im Adapter muß größer sein als der im Bewegungsmelder eingestellte Wert, sonst wird auch das Licht ausgeschaltet, obwohl der Bewegungsmelder noch true ist. Ohne einen Timer bleibt das Licht an wenn der Bewegungsmelder auf false geht. (oder ich habe was falsch gemacht ?)
Hier die Einstellung des Bewegungsmelders
Hier die Adapter Konfiguration
-
-
Variante 2, Konfiguration über andere Auslöser
-
- Mit dieser Variante wir das Licht bei true des Bewegungsmelders eingeschaltet und bei false des Bewegungsmelders ausgeschaltet (eine Verzögerung ist ja quasi schon im Bewegungsmelder selbst eingestellt)
-
-
- auch ein Helligkeit Grenzwert (eigener Datenpunkt) ist bei dieser Variante möglich
-
-
Zielgerät HUE Lampe über command schalten (bei mir nur aus) funktioniert auch
-
Danke für Deine Mühe.
PS: Wenn ich den Adapter über den "Pfeilkreis" neu starte, dann habe ich das hier im Log. (eine error Meldung dabei)
host.iobroker 2020-09-13 11:14:47.622 info Do not restart adapter system.adapter.smartcontrol.0 because desired by instance host.iobroker 2020-09-13 11:14:47.621 error instance system.adapter.smartcontrol.0 terminated by request of the instance itself and will not be restarted, before user restarts it. smartcontrol.0 2020-09-13 11:14:47.090 warn (6283) Got terminate signal. Checking desired PID: 6299 vs own PID 6283 smartcontrol.0 2020-09-13 11:14:47.082 warn (6283) Got terminate signal. Checking desired PID: 0 vs own PID 6283
-
-
Hallo @Mic und alle anderen,
ich habe heute mal wieder etwas Zeit gefunden und wollte ein Blockly für meine Rollläden in den Adapter übernehmen. Dies hat auch wunderbar funktioniert, die Rollläden fahren zu der von mir gewünschten Zeit in die vorgegebene Position, alles Perfekt.
Nun wollte ich einen Schritt weiter gehen und das Ganze manuell schalten können und das funktioniert grundsätzlich auch. Egal ob mit einem Userstate oder mit einem Smartcontrolstate, wenn der Datenpunkt auf "true" gesetzt wird fahren die Rollläden runter, wenn der Datenpunkt auf "false" gesetzt wird bleibt alles wie es ist und wenn er wieder auf "true" gesetzt wird fahren die Rollläden wieder hoch. Wie bekommen ich es hin das die Rollläden bei "true" herunterfahren und bei "false" wieder hoch? Ich denke alle möglichen Dinge schon getestet zu haben und keines davon hat funktioniert, ich bin ratlos.Zielgeräte
Auslöser
Zonen
Konfiguration
system.adapter.smartcontrol.0.txt -
Hi @dslraser
danke fürs testen, gerade auch mit Homematic Sensoren
Freut mich, dass es soweit funktioniert.@dslraser sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
-
Variante 1, Konfiguration über Bewegungsmelder
-
- Dazu eine Anmerkung. Der Timer Wert im Adapter muß größer sein als der im Bewegungsmelder eingestellte Wert, sonst wird auch das Licht ausgeschaltet, obwohl der Bewegungsmelder noch true ist. Ohne einen Timer bleibt das Licht an wenn der Bewegungsmelder auf false geht. (oder ich habe was falsch gemacht ?)
Also eigentlich nicht mehr, jetzt ab Adapter-Version 0.3.x ist es so:
- Sobald jetzt eine Bewegung auslöst (Datenpunkt des BWM auf true), werden ggf. laufende Timer gelöscht und dann die Zielgeräte entsprechend eingeschaltet.
- Sobald keine Bewegung mehr (Datenpunkt des BWM geht auf false), bleibt erst mal alles an. Dann wird der Timer gestartet (z.B. 5 Sekunden), und nach diesen 5 Sekunden wird dann ausgeschaltet (es sei denn es gab zwischendurch eine neue Bewegung)
@dslraser sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
PS: Wenn ich den Adapter über den "Pfeilkreis" neu starte, dann habe ich das hier im Log. (eine error Meldung dabei)
host.iobroker 2020-09-13 11:14:47.621 error instance system.adapter.smartcontrol.0 terminated by request of the instance itself and will not be restarted, before user restarts it.
Dieser Fehler ist interessant, ich kann es leider im Moment nicht reproduzieren.
Hab allerdings jetzt in der Adapter onUnload() Funktion noch eine Abfrage einer Schedule-Variable auf undefined eingebaut, da diese ggf. undefined ist, um Fehler zu vermeiden.
Muss ich mal weiter beobachten.
Kommt das bei dir bei jedem Neustart mit dem "Pfeilkreis"? Kommt das auch beim Stoppen? -
-
Hi @MichMein
danke fürs testen.
@MichMein sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Wie bekommen ich es hin das die Rollläden bei "true" herunterfahren und bei "false" wieder hoch? Ich denke alle möglichen Dinge schon getestet zu haben und keines davon hat funktioniert, ich bin ratlos.
Spontan würde ich sagen:
2 Auslöser anlegen. Also einen zum hochfahren (false) und einen zum herunterfahren (true). -
Sorry, im letzten Thread ist bei mir leider dein Beitrag vom 22.08. untergegangen:
Hatte heute weitere Geräte ins System integriert, dabei einen Sonoff umbenannt. , also direkt das Gerät von Schlafzimmer auf Schlafzimmerlicht.
Dabei hatte ich gar nicht an den Adapter gedacht und der Adapter auch nicht an mich es kam nämlich gar keine Fehler/Warnmeldung, dass das Gerät nicht mehr existiert.
Aufgefallen ist es erst, nachdem ich die Instanz bearbeiten wollte/hatte. Erst dann erschien es im Log.Grundsätzlich überprüft der Adapter initial alle Datenpunkte beim (Neu)Start der Adapter-Instanz. Dann wird nur noch geprüft, wenn geschaltet wird.
Welches Verhalten würdest du denn erwarten, falls ein Datenpunkt gelöscht/umbenannt wird, während der Adapter läuft?Natürlich wollte ich auf die schnelle, eine Kleinigkeit in den Einstellungen anpassen....am Handy wohlgemerkt, jedoch ist das leider ein Ding der Unmöglichkeit. Da die Spaltengrößen in keinem Verhältnis stehen. Durch das scrollen in den pulldown Menüs, hab ich dadurch sämtliche Haken gesetzt und alles mögliche vestellt.
Letztendlich bin ich auf abbrechen nicht gespeichert, damit eben keine Änderung stattfindet, um es am PC einzustellen. Hat leider auch nicht funktioniert. Einige Fehleinstellungen wurden trotzdem übernommen.Ja, die Adapter-Konfiguration ist nicht für Smartphones angepasst. Ich denke, das betrifft so einige Adapter, grad mit vielen Einstellungen, Tabellen, usw.
Werde zukünftig zusehen, mehr Einstellungen auch über Datenpunkte machen zu können, damit dann eine bessere Integration in VIS etc. möglich ist.
Dass hier trotz "abbrechen" wohl dennoch gespeichert wurde, ist ärgerlich, kann ich aber so leider nicht reproduzieren... -
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Kommt das bei dir bei jedem Neustart mit dem "Pfeilkreis"? Kommt das auch beim Stoppen?
ja.
Und auch manchmal wenn ich im Adapter etwas verändert habe und abspeichere. (dann wird ja auch neu gestartet, oder ?) -
@dslraser sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
(dann wird ja auch neu gestartet, oder ?)
Ja genau.
Strange...
Was setzt du denn ein, also- Version node.js
- Version js-controller
- Linux oder Windows
-
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Version node.js
12.irgendwas
Version js-controller
latest (ich glaube 3.16 ich bin gerade unterwegs und nur am Handy)
Linux oder Windows
Docker (buanet image auf Synology, dann wohl Linux)
also eigentlich alles aktuell (latest)
-
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
initial alle Datenpunkte beim (Neu)Start der Adapter-Instanz
erstmal vielen Dank für die Rückmeldung
Wenn du so direkt fragst ja erwartet hätte ich, das im log eine Warnmeldung erscheint, da es bei grösseren Installationen dann schon recht umfangreich sein kann und man eben in diesem Moment nicht unbedingt an alles denkt, wie/wo/was eingebunden ist.
Änder ich ein Device, wie in dem Fall, denke ich zwar an eventuell damit verbundene Scripte, die ich anpassen muss aber nicht an den Adapter, wobei javascript dann eh eine Warnmeldung ins log schreiben würde, wenn ein script nicht mehr passt, zwecks fehlendem DP
Natürlich könnte man nun hergehen und das ganze mittels Alias ausmerzen, bleibt aber trotzdem das Problem, wenn dann mal ein Alias gelöscht oder umbenannt wird.@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Dass hier trotz "abbrechen" wohl dennoch gespeichert wurde, ist ärgerlich, kann ich aber so leider nicht reproduzieren...
war zum Glück nichts lebensbedrohliches vielleicht hing es auch mit der Verbindung/Empfang am Handy zusammen
-
-
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Dieser Fehler ist interessant, ich kann es leider im Moment nicht reproduzieren.
Hab allerdings jetzt in der Adapter onUnload() Funktion noch eine Abfrage einer Schedule-Variable auf undefined eingebaut, da diese ggf. undefined ist, um Fehler zu vermeiden.
Muss ich mal weiter beobachten.
Kommt das bei dir bei jedem Neustart mit dem "Pfeilkreis"? Kommt das auch beim Stoppen?Ich bin jetzt wieder kurz am Rechner. Ich will meine Variante 1 nochmal probieren.
Ich habe mehrere Änderungen im Adapter gemacht und zwischendurch gespeichert. Dann kommt das im Log.host.iobroker 2020-09-13 14:00:10.877 info Do not restart adapter system.adapter.smartcontrol.0 because desired by instance host.iobroker 2020-09-13 14:00:10.877 error instance system.adapter.smartcontrol.0 terminated by request of the instance itself and will not be restarted, before user restarts it. smartcontrol.0 2020-09-13 14:00:10.343 warn (6509) Got terminate signal. Checking desired PID: 6539 vs own PID 6509 smartcontrol.0 2020-09-13 14:00:10.334 warn (6509) Got terminate signal. Checking desired PID: 0 vs own PID 6509 host.iobroker 2020-09-13 14:00:10.330 info instance system.adapter.smartcontrol.0 started with pid 6539 daswetter.0 2020-09-13 14:00:01.451 info (6524) starting. Version 3.0.1 in /opt/iobroker/node_modules/iobroker.daswetter, node: v12.18.3, js-controller: 3.1.6 host.iobroker 2020-09-13 14:00:00.043 info instance system.adapter.daswetter.0 started with pid 6524 host.iobroker 2020-09-13 13:58:49.965 info Do not restart adapter system.adapter.smartcontrol.0 because desired by instance host.iobroker 2020-09-13 13:58:49.964 error instance system.adapter.smartcontrol.0 terminated by request of the instance itself and will not be restarted, before user restarts it. smartcontrol.0 2020-09-13 13:58:49.427 warn (6494) Got terminate signal. Checking desired PID: 6509 vs own PID 6494 smartcontrol.0 2020-09-13 13:58:49.419 warn (6494) Got terminate signal. Checking desired PID: 0 vs own PID 6494 host.iobroker 2020-09-13 13:58:49.411 info instance system.adapter.smartcontrol.0 started with pid 6509 host.iobroker 2020-09-13 13:57:47.229 info Do not restart adapter system.adapter.smartcontrol.0 because desired by instance host.iobroker 2020-09-13 13:57:47.228 error instance system.adapter.smartcontrol.0 terminated by request of the instance itself and will not be restarted, before user restarts it. smartcontrol.0 2020-09-13 13:57:46.704 warn (6479) Got terminate signal. Checking desired PID: 6494 vs own PID 6479 smartcontrol.0 2020-09-13 13:57:46.694 warn (6479) Got terminate signal. Checking desired PID: 0 vs own PID 6479 host.iobroker 2020-09-13 13:57:46.691 info instance system.adapter.smartcontrol.0 started with pid 6494 host.iobroker 2020-09-13 13:57:38.441 info Do not restart adapter system.adapter.smartcontrol.0 because desired by instance host.iobroker 2020-09-13 13:57:38.440 error instance system.adapter.smartcontrol.0 terminated by request of the instance itself and will not be restarted, before user restarts it. smartcontrol.0 2020-09-13 13:57:37.900 warn (6299) Got terminate signal. Checking desired PID: 6479 vs own PID 6299 smartcontrol.0 2020-09-13 13:57:37.892 warn (6299) Got terminate signal. Checking desired PID: 0 vs own PID 6299
-
@Mic was mir noch aufgefallen ist bzw fragen wollte
da ich in der Vergangenheit, mir schon bestimmte Sachen anlegen wollte ( was technisch aber noch nicht vorhanden ist)
schmeisst mir der Adapter aber dann error wegen falsch konfiguriert, obwohl der Haken deaktiviert ist,
also greift scheinbar dieses nicht, bzw dann wohl nur, wenn alle Pflichtfelder ausgefüllt sind
-
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Also eigentlich nicht mehr, jetzt ab Adapter-Version 0.3.x ist es so:
Sobald jetzt eine Bewegung auslöst (Datenpunkt des BWM auf true), werden ggf. laufende Timer gelöscht und dann die Zielgeräte entsprechend eingeschaltet.
Sobald keine Bewegung mehr (Datenpunkt des BWM geht auf false), bleibt erst mal alles an. Dann wird der Timer gestartet (z.B. 5 Sekunden), und nach diesen 5 Sekunden wird dann ausgeschaltet (es sei denn es gab zwischendurch eine neue Bewegung)Funktioniert doch genau so wie Du es schreibst. Dann hatte ich wohl doch noch irgendwas falsch eingestellt. Getestet mit einer Sekunde Verzögerung.
-
@dslraser sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
@Mic sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
Version node.js
12.irgendwas
Version js-controller
latest (ich glaube 3.16 ich bin gerade unterwegs und nur am Handy)
Linux oder Windows
Docker (buanet image auf Synology, dann wohl Linux)
also eigentlich alles aktuell (latest)
ok, also ähnlich wie meine Produktivumgebung, ich hab mal in discord gefragt. muss das mal weiter beobachten.
@crunchip sagte in Test Adapter SmartControl 0.3.x GitHub (ab 12.09.20):
@dslraser @Mic diese erwähnte error Meldung hatte ich auch schon das ein oder andere mal
Linux alles im latest und aktuell
nodejs v 12.18.3
js-controller 3.1.6
proxmox vmDanke, also wie bei mir... Hmm...