Created
November 7, 2016 23:24
-
-
Save anonymous/a87541aca4bcbbfaeb923837874fb5e4 to your computer and use it in GitHub Desktop.
A Node-RED flow to collect weather data and transmit it to an ESPEasy based OLED screen using REST.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[{"id":"671ecbad.ad2504","type":"inject","z":"fea9ff4e.cc88b","name":"Billboard \"IoL City\"","topic":"","payload":"IoL City","payloadType":"str","repeat":"","crontab":"","once":true,"x":130,"y":140,"wires":[["8871a91.1888a58"]]},{"id":"e119caef.1f55c8","type":"http request","z":"fea9ff4e.cc88b","name":"","method":"GET","ret":"txt","url":"","tls":"","x":570,"y":140,"wires":[["82a3e29e.2997b"]]},{"id":"514fc850.84e328","type":"function","z":"fea9ff4e.cc88b","name":"Message URL","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 1;\nmsg.col = 1;\n//msg.payload = \" IoL City\"\n\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oled\"+\",\"+msg.row+\",\"+msg.col+\",\"+msg.payload;\nreturn msg;","outputs":1,"noerr":0,"x":380,"y":140,"wires":[["e119caef.1f55c8"]]},{"id":"82a3e29e.2997b","type":"debug","z":"fea9ff4e.cc88b","name":"Billboard Message","active":false,"console":"false","complete":"true","x":750,"y":140,"wires":[]},{"id":"36232a09.46f1a6","type":"mqtt in","z":"fea9ff4e.cc88b","name":"","topic":"/sensors/iolcity/weather/temperature","qos":"2","broker":"12853ec6.e7be71","x":164.5,"y":317,"wires":[["b6a8dd69.cdb9c"]]},{"id":"621b4ee9.5a93d","type":"debug","z":"fea9ff4e.cc88b","name":"Billboard Weather ","active":true,"console":"false","complete":"true","x":690,"y":420,"wires":[]},{"id":"b6a8dd69.cdb9c","type":"function","z":"fea9ff4e.cc88b","name":"Message URL","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 3;\nmsg.col = 1;\nmsg.topic = \"Temp\";\n//msg.payload = \"Internet of LEGO\"\nmsg.payload = Math.abs(msg.payload)+\"c\";\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oled\"+\",\"+msg.row+\",\"+msg.col+\",\"+msg.payload+\" \"+msg.topic;\nreturn msg;","outputs":1,"noerr":0,"x":482,"y":315,"wires":[["3cb64bbc.688264"]]},{"id":"3ed9b7f0.3f5ea8","type":"mqtt in","z":"fea9ff4e.cc88b","name":"","topic":"/sensors/iolcity/weather/humidity","qos":"2","broker":"12853ec6.e7be71","x":156,"y":374,"wires":[["470c21bd.d12a1"]]},{"id":"6d894e7e.97e82","type":"mqtt in","z":"fea9ff4e.cc88b","name":"","topic":"/sensors/iolcity/weather/light","qos":"2","broker":"12853ec6.e7be71","x":147,"y":430,"wires":[["198617c3.c37bf8"]]},{"id":"21a1bde1.c6eec2","type":"mqtt in","z":"fea9ff4e.cc88b","name":"","topic":"/sensors/iolcity/weather/heatindex","qos":"2","broker":"12853ec6.e7be71","x":169,"y":478,"wires":[["658f36da.f49a58"]]},{"id":"470c21bd.d12a1","type":"function","z":"fea9ff4e.cc88b","name":"Message URL","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 5;\nmsg.col = 1;\nmsg.topic = \"Humidity\";\nmsg.payload = Math.abs(msg.payload)+\"%25\";\n\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oled\"+\",\"+msg.row+\",\"+msg.col+\",\"+msg.payload+\" \"+msg.topic;\nreturn msg;","outputs":1,"noerr":0,"x":481,"y":366,"wires":[["3cb64bbc.688264"]]},{"id":"198617c3.c37bf8","type":"function","z":"fea9ff4e.cc88b","name":"Message URL","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 7;\nmsg.col = 1;\nmsg.topic = \"Light\";\nmsg.payload = Math.abs(msg.payload)+\" \";\n\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oled\"+\",\"+msg.row+\",\"+msg.col+\",\"+msg.payload+\" \"+msg.topic;\nreturn msg;","outputs":1,"noerr":0,"x":480,"y":422,"wires":[["3cb64bbc.688264"]]},{"id":"658f36da.f49a58","type":"function","z":"fea9ff4e.cc88b","name":"Message URL","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 8;\nmsg.col = 1;\nmsg.topic = \"Heat Index\";\nmsg.payload = Math.abs(msg.payload)+\"c\";\n\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oled\"+\",\"+msg.row+\",\"+msg.col+\",\"+msg.payload+\" \"+msg.topic;\nreturn msg;","outputs":1,"noerr":0,"x":484,"y":474,"wires":[[]]},{"id":"ecb83741.54e428","type":"inject","z":"fea9ff4e.cc88b","name":"Billboard OLED - CLEAR","topic":"","payload":"","payloadType":"str","repeat":"","crontab":"","once":false,"x":150,"y":100,"wires":[["8d27b728.cb77b8"]]},{"id":"ecd524f3.6d8588","type":"http request","z":"fea9ff4e.cc88b","name":"","method":"GET","ret":"txt","url":"","tls":"","x":568,"y":100,"wires":[["8466322d.20639"]]},{"id":"8d27b728.cb77b8","type":"function","z":"fea9ff4e.cc88b","name":"Message URL","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 1;\nmsg.col = 1;\nmsg.payload = \"Internet of LEGO\"\n\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oledcmd,clear\";\nreturn msg;","outputs":1,"noerr":0,"x":378,"y":100,"wires":[["ecd524f3.6d8588"]]},{"id":"3cb64bbc.688264","type":"http request","z":"fea9ff4e.cc88b","name":"","method":"GET","ret":"txt","url":"","tls":"","x":674,"y":354,"wires":[["621b4ee9.5a93d"]]},{"id":"fb82518f.ab65c","type":"function","z":"fea9ff4e.cc88b","name":"Message - Time","func":"msg.ip = \"192.168.0.92\";\nmsg.row = 8;\nmsg.col = 9;\n\nvar duration = msg.payload;\n\nvar milliseconds = parseInt((duration%1000)/100);\nvar seconds = parseInt((duration/1000)%60);\nvar minutes = parseInt((duration/(1000*60))%60);\nvar hours = parseInt((duration/(1000*60*60))%24);\n\nhours = (hours < 10) ? \"0\" + hours : hours;\nminutes = (minutes < 10) ? \"0\" + minutes : minutes;\nseconds = (seconds < 10) ? \"0\" + seconds : seconds;\n\nmsg.payload = hours + \":\" + minutes; // + \":\" + seconds + \".\" + milliseconds;\nmsg.url = \"http://\"+msg.ip+\"/control?cmd=oled\"+\",\"+msg.row+\",\"+msg.col+\",\"+msg.payload;\nreturn msg;","outputs":1,"noerr":0,"x":480,"y":540,"wires":[["de8d8e7b.d00fc","3cb64bbc.688264"]]},{"id":"36b030fb.8881d","type":"inject","z":"fea9ff4e.cc88b","name":"","topic":"","payload":"","payloadType":"date","repeat":"1","crontab":"","once":true,"x":110,"y":540,"wires":[["519fc0ab.46f8"]]},{"id":"3c1bb664.a8114a","type":"comment","z":"fea9ff4e.cc88b","name":"Billboard - ESPEasy - REST","info":"Update the \"Message URL\" function blocks with\nthe IP address of the billboard running ESPEasy","x":140,"y":40,"wires":[]},{"id":"8466322d.20639","type":"debug","z":"fea9ff4e.cc88b","name":"Billboard Clear","active":true,"console":"false","complete":"true","x":740,"y":100,"wires":[]},{"id":"de8d8e7b.d00fc","type":"debug","z":"fea9ff4e.cc88b","name":"Billboard time","active":false,"console":"false","complete":"payload","x":680,"y":540,"wires":[]},{"id":"519fc0ab.46f8","type":"delay","z":"fea9ff4e.cc88b","name":"","pauseType":"delay","timeout":"1","timeoutUnits":"minutes","rate":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":300,"y":540,"wires":[["fb82518f.ab65c"]]},{"id":"8871a91.1888a58","type":"function","z":"fea9ff4e.cc88b","name":"Welcome to, IoL City - setInterval","func":"var text = [\n \"~ Welcome To ~\",\n \"~ IoL City ~\"\n ];\n\nvar c = 0\n\nsetInterval(function(){\n msg.payload = text[c];\n node.send(msg); \n if (c == text.length - 1){\n c = 0;\n }else{\n c++;\n }\n},4000);\n\n\n\n\n\nreturn null;","outputs":1,"noerr":0,"x":260,"y":180,"wires":[["514fc850.84e328"]]},{"id":"12853ec6.e7be71","type":"mqtt-broker","z":"","broker":"localhost","port":"1883","clientid":"pi-nr","usetls":false,"compatmode":true,"keepalive":"15","cleansession":true,"willTopic":"","willQos":"0","willPayload":"","birthTopic":"","birthQos":"0","birthPayload":""}] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment