NEWS
MAX! Cube Blockly Abwesenheit
-
@marko1974 Jo funktioniert noch - weil diese Werte ja über die Alexa Node und nicht über iobroker reingekommen sind.
-
@marko1974 sagte in MAX! Cube Blockly Abwesenheit:
Das blöde Blockly wollte auch nicht so recht. Ist wohl nicht so toll, wenn plötzlich 6 Befehle auf einmal kommen. Hab das jetzt mit einer verzögerung entzerrt und auch mal den Wert als Mathematik Wert eingesetzt und nicht als Text. Da war er auch am meckern.
Das Blockly können wir auch in Node Red umsetzen - wenn Du willst.
Im NodeRed gibts die Möglichkeiten die Nachrichten / Befehle verzögert zu schicken:
oder Du musst den DutyCycle checken. Vielleicht hat der Adapter dafür einen Datenpunkt - musst halt schauen.
-
@mickym Ja vielleicht liegt es am dutycycle. Auch bei deinem Flow kommt wie vorhin die Ansage: Es ist ausgestellt. Aber ich hab ihn schonmal importiert und eingerichtet.
12.11.2021, 00:54:10node: dazwischen Alex Node msg : Object { topic: "", payload: object, _msgid: "4aa724a2.1b226c" } 12.11.2021, 00:54:23node: dazwischen Alex Node msg : Object { topic: "", payload: object, _msgid: "bb78cede.28eca" }
-
@marko1974 sagte in MAX! Cube Blockly Abwesenheit:
@mickym Ja vielleicht liegt es am dutycycle. Auch bei deinem Flow kommt wie vorhin die Ansage: Es ist ausgestellt. Aber ich hab ihn schonmal importiert und eingerichtet.
12.11.2021, 00:54:10node: dazwischen Alex Node msg : Object { topic: "", payload: object, _msgid: "4aa724a2.1b226c" } 12.11.2021, 00:54:23node: dazwischen Alex Node msg : Object { topic: "", payload: object, _msgid: "bb78cede.28eca" }
Hab noch eine Ergänzung unten geschrieben - stell die iobroker In Nodes so ein, dass die Werte sofort eingelesen werden und nicht getriggert werden müssen.
Dann wäre es mir lieber - auch wenn es sonst icht so gerne gesehen wird, wenn Du wirklich ein Screenshot vom Debug Fenster machst und die Objekte alle aufmachst (also Pfeile nach unten)
-
@mickym ```
12.11.2021, 01:06:34node: dazwischen Alex Node
msg : Object
object
topic: ""
payload: object
temperature: 0
scale: "CELSIUS"
targetTemperature: 20
targetScale: "CELSIUS"
thermostatMode: "OFF"
powerState: "ON"
source: "alexa"
directive: "SetTargetTemperature"
name: "Testthermostat"
type: "THERMOSTAT"
rawDirective: object
directive: object
header: object
namespace: "Alexa.ThermostatController"
name: "SetTargetTemperature"
correlationToken: "xxxxxxxnYxw/T5PRpP2Bxn7XZeKRzj2aPCvs0IlvfoiG8nsrZLrjm0cldbNH3jCCmluxOYQ6LZQh9yBsDo5OnWpvPg/60Z8VMZt6LP91HvL4kaYz4l7B+pcOAGDJ8zQCdTZctfc5icdsdcsdcsdcsdcsdcscd"
endpoint: object
endpointId: "vshd-6c9dea9fb111e4"
payload: object
targetSetpoint: object
_msgid: "268d308.e7231d" -
@marko1974 Ach und nochwas - das Topic war leer - Da kannst Du mal selbst ein Topic in der Alexa Node definieren:
Das ist ggf- für später wichtig um unterscheiden zu können von welcher Alexa Node die Nachricht stammt. Du kannst auch als Topic den Namen des Thermostats rein schreiben:
thermostat_0d1718
-
@marko1974 Wie gesagt die Screenshots aus dem Debug Fenster sind mir lieber, so wie ich das gepostet habe.
Wie schauen die iobroker In Nodes aus - steht connected drunter oder der Wert des Datenpunktes - hast Du die auch richtig gemappt?
Wenn Du wie in Ergänzung beschrieben sofort ausliest stehen die Werte, die ausgelesen wurden darunter und nicht mehr Connected unter den Datenpunkten
-
Also das war wohl vorhin der DutyCycle.
Jetzt hat sie gesagt bei Stelle auf 20.
Die Wärme ist auf 20 Grad gestellt. Die aktuelle Temperatur wird angezeigt und der Modus steht auf Heizen.
Hier steht noch 5 ....wahrscheinlich nicht aktualisiert. in der app ja...im Datenpunkt steht auch 5
-
@marko1974 Nee das passt schon - die 5 sind Dein letztes Kommando das Du im Kommando hast.
Die Apple HomeApp ist ja gar nicht an den MaxCube Adapter angebunden.Insofern klappt das doch schon Wunderbar.
Du kannst mal das Debug fenster posten wenn Du Alexa sagst dass Du auf eine bestimmte Temperatur einstellen möchtest.
Wie gesagt poste die Objekte die aus der Alexa Node rauskommen, wenn Du Befehle gibst und zwar aufgeklappt - sowie ich das unten gemacht habe. -
@mickym Das mit dem Aufklappen und Screenshot bekomme ich hier an meinem kleinen MacBookAir nicht hin. Da muss ich morgen an den grossen PC....
Also .... die Werte werden alle in der Alexa App übernommen. Wieso Apple Home...das ist ein ganz anderes Thema.
Ich rede hier von der Alexa App.Also: Alles wird richtig übermittelt, nur der DP verändert sich nicht.
-
@marko1974 sagte in MAX! Cube Blockly Abwesenheit:
@mickym Das mit dem Aufklappen und Screenshot bekomme ich hier an meinem kleinen MacBookAir nicht hin. Da muss ich morgen an den grossen PC....
Also .... die Werte werden alle in der Alexa App übernommen. Wieso Apple Home...das ist ein ganz anderes Thema.
Ich rede hier von der Alexa App.Also: Alles wird richtig übermittelt, nur der DP verändert sich nicht.
OK habs schon gesehen - das unten was das was rauskommt und ich sehe - dass source auf Alexa steht - dann mach ich noch den rechten Teil - der die Kommandos dann wieder an dem MAX Cube Adapter schickt.
-
@mickym hier nochmal der Debug mit ganz viel Mühe
Lass Dir Zeit...Wir können da auch morgen weitermachen.
Muss jetzt auch erstmal ins Bett. Wecker klingelt gleich schon wieder.Ich danke erstmal schon wieder bis hierhin. Denke aber auch mal dass es für viele nützlich sein wird.
-
Super - Ok - Du kannst mir noch einen Gefallen tun - damit brauchst keine Screenshots schicken. Jo ich will Dich nicht wachhalten - aber bevor Du ins Bett gehst.
Kannst Du auf die mittlere Schaltfläche klicken - dann wird ein JSON der payload in die Zwischenablage kopiert. Das kannst Du dann wieder hier in CodeTags packen und ich kann während Du schläfst den hinteren Teil des Flows machen.
-
{"temperature":17.7,"scale":"CELSIUS","targetTemperature":19.5,"targetScale":"CELSIUS","thermostatMode":"HEAT","powerState":"ON","source":"alexa","directive":"SetTargetTemperature","name":"Testthermostat","type":"THERMOSTAT","rawDirective":{"directive":{"header":{"namespace":"Alexa.ThermostatController","name":"SetTargetTemperature","correlationToken":"xxxxxxxxxxxxtx2k2tXcnFAe8p32lAWluMvY5SuTi1idEQNC6RVBzVWSx/J7sUr6gpV+dmi+5tnxumaaKMGFjh5eddaYHSGDKFkpLw7v/IZ8xIwSMZt5MuTkdYM1ff15/Z6IPHvNh1cOktXYxxoKwVgfeQDMwqIydHD6EHZXX3LQ8TNJ9tf2Bs9C0fgsU6tq7bR4w0Gq538UXTN0gmHGJP/QJWxxxxxxxxxxxxxxxxACSaDYts0LKvz17x08XwRP5Y/kbZ6Lb9FaxGSAD5jUyF3Ygae/JhN+C5GTeiuQIb2sKpLJOj830roHVk6s"},"endpoint":{"endpointId":"vshd-6c9dea9fb111e4"},"payload":{"targetSetpoint":{"value":19.5,"scale":"CELSIUS"}}}}}```
-
@mickym said in MAX! Cube Blockly Abwesenheit:
Kannst Du auf die mittlere Schaltfläche klicken - dann wird ein JSON der payload in die Zwischenablage kopiert. Das kannst Du dann wieder hier in CodeTags packen und ich kann während Du schläfst den hinteren Teil des Flows machen.
Was für ein Service. Womit hab ich das verdient?
-
@marko1974 Ganz super - dann kannst jetzt in die Heia gehen - ich denke ich habs erstmal soweit verstanden.
ICh mach dann zumindest den rechten Teil zum Einstellen der Temperatur fertig.
Du musst das gleiche halt nochmal machen - wenn Du Alexa sagst, dass Du auf AUTO stellen willst.
Bei Temperatureinstellung steht directive":"SetTargetTemperature"
Also schlaf erst mal gut.
-
@mickym Das mit dem Auto benötige ich nicht unbedingt.
Dankeschön!
Es gibt da noch so viele Baustellen. Ich hab auch gelesen, dass wenn man auf Auto stellt, der Temperatur-Wert erstmal so bleibt, wie er vorher stand und der erst mit der nächsten Änderung wieder anders gesetzt wird.
Das verwirft nun auch mein Anwesenheits-Blockly. Vielleicht müssen wir das doch in Node-Red machen. Wenn es dann da irgendwie funktioniert. Aber hat ja auch eben mit dem Adapter zu tun. -
-
@marko1974 sagte in MAX! Cube Blockly Abwesenheit:
@mickym Das mit dem Auto benötige ich nicht unbedingt.
Dankeschön!
Es gibt da noch so viele Baustellen. Ich hab auch gelesen, dass wenn man auf Auto stellt, der Temperatur-Wert erstmal so bleibt, wie er vorher stand und der erst mit der nächsten Änderung wieder anders gesetzt wird.
Das verwirft nun auch mein Anwesenheits-Blockly. Vielleicht müssen wir das doch in Node-Red machen. Wenn es dann da irgendwie funktioniert. Aber hat ja auch eben mit dem Adapter zu tun.Nein leider nicht - weil Dein Thermostat vom MAXCube Adapter gesteuert wird - und wenn Du da manuell eine Temperatur in setpoint eingibst - ändert sich der Modus auf manuell. Das was der Adapter steuert, kann ich nicht mit NodeRed übersteuern bzw. ist sogar im Cube vordefiniert - ich habe nur in fhem - ich hab Dir schon mal versucht das zu erklären, wenn der Adapter das nicht anbietet - bleibt der Modus nicht auf Auto, sobald DU eine Temperatur einstellst.
Lediglich in Fhem gibt es eine Einstellung - und bietet diese Funktion:
-
@marko1974 sagte in MAX! Cube Blockly Abwesenheit:
@mickym said in MAX! Cube Blockly Abwesenheit:
Kannst Du auf die mittlere Schaltfläche klicken - dann wird ein JSON der payload in die Zwischenablage kopiert. Das kannst Du dann wieder hier in CodeTags packen und ich kann während Du schläfst den hinteren Teil des Flows machen.
Was für ein Service. Womit hab ich das verdient?
So dauert ja nicht so lange:
Für die Directive SetTemperature - also Temperatur stellen - einfach die folgenden Nodes mit dem Ausgang der Alexa Node verbinden:
Für die übrigen Direktiven musst Du halt die Befehle sprechen - ich weiß nicht wie das auf Deutsch heißt - musst halt einfach probieren und dann schauen, ob sich die directive ändert und die muss man dann in die switch Node "Was ist zu tun" aufnehmen.
Also nachdem DU Dein Device ja Testthermostat genannt hast - kannst Du es ja vielleicht sogar mit Grad versuchen:
- Alexa, stelle das Testthermostat auf 22,5 Grad!
- Alexa wie hoch ist die Temperatur im Testthermostat?
- Alexa stelle das Testthermostat wärmer!
- Alexa stelle das Testthermostat kälter!
- Alexa stelle den Modus des Testthemostats auf AUTO.
Schreib mal anstelles des Testthermostats in dem Topic Schlafzimmer/Thermostat - und probiere mal
Alexa, wie ist die Temperatur im Schlafzimmer. Oder Du nennst das Gerät nach einem Raum und man kann sagen
- Alexa stelle im Schlafzimmer die Temperatur auf 22,5 Grad.
Ich denke anhand der Definition der Namen - kann man die natürliche Sprache besser beschreiben.
.
Nach jedem Befehl - poste den JSON String der payload - in COde-Tags hier.Im Moment reagiert der Flow nur auf die Directive "SetTemperature" - da gibts sicher noch viel mehr:
Ich hab mir das angeschaut - der Alexa Skill ist ja sogar kostenlos. Übrigens in der Hilfe zu der Node - findest Du auch alles zu den Arten der virtuellen Geräte beschrieben:
Das heizt es müsste auch gehen:
Alexa, schalte Testthermostat oder Schlafzimmer aus. Leider versteht der setpoint Datenpunkt wohl nur Zahlen - aber man könnte dann eben trotzdem 4,5 oder 30 setzen.
Über diese virutellen Geräte kannst sogar Szenen steuern.
Alexa, aktiviere Schlafen gehen oder sowas.
Ach und noch was - habe ich beim Lesen gerade entdeckt:
Lösche mal msg.payload.source aus allen 4 Change Nodes
- dies wird wohl von der Alexa Node selbst gesetzt: