[{"id":"6ad86faa.d4352","type":"inject","z":"7765c2a1.8ef4ac","name":"","repeat":"30","crontab":"","once":true,"onceDelay":"10","topic":"","payload":"","payloadType":"date","x":110,"y":440,"wires":[["c561132b.7a8cb","dea27e0f.430e98"]]},{"id":"e5f850e8.700f4","type":"split","z":"7765c2a1.8ef4ac","name":"","splt":"\\n","spltType":"str","arraySplt":1,"arraySpltType":"len","stream":false,"addname":"","x":450,"y":420,"wires":[["21e741b3.9e0f9e"]]},{"id":"774efcd4.045f44","type":"function","z":"7765c2a1.8ef4ac","name":"Format Sensor for State","func":"var deviceType = msg.payload.DEVICE_TYPE.toLowerCase()\ndeviceType = deviceType.replace(/\\s/g, '')\nvar serialNumber = msg.payload.SERIAL\nvar state = 0\nif (msg.payload.STATE.toLowerCase() == \"working\")\n{\n state = 1\n}\nmsg.payload = {}\nmsg.payload.state = state\nmsg.payload.sensor_name = deviceType + \"_\" + serialNumber\nmsg.payload.attributes = {}\nmsg.payload.attributes.unit_of_measurement = \"on\"\nmsg.payload.attributes.icon = \"mdi:flash\"\nmsg.payload.attributes.friendly_name = \"Working\"\n\n\nreturn msg;","outputs":1,"noerr":0,"x":570,"y":500,"wires":[["d2a380cc.aebca"]]},{"id":"c561132b.7a8cb","type":"http request","z":"7765c2a1.8ef4ac","name":"Get Solar Info","method":"GET","ret":"obj","paytoqs":"ignore","url":"http://10.0.3.55/cgi-bin/dl_cgi?Command=DeviceList","tls":"","persist":false,"proxy":"","authType":"","x":120,"y":500,"wires":[["3dd9d5be.d3336a","46142eb.27d63d"]]},{"id":"3dd9d5be.d3336a","type":"change","z":"7765c2a1.8ef4ac","name":"Get Devices","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.devices","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":310,"y":500,"wires":[["e5f850e8.700f4"]]},{"id":"21e741b3.9e0f9e","type":"switch","z":"7765c2a1.8ef4ac","name":"Device Type","property":"payload.DEVICE_TYPE","propertyType":"msg","rules":[{"t":"eq","v":"Inverter","vt":"str"},{"t":"eq","v":"Power Meter","vt":"str"},{"t":"eq","v":"PVS","vt":"str"}],"checkall":"true","repair":false,"outputs":3,"x":610,"y":420,"wires":[["774efcd4.045f44","5dd2b6a.2019548","cf0c1e33.b0fb8"],["e04b0bba.a036d8"],[]]},{"id":"5dd2b6a.2019548","type":"function","z":"7765c2a1.8ef4ac","name":"Format Sensor for AC Power","func":"var deviceType = msg.payload.DEVICE_TYPE.toLowerCase()\ndeviceType = deviceType.replace(/\\s/g, '')\nvar serialNumber = msg.payload.SERIAL\nvar power = parseFloat(msg.payload.p_3phsum_kw)\nif (isNaN(power))\n{\n power = 0\n}\n\nmsg.payload = {\"state\":power}\nmsg.payload.sensor_name = deviceType + \"_ac_power_\" + serialNumber\nmsg.payload.attributes = {}\nmsg.payload.attributes.icon = \"mdi:flash\"\nmsg.payload.attributes.unit_of_measurement = \"kW\"\nmsg.payload.attributes.friendly_name = \"AC Power\"\n\nreturn msg;","outputs":1,"noerr":0,"x":580,"y":560,"wires":[["30e6ed53.4718e2"]]},{"id":"cf0c1e33.b0fb8","type":"function","z":"7765c2a1.8ef4ac","name":"Format Sensor for Total Energy","func":"var deviceType = msg.payload.DEVICE_TYPE.toLowerCase()\ndeviceType = deviceType.replace(/\\s/g, '')\nvar serialNumber = msg.payload.SERIAL\nvar power = parseFloat(msg.payload.ltea_3phsum_kwh)\nif (isNaN(power))\n{\n power = 0\n}\n\nmsg.payload = {\"state\":power}\nmsg.payload.sensor_name = deviceType + \"_total_power_\" + serialNumber\nmsg.payload.attributes = {}\nmsg.payload.attributes.icon = \"mdi:flash\"\nmsg.payload.attributes.unit_of_measurement = \"kWh\"\nmsg.payload.attributes.friendly_name = \"Total Power\"\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":590,"y":620,"wires":[["159e8303.5080fd"]]},{"id":"159e8303.5080fd","type":"delay","z":"7765c2a1.8ef4ac","name":"","pauseType":"rate","timeout":"5","timeoutUnits":"seconds","rate":"5","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":850,"y":620,"wires":[["f51037bb.a61608"]]},{"id":"fb539b19.2e4d88","type":"comment","z":"7765c2a1.8ef4ac","name":"This is for the SunPower PVS","info":"","x":140,"y":380,"wires":[]},{"id":"3ed8b40.a776f4c","type":"function","z":"7765c2a1.8ef4ac","name":"Format Sensor for Power Production","func":"var deviceType = msg.payload.DEVICE_TYPE.toLowerCase()\ndeviceType = deviceType.replace(/\\s/g, '')\nvar serialNumber = msg.payload.SERIAL\nvar power = parseFloat(msg.payload.p_3phsum_kw)\nif (isNaN(power))\n{\n power = 0\n}\n\nmsg.payload = {\"state\":power}\nmsg.payload.sensor_name = deviceType + \"_ac_power_\" + serialNumber\nmsg.payload.attributes = {}\nmsg.payload.attributes.icon = \"mdi:flash\"\nmsg.payload.attributes.unit_of_measurement = \"kW\"\nmsg.payload.attributes.friendly_name = \"Power Production\"\n\nreturn msg;","outputs":1,"noerr":0,"x":890,"y":720,"wires":[["b5d738dd.6c4a4"]]},{"id":"e04b0bba.a036d8","type":"switch","z":"7765c2a1.8ef4ac","name":"Is Production Meter?","property":"payload.SERIAL","propertyType":"msg","rules":[{"t":"eq","v":"PVS6M19280261p","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":580,"y":740,"wires":[["3ed8b40.a776f4c","ab010f7b.e1504"]]},{"id":"e9606069.d7639","type":"change","z":"7765c2a1.8ef4ac","name":"Create Total Power Entities","rules":[{"t":"set","p":"topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/config\"\t","tot":"jsonata"},{"t":"set","p":"payload.state_topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/state\"","tot":"jsonata"},{"t":"set","p":"payload.last_reset_topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/last_reset\"","tot":"jsonata"},{"t":"set","p":"payload.name","pt":"msg","to":"payload.sensor_name","tot":"msg"},{"t":"set","p":"payload.icon","pt":"msg","to":"mdi:flash","tot":"str"},{"t":"set","p":"payload.unit_of_measurement","pt":"msg","to":"kWh","tot":"str"},{"t":"set","p":"payload.device_class","pt":"msg","to":"energy","tot":"str"},{"t":"set","p":"payload.state_class","pt":"msg","to":"measurement","tot":"str"},{"t":"delete","p":"payload.state","pt":"msg"},{"t":"delete","p":"payload.attributes","pt":"msg"},{"t":"delete","p":"payload.sensor_name","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1460,"y":660,"wires":[["22486999.f37736"]]},{"id":"be42a75a.53b458","type":"change","z":"7765c2a1.8ef4ac","name":"Update Entities","rules":[{"t":"set","p":"topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/state\"\t","tot":"jsonata"},{"t":"set","p":"payload","pt":"msg","to":"payload.state","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1620,"y":540,"wires":[["22486999.f37736"]]},{"id":"f51037bb.a61608","type":"ha-get-entities","z":"7765c2a1.8ef4ac","name":"","server":"d83da4b3.5bea38","version":0,"rules":[{"property":"entity_id","logic":"is","value":"$lowercase(\"sensor.\" & msg.payload.sensor_name)","valueType":"jsonata"}],"output_type":"count","output_empty_results":false,"output_location_type":"msg","output_location":"sensor_count","output_results_count":1,"x":1010,"y":620,"wires":[["53a60b1d.26220c"]]},{"id":"53a60b1d.26220c","type":"switch","z":"7765c2a1.8ef4ac","name":"Entity Count","property":"sensor_count","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"num"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1170,"y":620,"wires":[["e9606069.d7639","c5142cc1.89be","76f85055.60602"],["be42a75a.53b458"]]},{"id":"c5142cc1.89be","type":"delay","z":"7765c2a1.8ef4ac","name":"","pauseType":"delay","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":1400,"y":540,"wires":[["be42a75a.53b458"]]},{"id":"d2a380cc.aebca","type":"delay","z":"7765c2a1.8ef4ac","name":"","pauseType":"rate","timeout":"5","timeoutUnits":"seconds","rate":"5","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":850,"y":500,"wires":[["5ff76a8e.0280fc"]]},{"id":"5ff76a8e.0280fc","type":"ha-get-entities","z":"7765c2a1.8ef4ac","name":"","server":"d83da4b3.5bea38","version":0,"rules":[{"property":"entity_id","logic":"is","value":"$lowercase(\"sensor.\" & msg.payload.sensor_name)","valueType":"jsonata"}],"output_type":"count","output_empty_results":false,"output_location_type":"msg","output_location":"sensor_count","output_results_count":1,"x":1010,"y":500,"wires":[["c6f20f51.19e5e"]]},{"id":"c6f20f51.19e5e","type":"switch","z":"7765c2a1.8ef4ac","name":"Entity Count","property":"sensor_count","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"num"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1170,"y":500,"wires":[["14071851.88e26","c5142cc1.89be"],["be42a75a.53b458"]]},{"id":"14071851.88e26","type":"change","z":"7765c2a1.8ef4ac","name":"Create State Entities","rules":[{"t":"set","p":"topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/config\"\t","tot":"jsonata"},{"t":"set","p":"payload.state_topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/state\"","tot":"jsonata"},{"t":"set","p":"payload.name","pt":"msg","to":"payload.sensor_name","tot":"msg"},{"t":"set","p":"payload.icon","pt":"msg","to":"mdi:flash","tot":"str"},{"t":"set","p":"payload.unit_of_measurement","pt":"msg","to":"on","tot":"str"},{"t":"delete","p":"payload.state","pt":"msg"},{"t":"delete","p":"payload.attributes","pt":"msg"},{"t":"delete","p":"payload.sensor_name","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1440,"y":420,"wires":[["22486999.f37736"]]},{"id":"30e6ed53.4718e2","type":"delay","z":"7765c2a1.8ef4ac","name":"","pauseType":"rate","timeout":"5","timeoutUnits":"seconds","rate":"5","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":850,"y":560,"wires":[["b5d738dd.6c4a4"]]},{"id":"b5d738dd.6c4a4","type":"ha-get-entities","z":"7765c2a1.8ef4ac","name":"","server":"d83da4b3.5bea38","version":0,"rules":[{"property":"entity_id","logic":"is","value":"$lowercase(\"sensor.\" & msg.payload.sensor_name)","valueType":"jsonata"}],"output_type":"count","output_empty_results":false,"output_location_type":"msg","output_location":"sensor_count","output_results_count":1,"x":1010,"y":560,"wires":[["7f83484a.3cdfc8"]]},{"id":"7f83484a.3cdfc8","type":"switch","z":"7765c2a1.8ef4ac","name":"Entity Count","property":"sensor_count","propertyType":"msg","rules":[{"t":"eq","v":"0","vt":"num"},{"t":"else"}],"checkall":"true","repair":false,"outputs":2,"x":1170,"y":560,"wires":[["c5142cc1.89be","c8087893.ef4de"],["be42a75a.53b458"]]},{"id":"c8087893.ef4de","type":"change","z":"7765c2a1.8ef4ac","name":"Create Power Entities","rules":[{"t":"set","p":"topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/config\"\t","tot":"jsonata"},{"t":"set","p":"payload.state_topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/state\"","tot":"jsonata"},{"t":"set","p":"payload.name","pt":"msg","to":"payload.sensor_name","tot":"msg"},{"t":"set","p":"payload.icon","pt":"msg","to":"mdi:flash","tot":"str"},{"t":"set","p":"payload.unit_of_measurement","pt":"msg","to":"kW","tot":"str"},{"t":"delete","p":"payload.state","pt":"msg"},{"t":"delete","p":"payload.attributes","pt":"msg"},{"t":"delete","p":"payload.sensor_name","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1440,"y":600,"wires":[[]]},{"id":"ab010f7b.e1504","type":"function","z":"7765c2a1.8ef4ac","name":"Format Sensor for Total Power Production","func":"var deviceType = msg.payload.DEVICE_TYPE.toLowerCase()\ndeviceType = deviceType.replace(/\\s/g, '')\nvar serialNumber = msg.payload.SERIAL\nvar power = parseFloat(msg.payload.net_ltea_3phsum_kwh)\nif (isNaN(power))\n{\n power = 0\n}\n\nmsg.payload = {\"state\":power}\nmsg.payload.sensor_name = deviceType + \"_total_ac_power_\" + serialNumber\nmsg.payload.attributes = {}\nmsg.payload.attributes.icon = \"mdi:flash\"\nmsg.payload.attributes.unit_of_measurement = \"kWh\"\nmsg.payload.attributes.friendly_name = \"Total Power Production\"\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":900,"y":780,"wires":[["f51037bb.a61608"]]},{"id":"76f85055.60602","type":"change","z":"7765c2a1.8ef4ac","name":"Set Total Power Last Reset","rules":[{"t":"set","p":"topic","pt":"msg","to":"\"homeassistant/sensor/solar/\" & msg.payload.sensor_name & \"/last_reset\"\t","tot":"jsonata"},{"t":"set","p":"payload","pt":"msg","to":"1970-01-01T00:00:00+00:00","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":1460,"y":720,"wires":[["22486999.f37736"]]},{"id":"22486999.f37736","type":"mqtt out","z":"7765c2a1.8ef4ac","name":"Publish to MQTT","topic":"","qos":"","retain":"true","broker":"1637ed9d.c3de52","x":1870,"y":540,"wires":[]},{"id":"d83da4b3.5bea38","type":"server","name":"Home Assistant","version":1,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true},{"id":"1637ed9d.c3de52","type":"mqtt-broker","name":"Home Assistant","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","willTopic":"","willQos":"0","willRetain":"false","willPayload":""}]