Smart Mold Fighter with HARDWARIO IoT Kit

Make an ordinary fan a smart one that reacts to the humidity or temperature in your home or office. Achieve that with HARDWARIO and NETIO.

BeginnerFull instructions provided1.5 hours635
Smart Mold Fighter with HARDWARIO IoT Kit

Things used in this project

Hardware components

Climate Monitor Kit
HARDWARIO Climate Monitor Kit
×1
Radio Dongle
HARDWARIO Radio Dongle
×1
PowerCable REST 101x
×1

Software apps and online services

Playground
HARDWARIO Playground
Node-RED
Node-RED

Story

Read more

Code

NODE-Red flow

JSON
[{"id":"2aab712a.33818e","type":"http request","z":"8d53dd6c.f2823","name":"HTTP Request (GET)","method":"GET","ret":"txt","url":"http://admin:admin@192.168.252.8/netio.xml","tls":"","x":380,"y":380,"wires":[["7ebefc9c.5e2aa4"]]},{"id":"25a47790.454a58","type":"function","z":"8d53dd6c.f2823","name":"Function","func":"\ntry{msg.Voltage = msg.payload[\"set:Root\"].GlobalMeasure[0].Voltage[0]}\n    catch (err1) {msg.Voltage = 0;}\ntry{msg.Frequency = msg.payload[\"set:Root\"].GlobalMeasure[0].Frequency[0]}\n    catch (err2) {msg.Frequency = 0;}\ntry{msg.TotalCurrent = msg.payload[\"set:Root\"].GlobalMeasure[0].TotalCurrent[0] / 1000}\n    catch (err3) {msg.TotalCurrent = 0;}\ntry{msg.OverallPowerFactor = msg.payload[\"set:Root\"].GlobalMeasure[0].OverallPowerFactor[0]}\n    catch (err4) {msg.OverallPowerFactor = 0;}\ntry{msg.TotalLoad = msg.payload[\"set:Root\"].GlobalMeasure[0].TotalLoad[0]}\n    catch (err5) {msg.TotalLoad = 0;}\n\nmsg.O1_State = msg.payload[\"set:Root\"].Outputs[0].Output[0].State[0];\n\nif(msg.O1_State == \"1\") msg.O1_Color = \"#09ef28\";\n    else msg.O1_Color = \"Orange\";\n\nreturn msg;","outputs":1,"noerr":0,"x":720,"y":380,"wires":[[]]},{"id":"a73f46a4.ca37c8","type":"inject","z":"8d53dd6c.f2823","name":"1 Second Repeat","topic":"","payload":"","payloadType":"date","repeat":"1","crontab":"","once":false,"onceDelay":"1","x":170,"y":380,"wires":[["2aab712a.33818e"]]},{"id":"7ebefc9c.5e2aa4","type":"xml","z":"8d53dd6c.f2823","name":"XML Parse","property":"payload","attr":"","chr":"","x":570,"y":380,"wires":[["25a47790.454a58"]]},{"id":"55a2bc9b.ada0d4","type":"mqtt in","z":"8d53dd6c.f2823","name":"","topic":"node/climate-monitor:0/hygrometer/0:4/relative-humidity","qos":"2","broker":"e649966c.8c2af8","x":260,"y":420,"wires":[["e6c3da36.0e2b78","d49a1735.2d4308"]]},{"id":"9c859a8a.b92ce8","type":"http request","z":"8d53dd6c.f2823","name":"HTTP Request (POST)","method":"POST","ret":"txt","url":"http://admin:admin@192.168.252.8/netio.xml","tls":"","x":1050,"y":420,"wires":[[]]},{"id":"ec3ac341.a09aa","type":"change","z":"8d53dd6c.f2823","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"<set:Root xmlns:set=\"http://www.netio-products.com/XMLSchema/NETIO.xsd\">  <Outputs>   <Output>    <ID>1</ID>    <Action>1</Action>   </Output>  </Outputs> </set:Root>","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":420,"wires":[["9c859a8a.b92ce8"]]},{"id":"e6c3da36.0e2b78","type":"switch","z":"8d53dd6c.f2823","name":"","property":"payload","propertyType":"msg","rules":[{"t":"gte","v":"55","vt":"num"},{"t":"lte","v":"44","vt":"num"}],"checkall":"true","repair":false,"outputs":2,"x":570,"y":420,"wires":[["ec3ac341.a09aa"],["690bbf8.e7b864"]]},{"id":"690bbf8.e7b864","type":"change","z":"8d53dd6c.f2823","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"<set:Root xmlns:set=\"http://www.netio-products.com/XMLSchema/NETIO.xsd\">  <Outputs>   <Output>    <ID>1</ID>    <Action>0</Action>   </Output>  </Outputs> </set:Root>","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":460,"wires":[["9c859a8a.b92ce8"]]},{"id":"d49a1735.2d4308","type":"ui_gauge","z":"8d53dd6c.f2823","name":"","group":"57ff470b.93fdf8","order":0,"width":0,"height":0,"gtype":"gage","title":"Humidity","label":"%","format":"{{value}}","min":0,"max":"100","colors":["#02a0b3","#0073e6","#050cfc"],"seg1":"","seg2":"","x":590,"y":480,"wires":[]},{"id":"e649966c.8c2af8","type":"mqtt-broker","z":"","name":"","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"57ff470b.93fdf8","type":"ui_group","z":"","name":"Default","tab":"11207769.c31889","disp":true,"width":"6","collapse":false},{"id":"11207769.c31889","type":"ui_tab","z":"","name":"Home","icon":"dashboard"}]

Credits

Jakub Smejkal

Jakub Smejkal

79 projects • 13 followers
Martin Hubáček

Martin Hubáček

65 projects • 56 followers
Alan Fabik

Alan Fabik

43 projects • 11 followers
Lukáš Fabik

Lukáš Fabik

43 projects • 12 followers

Comments