Ok, I took our a spare Pi
Spare Pi...You are my kinda person!
So if I went to a browser and just ran the start pump url command that would be it. That is what your flows in NodeRed seem to be doing. So I can just take that whole list of commands from the PoolController and choose which ones I want to use in NodeRed.
Obviously nothing is working other than getting the index screen since I dont have an Intelliflo yet. But this looks really cool. The readme has a whole set of pump commands that I can just embed in my flows. Seems too good to be true.
That's it! Paste the commands into a web request and do a GET. You can also get more involved with it. If you drag a debug node out and connect the output of Pump Status you can see all the pump info you have access to. I included them below. So if you wanted to make a rpm gauge, for example, you'd pull out a gauge dashboard node and point a function at it to return msg.payload.pump."1".rpm and it'd display it on a nice pretty graph (code for that is at end of this msg) The code won't work right now because rpm returns rpmnotset since we don't have pumps yet. But if you had an actual pump you'd have a RPM gauge that reflected what the pump said its speed was. Pretty cool!
I pulled the trigger on a Superflo VS the other day so I'll have to live vicariously through you guys for the next decade. Given I now have 16 relays (take THAT Intellicenter 10i!) I'm just going to burn 3 of them to switch between a few pre-set speeds. Since I don't have anything special on my pool it didn't make sense to pay the extra 500 bucks
Fields returned from nodejs pump status command:
{"pump":1,
"name":"namenotset",
"type":"typenotset"
,"time":"timenotset",
"run":"runnotset",
"mode":"modenotset",
"drivestate":"drivestatenotset",
"watts":"wattsnotset",
"rpm":"rpmnotset",
"gpm":"gpmnotset",
"ppc":"ppcnotset",
"err":"errnotset",
"timer":"timernotset",
"duration":"durationnotset",
"currentrunning":{"mode":"off",
"value":0,"remainingduration":-1},
"externalProgram":{"1":-1,"2":-1,"3":-1,"4":-1},
"remotecontrol":"remotecontrolnotset",
"power":"powernotset"
}
-- Start Node-Red Export:
[{"id":"6b473864.c23c28","type":"tab","label":"Intelliflo","disabled":false,"info":""},{"id":"e2a2549c.2e2c88","type":"http request","z":"6b473864.c23c28","name":"Pump Status","method":"GET","ret":"obj","paytoqs":false,"url":"
http://192.168.199.103:3000/pump","tls":"","proxy":"","authType":"","x":330,"y":60,"wires":[["1c6a6219.0503be","3604ff11.1c9ba","70ae77c2.f14498"]]},{"id":"bf477c60.2458","type":"inject","z":"6b473864.c23c28","name":"","topic":"","payload":"Push button to go","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":140,"y":60,"wires":[["e2a2549c.2e2c88"]]},{"id":"3301db19.05e2e4","type":"http request","z":"6b473864.c23c28","name":"Run Pump","method":"GET","ret":"obj","paytoqs":false,"url":"
http://192.168.199.103:3000/pumpCommand/run/pump/1","tls":"","proxy":"","authType":"","x":330,"y":120,"wires":[[]]},{"id":"3f05f67e.766aba","type":"inject","z":"6b473864.c23c28","name":"","topic":"","payload":"Push button to go","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":140,"y":120,"wires":[["3301db19.05e2e4"]]},{"id":"88f0911b.cc0e6","type":"http request","z":"6b473864.c23c28","name":"Stop Pump","method":"GET","ret":"obj","paytoqs":false,"url":"
http://127.0.0.1:3000/pumpCommand/off/pump/1","tls":"","proxy":"","authType":"","x":330,"y":180,"wires":[[]]},{"id":"a2b7462a.e23dd8","type":"inject","z":"6b473864.c23c28","name":"","topic":"","payload":"Push button to go","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":140,"y":180,"wires":[["88f0911b.cc0e6"]]},{"id":"1c6a6219.0503be","type":"switch","z":"6b473864.c23c28","name":"Switch - Toggle Pump","property":"payload.pump.1.currentrunning.mode","propertyType":"msg","rules":[{"t":"eq","v":"off","vt":"str"},{"t":"eq","v":"on","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":610,"y":80,"wires":[["3301db19.05e2e4"],["88f0911b.cc0e6"]]},{"id":"70ae77c2.f14498","type":"debug","z":"6b473864.c23c28","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":810,"y":180,"wires":[]},{"id":"96924c3b.030dc","type":"ui_gauge","z":"6b473864.c23c28","name":"","group":"cb094c81.df18c","order":1,"width":0,"height":0,"gtype":"gage","title":"RPM","label":"units","format":"{{value}}","min":0,"max":10,"colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":790,"y":260,"wires":[]},{"id":"3604ff11.1c9ba","type":"change","z":"6b473864.c23c28","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"$number($trim(payload.pump.\"1\".rpm))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":500,"y":220,"wires":[["70ae77c2.f14498","96924c3b.030dc"]]},{"id":"cb094c81.df18c","type":"ui_group","z":"","name":"Home","tab":"a6c58704.bdabf8","disp":true,"width":"6","collapse":false},{"id":"a6c58704.bdabf8","type":"ui_tab","z":"","name":"Chemicals","icon":"dashboard","disabled":false,"hidden":false}]