Skip to content

Instantly share code, notes, and snippets.

@jhottell
Created August 22, 2017 18:18
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 jhottell/3059683bd26bc549a459d93174e1aa42 to your computer and use it in GitHub Desktop.
Save jhottell/3059683bd26bc549a459d93174e1aa42 to your computer and use it in GitHub Desktop.
MQTT SparkPlug Device Example

Shows how to create a SparkPlug device in Node-red and add a few values

[{"id":"111e698.eea0097","type":"sparkplug","z":"a5f3a40c.298f18","name":"","broker":"tcp://localhost","port":"1883","clientid":"Pinger","groupid":"Sparkplug Devices","edgenode":"Node-RED Edge Node","version":"spBv1.0","enablecache":"true","publishdeath":"true","user":"nodered","password":"nodered","x":427.1667289733887,"y":296.3333492279053,"wires":[["add263a7.9d18b","25c72e8.df6a2d2"]]},{"id":"a3f7a4f8.f16ee8","type":"inject","z":"a5f3a40c.298f18","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":true,"x":95.16667175292969,"y":301,"wires":[["c88e0736.eec2f8"]]},{"id":"c88e0736.eec2f8","type":"function","z":"a5f3a40c.298f18","name":"","func":"msg.topic = \"pinger/DBIRTH\"\nmsg.payload = {\n \"timestamp\" : Date.now(),\n \"metrics\" : [\n {\n \"name\" : \"google/ping\",\n \"value\" :-1,\n \"type\" : \"float\"\n },\n {\n \"name\" : \"facebook/ping\",\n \"value\" :-1,\n \"type\" : \"float\"\n },\n {\n \"name\" : \"demo/writeable bool\",\n \"value\" :false,\n \"type\" : \"boolean\"\n }\n ]\n}\nreturn msg;\n","outputs":1,"noerr":0,"x":239.16668701171875,"y":302.3333435058594,"wires":[["111e698.eea0097"]]},{"id":"5f705084.8eabb","type":"ping","z":"a5f3a40c.298f18","name":"","host":"www.google.com","timer":"1000","x":123.16668701171875,"y":173.66667366027832,"wires":[["209a9d47.8f32e2"]]},{"id":"209a9d47.8f32e2","type":"function","z":"a5f3a40c.298f18","name":"","func":"var np = {\n \"timestamp\" : Date.now()\n};\nvar metrics = [];\nmetrics.push({\n \"name\" : \"google/ping\",\n \"value\" : msg.payload,\n \"type\" : \"float\"\n});\n\nnp[\"metrics\"] = metrics\nmsg.payload = np\nmsg.topic = \"pinger/DDATA\"\nreturn msg;","outputs":1,"noerr":0,"x":291.1667022705078,"y":176.33335494995117,"wires":[["111e698.eea0097"]]},{"id":"64221948.e2de18","type":"ping","z":"a5f3a40c.298f18","name":"","host":"www.facebook.com","timer":"1000","x":126,"y":110,"wires":[["27db8659.bb2b4a"]]},{"id":"27db8659.bb2b4a","type":"function","z":"a5f3a40c.298f18","name":"","func":"var np = {\n \"timestamp\" : Date.now()\n};\nvar metrics = [];\nmetrics.push({\n \"name\" : \"facebook/ping\",\n \"value\" : msg.payload,\n \"type\" : \"float\"\n});\n\nnp[\"metrics\"] = metrics\nmsg.payload = np\nmsg.topic = \"pinger/DDATA\"\nreturn msg;","outputs":1,"noerr":0,"x":282,"y":114,"wires":[["111e698.eea0097"]]},{"id":"25c72e8.df6a2d2","type":"debug","z":"a5f3a40c.298f18","name":"","active":true,"console":"false","complete":"true","x":629.1666870117188,"y":298,"wires":[]},{"id":"f8f1f2c8.ea94f","type":"function","z":"a5f3a40c.298f18","name":"","func":"var np = {\n \"timestamp\" : Date.now()\n};\nvar metrics = [];\nmetrics.push({\n \"name\" : \"demo/writeable bool\",\n \"value\" : msg.payload.metrics[0].value,\n \"type\" : \"boolean\"\n});\n\nnp[\"metrics\"] = metrics\nmsg.payload = np\nmsg.topic = \"pinger/DDATA\"\nreturn msg;","outputs":1,"noerr":0,"x":502.6666564941406,"y":116,"wires":[["111e698.eea0097"]]},{"id":"add263a7.9d18b","type":"switch","z":"a5f3a40c.298f18","name":"","property":"payload.metrics[0].name","propertyType":"msg","rules":[{"t":"eq","v":"demo/writeable bool","vt":"str"},{"t":"eq","v":"rebirth","vt":"str"}],"checkall":"true","outputs":2,"x":535.8333206176758,"y":225.66670036315918,"wires":[["f8f1f2c8.ea94f"],[]]}]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment