Da ich mit der Reichweite meines iGrill BBQ Thermometer unzufrieden bin, war ich am überlegen mir ein eigenes auf der Basis eine ESP8266 / ESP32 zu entwerfen.
Bei der Internet Recherche nach Anregungen, bin ich über das WLANThermo (Nano v1+) gestolpert und war doch recht begeistert was dort schon geleistet wurde.
So das ich mich entschloss mir ein WLANThermo Nano v1+ zu kaufen, und doch keins selbst zu entwinkeln.
Durch paar Rückfragen die ich zu der Entwicklung noch hatte, wurde mir angeboten das ich schon ein Prototypen des WLANThermo Nano v3 testen könnte. Was ich natürlich danken annahm 😉
Allerdings hatte ich noch so ein zwei Ideen die ich gerne umsetzten wollte.
- Kerntemperatur Alert
- Pushover Alert mit Priority
- Sprachausgaben über meine Sonos Boxen
Um das für mich angenehm umsetzten zu können, habe ich ein kleines aber doch recht brauchbares Node für Node-Red geschrieben.
WLAN Thermo Node fragt die HTTP API des WLANThermo Nano ab. MaxTemp Alert Node überwacht die Temperatur-Obergrenze. MinTemp Alert Node überwacht die Temperatur-Untergrenze. CoreTemp Warn Node überwacht die Kerntemperatur. Wenn ein Kanal eine Temperatur-Untergrenze von -1 konfiguriert hat, geht dieser Node von einer Kerntemperatur Messung aus! Die Diff Temp gibt an, ab wann gewarnt werden soll, z.B. es ist eine Temperatur-Obergrenze von 60 konfiguriert und soll ab 55 warnen muss eine Diff Temp von 5 konfiguriert werden.. CoreTemp Alert Node überwacht die Kerntemperatur. Wenn ein Kanal eine Temperatur-Untergrenze von -1 konfiguriert hat, geht dieser Node von einer Kerntemperatur Messung aus! Battery Alert Node überwacht das Batterie Level.
Und hier noch mal ein Pushover Alert Flow, hier ist das Enddevice und auch Pushover Priority konfigurierbar.
Genutzt wir unter anderen noch das node-red-contrib-pushover Node.
[{"id":"d9209717.f0dd68","type":"WLAN Thermo","z":"572e0efd.43f8","name":"WLANThermo","ip":"192.168.0.167","x":280,"y":780,"wires":[["dc3f647f.e59c68","c37b7b8d.059938","764200d2.95df6","d8a20cdb.5db7f","f8b7f4ac.b6a7c8"]]},{"id":"dc3f647f.e59c68","type":"MaxTemp Alert","z":"572e0efd.43f8","name":"Maximal Temperatur Alarm","messageRepeat":true,"x":560,"y":840,"wires":[["f9f23aee.a90958"]]},{"id":"c37b7b8d.059938","type":"MinTemp Alert","z":"572e0efd.43f8","name":"Minimal Temperatur Alarm","messageRepeat":true,"x":550,"y":900,"wires":[["f9f23aee.a90958"]]},{"id":"764200d2.95df6","type":"CoreTemp Alert","z":"572e0efd.43f8","name":"Kerntemperatur Alarm","messageRepeat":true,"x":540,"y":1020,"wires":[["f9f23aee.a90958"]]},{"id":"d8a20cdb.5db7f","type":"CoreTemp Warn","z":"572e0efd.43f8","name":"Kerntemperatur Warnung","warnTemp":5,"messageRepeat":true,"x":550,"y":960,"wires":[["f9f23aee.a90958"]]},{"id":"f8b7f4ac.b6a7c8","type":"Battery Alert","z":"572e0efd.43f8","name":"Batterie Alarm ","alertLvl":"10","messageRepeat":true,"x":520,"y":780,"wires":[["f9f23aee.a90958"]]},{"id":"50d5c4e2.2f837c","type":"inject","z":"572e0efd.43f8","name":"","topic":"","payload":"","payloadType":"date","repeat":"2","crontab":"","once":true,"onceDelay":0.1,"x":110,"y":780,"wires":[["d9209717.f0dd68"]]},{"id":"fcc5b4cc.c7de78","type":"pushover api","z":"572e0efd.43f8","keys":"5a5174c6.07d34c","title":"","name":"","x":1220,"y":780,"wires":[]},{"id":"c9d10904.4beaf8","type":"template","z":"572e0efd.43f8","name":"Message Template","field":"payload","fieldType":"msg","format":"html","syntax":"mustache","template":"<a href=\"{{{payload.link}}}\">[-----Zum WlanThermo-----]</a>","output":"str","x":1050,"y":780,"wires":[["fcc5b4cc.c7de78"]]},{"id":"f9f23aee.a90958","type":"function","z":"572e0efd.43f8","name":"Extend Message","func":"////////// Config ///////////////////////\n// Empfänger Komma separiert\nvar _empfaegerDevices = \"iPhone_Dennis\"\nvar _wlanThermoURL = \"http://wlanthermo.local.dietru.de/\"\n// https://pushover.net/api#priority\nvar _priorityLvl = 2;\nvar _retry = 30;\nvar _expire = 600;\n/////////////////////////////////////////\nmsg.payload={};\nmsg.payload.link = _wlanThermoURL;\nmsg.device = _empfaegerDevices;\nmsg.priority = _priorityLvl;\n\nif (_priorityLvl > 1)\n{\n msg.retry = _retry;\n msg.expire = _expire;\n}\nreturn msg;\n","outputs":1,"noerr":0,"x":850,"y":780,"wires":[["c9d10904.4beaf8"]]},{"id":"5a5174c6.07d34c","type":"pushover-keys","z":"","name":"WLANThermo"}]
Wenn ihr doch noch komplexere Fragen zum Node habt bitte gern in ->Forum<- das ist einfach nachhaltiger als hier in den Kommentaren 🙂
Viel Spaß damit 🙂
0 Kommentare