NEWS
Tasmota Taster und NSPanel Relais
-
Ich würde gerne mit einem (externen) Taster das Relais am NSPanel schalten. Der Code unten funktioniert leider nicht gewünscht,. Wo mache ich da den Fehler?
on({ id: [].concat(['mqtt.0.stat.tasmota_Dxxxxx.POWER1']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; let newState = !getState('alias.0.NSPanel.1.Licht.WZ.Decke_Schreibtisch.ON_ACTUAL').val; setState('alias.0.NSPanel.1.Licht.WZ.Decke_Schreibtisch.SET', newState); console.log(newState); });Anm: im LOG taucht ein "true" auf
-
Ich würde gerne mit einem (externen) Taster das Relais am NSPanel schalten. Der Code unten funktioniert leider nicht gewünscht,. Wo mache ich da den Fehler?
on({ id: [].concat(['mqtt.0.stat.tasmota_Dxxxxx.POWER1']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; let newState = !getState('alias.0.NSPanel.1.Licht.WZ.Decke_Schreibtisch.ON_ACTUAL').val; setState('alias.0.NSPanel.1.Licht.WZ.Decke_Schreibtisch.SET', newState); console.log(newState); });Anm: im LOG taucht ein "true" auf
-
Ich würde gerne mit einem (externen) Taster das Relais am NSPanel schalten. Der Code unten funktioniert leider nicht gewünscht,. Wo mache ich da den Fehler?
on({ id: [].concat(['mqtt.0.stat.tasmota_Dxxxxx.POWER1']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; let newState = !getState('alias.0.NSPanel.1.Licht.WZ.Decke_Schreibtisch.ON_ACTUAL').val; setState('alias.0.NSPanel.1.Licht.WZ.Decke_Schreibtisch.SET', newState); console.log(newState); });Anm: im LOG taucht ein "true" auf
-
@podex
Weshalb sind unter "alias.0" unterschiedliche Datenpunkte für Lesen und Schreiben vorhanden? Man verwendet Alias auch, um das zu vermeiden.
Ist "POWER1" ein Schalter oder ein Taster? -
@paul53 Ich verwende als Vorlage das Skript hier: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts
POWER1 ist das Relais (das schaltet derzeit "leer", d.h. es ist dort nichts angeschlossen@podex Also ich habe das Problem gelöst, aber ich denke nicht, dass das nachhaltig ist.
Code:
on({ id: [].concat(['mqtt.0.stat.tasmota_Dxxxxx.POWER1']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; let newState; if (getState('alias.0.NSPanel.1.Licht.WZ.Decke_Sofa.ON_ACTUAL').val) {newState=0;} else {newState=1;} console.log(newState); setState('alias.0.NSPanel.1.Licht.WZ.Decke_Sofa.SET' /* SET */, newState); });Also ich schicke "1" bzw. "0" statt "true" bzw. "false". Das führt dann aber zu diesen Einträgen im LOG:
You are assigning a number to the state "alias.0.NSPanel.1.Licht.WZ.Decke_Sofa.SET" which expects a boolean. Please fix your code to use a boolean or change the state type to number. This warning might become an error in future versions. -
@podex Also ich habe das Problem gelöst, aber ich denke nicht, dass das nachhaltig ist.
Code:
on({ id: [].concat(['mqtt.0.stat.tasmota_Dxxxxx.POWER1']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; let newState; if (getState('alias.0.NSPanel.1.Licht.WZ.Decke_Sofa.ON_ACTUAL').val) {newState=0;} else {newState=1;} console.log(newState); setState('alias.0.NSPanel.1.Licht.WZ.Decke_Sofa.SET' /* SET */, newState); });Also ich schicke "1" bzw. "0" statt "true" bzw. "false". Das führt dann aber zu diesen Einträgen im LOG:
You are assigning a number to the state "alias.0.NSPanel.1.Licht.WZ.Decke_Sofa.SET" which expects a boolean. Please fix your code to use a boolean or change the state type to number. This warning might become an error in future versions. -
@tt-tom
Hi,ich klinke mich mal kurz hier ein. Bei mir klappt das Schalten so wie von dir beschrieben.
Aber nur das als "POWER 1" deklariertes Relais.setState ("mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER", 1); setState ("mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER", 0);Schaltet das Relais 1 an/aus. Der Rückgabewert dafür heißt "mqtt.0.stat.NSPANEL_KUECHE_899ED8.POWER1" und bewegt sich auch genau wie gedacht.
Nun die Frage: Wie kann ich denn POWER2, also das andere Relais schalten? Bekomme ich irgendwie nicht hin. Hat jemand eine Idee?
Danke,
Gruß Andy -
@tt-tom
Hi,ich klinke mich mal kurz hier ein. Bei mir klappt das Schalten so wie von dir beschrieben.
Aber nur das als "POWER 1" deklariertes Relais.setState ("mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER", 1); setState ("mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER", 0);Schaltet das Relais 1 an/aus. Der Rückgabewert dafür heißt "mqtt.0.stat.NSPANEL_KUECHE_899ED8.POWER1" und bewegt sich auch genau wie gedacht.
Nun die Frage: Wie kann ich denn POWER2, also das andere Relais schalten? Bekomme ich irgendwie nicht hin. Hat jemand eine Idee?
Danke,
Gruß Andy@volleyhomer sagte in Tasmota Taster und NSPanel Relais:
Nun die Frage: Wie kann ich denn POWER2, also das andere Relais schalten? Bekomme ich irgendwie nicht hin. Hat jemand eine Idee?
Du darfst nicht "POWER" nutzen, sondern "POWER1" und "POWER2".
mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER1 mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER2Wenn die DP nicht existieren, müssen sie angelegt werden.
-
@volleyhomer sagte in Tasmota Taster und NSPanel Relais:
Nun die Frage: Wie kann ich denn POWER2, also das andere Relais schalten? Bekomme ich irgendwie nicht hin. Hat jemand eine Idee?
Du darfst nicht "POWER" nutzen, sondern "POWER1" und "POWER2".
mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER1 mqtt.0.cmnd.NSPANEL_KUECHE_899ED8.POWER2Wenn die DP nicht existieren, müssen sie angelegt werden.
Irgendwie hätte ich da auch selber drauf kommen können. Es funktioniert.
Vielen lieben Dank und schönen Wochenanfang an dich!
Gruß Andy
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login
