Skip to content

Instantly share code, notes, and snippets.

@nathanchantrell
Created December 4, 2015 11:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nathanchantrell/1a08dc4f8bc473fa7a6b to your computer and use it in GitHub Desktop.
Save nathanchantrell/1a08dc4f8bc473fa7a6b to your computer and use it in GitHub Desktop.
[{"id":"32a2fac0.cd5d06","type":"mqtt-broker","broker":"localhost","port":"1883","clientid":""},{"id":"648482d6.9b7b7c","type":"serial-port","serialport":"/dev/ttyUSB0","serialbaud":"57600","databits":8,"parity":"none","stopbits":1,"newline":"\\n","addchar":"false"},{"id":"f3e09811.0c1f68","type":"serial in","z":"51ed9ab2.ae1264","name":"Tiny328","serial":"648482d6.9b7b7c","x":67.83334350585938,"y":96.58333015441895,"wires":[["84841a00.7b7be8"]]},{"id":"f6549e2d.09ab6","type":"mqtt out","z":"51ed9ab2.ae1264","name":"","topic":"","broker":"32a2fac0.cd5d06","x":352.8333435058594,"y":45.58332824707031,"wires":[]},{"id":"84841a00.7b7be8","type":"function","z":"51ed9ab2.ae1264","name":"Parse.","func":"var tokens = msg.payload.split(\" \");\n\nif (tokens.shift() == \"OK\") {\n var node = tokens.shift() & 0x1F;\n \n var raw = JSON.stringify(tokens);\n raw = JSON.parse(raw);\n buf = new Buffer(raw);\n\n\t\t//Reading 1\n msg.topic = \"rfm12b/\" + node + \"/1\";\n msg.payload = (buf.readInt16LE(0,true));\n\n\t\t//Reading 2\n msg2 = {};\n msg2.topic = \"rfm12b/\" + node + \"/2\";\n msg2.payload = (buf.readInt16LE(4,true));\n\n\t\t//Battery voltage\n msg3 = {};\n msg3.topic = \"rfm12b/\" + node + \"/mV\"\n msg3.payload = (buf.readInt16LE(2,true));\n\n\t\t// Set URL to send to emoncms\n\t\tmsg4={};\n\t\tmsg4.payload = \"http://YOUR-EMONCMS-URL/api/post.json?apikey=YOUR-API-KEY&node=\" + node + \"&json=data1:\" + msg.payload + \",data2:\" + msg2.payload + \",v:\" + msg3.payload + \"}\";\n \n // OOK relay\n if (node == \"20\"){ \n msg5={};\n msg5.topic = \"homeeasy/remote/\" + buf.readUInt8(1,true) + buf.readUInt8(2,true) + buf.readUInt8(3,true);\n msg5.payload = buf.readUInt8(4,true);\n return [msg,msg2,msg3,msg4,msg5];\n } else {\n return [msg,msg2,msg3,msg4]; \n }\n\n} else {\nreturn null;\n}","outputs":"5","noerr":0,"x":192.83333587646484,"y":96.58333015441895,"wires":[["f6549e2d.09ab6"],["f6549e2d.09ab6"],["f6549e2d.09ab6"],["6c695db4.9396a4"],["7a1b4675.85e4b8","7f461749.80b9e8"]]},{"id":"aebc4a61.5143b8","type":"http request","z":"51ed9ab2.ae1264","name":"emoncms","method":"GET","url":"","x":484.83333587646484,"y":95.58333015441895,"wires":[[]]},{"id":"6c695db4.9396a4","type":"function","z":"51ed9ab2.ae1264","name":"set url","func":"\nmsg.url = msg.payload;\nreturn msg;","outputs":1,"x":354.83333587646484,"y":95.58333015441895,"wires":[["aebc4a61.5143b8"]]},{"id":"2f19a6d4.d0e65a","type":"comment","z":"51ed9ab2.ae1264","name":"Parse incoming","info":"","x":82.66666412353516,"y":30.333330154418945,"wires":[]},{"id":"7f461749.80b9e8","type":"mqtt out","z":"51ed9ab2.ae1264","name":"","topic":"","qos":"","retain":"false","broker":"32a2fac0.cd5d06","x":355,"y":135,"wires":[]}]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment