NEWS
[gelöst] Hue Motion Sensor Daten auslesen und verarbeiten
-
@bag-stg-kft Also Du schreibst halt nichts mehr nach MQTT.
Und HUE Node wird wohl immer erst was anzeigen, wenn was NEUES da ist oder der Flow neu gestartet ist.
Wenn Du die Steuerfläche bei den Debug Nodes anklickst, dann kannst Du die temporär deaktivieren.
Wie gesagt das Hassio oder ESP interessiert mich nicht - sondern deaktiviere alle anderen MQTT Nodes - da darf weder im HASSIO noch im ESP was ankommen.
Schau dass Du eine saubere Debug Ausgabe im Debug Fenster bekommst -
-
@mickym ich werde verrückt!!!!!
ENDLICH!!!!!!!!!!!!!!!!! IM ESP!!!!!!!!!!!!!!!
-
@bag-stg-kft Na gut - dann hab halt bissi Geduld Deine Sensoren werden nicht im Sekundentakt senden
-
@mickym ich habe komplettes neues flow aufgemacht und alle andere Deaktiviert..... nur der letzte (habe dir code geschickt) ist noch aktiv
-
@bag-stg-kft Na dann sollte ja nirgends mehr was ankommen, da dann nur noch die 4 Nodes aktiv sind.
Dann solltest Du ja nun im Debug Fenster die entsprechenden Ausgaebn beider Debug Nodes sehen und damit erst mal eine sichere Ausgangsbasis haben-
-
@mickym also darf ich wirklich was deaktivieren, ohne das was wieder schief geht? (ohne Change)
Wie mache ich "sauberen debug"?
Was mich noch auch interessiert:
Wie kann ich das wegspeichern, dass es auch alleine weiterarbetet? (also auch auf die zukünftigen Anzeigen verwenden kann) -
@bag-stg-kft Solange Dein Node Red Server läuft - laufen auch alle Flows - das hat mit dem Browserfenster nichts zu tun.
Im Debugfenster hast einen Papierkorb um das wieder clean zu machen. Die Debug Nodes kannst anschließend auch wieder löschen, wenn sichergestellt ist, dass ein sauberer Output rauskommt
-
@mickym bevor ich weiter schreibe
EIN RIESEN GROSSES D A N K E, D A N K E, und milionen MAL D A N K E schön für das Unterricht und Problemlösung......
Papierkorb ja, habe schon einige Male gemacht, weil zu viel Einträge da waren......
Aber danach erneut debuggen habe ich noch nicht........
Die Flows (deaktivierte) kann man lassen? das wäre ja mein "Übungsblatt"....... -
@bag-stg-kft Ja OK - den DANK nehme ich gerne entgegen.
Aber ich muss nun auch sagen, dass ich zu diesem Thema nicht mehr viel beitragen kann. Wenn Du das Prinzip verstanden hast, dann solltest Du es ja nun ohne weiteres übertragen können.
-
@mickym das mit dem "Prinzip" happert noch, aber bei Amazon habe ein Buch gefunden und hoffentlich kann ich davon etwas noch lernen (das mit Jason als Parser kenn ich von Arduino, Aduino macht mir richtig Spaß).... ich möchte ja, wie schon erwähnt, irgendwann mal von den dutzenden Apps am Händy wegkommen....... Bis dahin ist es aber ein lange Weg, und hilft noch Alexa, Google, und IFTT........
Raspi hat mich zwar immer gereizt, aber wegen "sudo" und solche Dinge einfach nicht so richtig konnte mich damit anfreunden...... Google ist dagegen jedoch meine beste Freundin geworden, die macht immer, was ich will, redet nie zurück....Ich habe es am HASSIO eingestellt, dass Node Red auch mitstartet.....Also das reicht aus?
-
@bag-stg-kft Ja wenn der Server als Dienst startet dann langt das. Das was aus der HUE Node rauskommt ist JavaScript Objekt.
JSON Strings werden nur verwendet um Javascript Objekte als Strings abzuspeichern.
Hier habe ich einige Videos auf englisch und deutsch zusammengefasst um was über NodeRed zu lernen.
https://forum.iobroker.net/topic/35699/geräte-per-datenpunkt-schalten/93?_=1625430686834
-
@mickym ah und bitte erzähl mir noch, wie macht ihr das mit dem code?
Hier konnte ich dir schicken......
was ich importieren sollen hätte ist nicht gelungen..... ich habe den code zwar gesehen, aber wie speichern, 0 Ahnung. Mit "Zwischenspeichern" war Fehler: "nicht im Jason-format".....
wie kann ich also diese Codes sehen, was angeblich auch in Arduino IDE zu laden wäre? -
@bag-stg-kft Sorry Arduino IDE bin ich raus - 0 Erfahrung.
Wie gesagt das JSON Format wird oft genutzt um komplexe Objekte in Textform zu transpotieren. So kannst Du alle Deine Flows ja in einer Datei im JSON Format abspeichern.
Aber natürlich sind die Objekte alle verschieden aufgebaut.
Für JSON Aufbau und Javascript nutze ich diese Seiten, um was nachzuschlagen:
https://www.w3schools.com/js/js_json_intro.asp
Da gibts JSON, Javascript, HTML usw.
Aber wie gesagt Arduino oder irgendwelche Chips löten oder basteln, da bin ich erst mal raus.
-
@mickym Arduino kannst ja auch stecken...... musst nicht löten....... der Erste ist etwas schwer und danach kannst nicht ehr aufhören und bastelt deine eigene Lichtschalter aus Displays........ (wie ich auch.... damit habe ich angefangen) danach Relais.....
das mit dem Temperatur wird auch weitergehen...... Poolheizung..... also Wasser mit Solaranlage..... da muss auch Wassertemperatur ermittelt werden, um den Filter / Zirkulation schalten zu können (sonst springt es noch in Luft) -
@bag-stg-kft Tja soviele Spielmöglichkeiten bietet meine Mietwohnung nicht. Ansonsten habe ich Licht etc. alles soweit automatisch.
Das habe ich ja mit dem NodeRed Dashboard alles hier schon mal dargestellt:
-
@mickym
naja....... aber auch die Elektriker nicht, als "Dienstleistung", wenn ich sie gefragt habe............ Ich wollte vieles einbauen lassen, und als man mich abgeleht hatte, habe mir die Frage gestellt, ob ich zu blöd bin oder zu viel will..... Das war vor etwa 5 Jahren..... (W-LAN Lichtschalter) und bitte..... heut zu Tage kann man schon bei OBI kaufen....... also ich war nicht blöd, sondern vielleicht viel zu viel mit Technik beschäftigt...... (noch dazu als Frau) Dann habe ich auch wegen Garagentor gefragt, weil es alt ist, und damals gab es keinen W-Lan öffner, nur mit infra, auch für Rollo........ Man hat mich beinahe ausgelacht............ Rollo geht jedes mal runter, wenn die Sonne runtergeht und hoch, wenn die Sonne aufsteht........ Zierbrunnen schaltet sich ebenso ein...... Okay Google, mach den Garagentor auf" habe müssen meinem Mann beibringen...... Aber!
DAS MACHT MIR SPASS!!!!!!! und anstatt Figenägel zu lackieren mache ich viel lieber solche Dinge........ Programieren mit Arduino....... -
@extreme
Habe mich gern Deines Codes aus Deinem ersten Posts bedient.Leider habe ich das Problem, dass ich mehrere Sensoren auslesen möchte und das nach Möglichkeit mit einem Request machen möchte.
//Schlafzimmer Temp Sensor schedule("*/1 * * * *", function () { // Abfrage alle 1 Min var url = "http://192.168.xx.xx/api/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/sensors"; var request = require("request"); request(url, function (error, response, body) { var json = JSON.parse(body); var Temperatur = parseInt(json.state.temperature.11); Temperatur = Temperatur/100; setState("javascript.0.hueSensors.Temperaturen.Schlafzimmer", Temperatur); // Anpassen auf deinen erstellten Datenpunkt }); });
nur genau das hier
var Temperatur = parseInt(json.11.state.temperature);
Funktioniert nicht
ich darf die "11" nicht verwenden. java erkennt das als Zahl und benötigt wird das Argument für den Key als String - so glaube ich.
Hat jemand einen Tipp?
Beste Grüße
MichaelSo habe ich es derzeit:
//Bewegungssensoren hue schedule("*/4 * * * * *", function () { // Abfrage alle 4 sec var url = "https://192.168.1.41/api/xxxxxxxxxxxxxxxxxxxxxxxxHcIJ/sensors"; var request = require("request"); request(url, function (error, response, body) { var json = JSON.parse(body); setState("0_userdata.0.Lichtsteuerung.Bewegungsmelder.flur", json.62.state.presence); setState("0_userdata.0.Lichtsteuerung.Bewegungsmelder.oben", json.55.state.presence); }); });