[{"id":"c575ff75.3289b","type":"tab","label":"P1 + SMA Logging","disabled":false,"info":""},{"id":"6e31895a.57e5b8","type":"modbus-getter","z":"c575ff75.3289b","name":"Yield","showStatusActivities":true,"showErrors":true,"logIOActivities":false,"unitid":"3","dataType":"HoldingRegister","adr":"30531","quantity":"2","server":"26890943.6257c6","useIOFile":false,"ioFile":"","useIOForPayload":false,"x":457.50000381469727,"y":222.00001335144043,"wires":[["4700b20a.0d6a2c"],[]]},{"id":"999c9ed6.8439","type":"modbus-getter","z":"c575ff75.3289b","name":"DC1 - AC","showStatusActivities":false,"showErrors":false,"logIOActivities":false,"unitid":"","dataType":"HoldingRegister","adr":"30769","quantity":"16","server":"26890943.6257c6","useIOFile":false,"ioFile":"","useIOForPayload":false,"x":467.50000381469727,"y":441.00001335144043,"wires":[["6e20f164.5e585","83df4273.05a4c"],[]]},{"id":"7e88c112.ccd21","type":"modbus-getter","z":"c575ff75.3289b","name":"Temp - DC2 - AC","showStatusActivities":false,"showErrors":false,"logIOActivities":false,"unitid":"","dataType":"HoldingRegister","adr":"30953","quantity":"26","server":"26890943.6257c6","useIOFile":false,"ioFile":"","useIOForPayload":false,"x":490.50000381469727,"y":320.00001335144043,"wires":[["3d2267b5.2f7558","765e9089.58d2c"],[]]},{"id":"3d2267b5.2f7558","type":"function","z":"c575ff75.3289b","name":"Extract + Format SMA DC2","func":"let DCCurrent2 = msg.payload[5] / 1000; // 30957\nlet DCVoltage2 = msg.payload[7] / 100; // 30959\nlet DCPower2 = msg.payload[9]; // 30961\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tcurrent: DCCurrent2,\n\t\t\tvoltage: DCVoltage2,\n\t\t\tpower: DCPower2,\n\t\t},\n\t\ttags:{\n\t\t device: \"SMA 5.0 - MPPT A\",\n\t\t orientation: \"West\",\n\t\t type: \"DC\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":744.0000038146973,"y":282.00001335144043,"wires":[["354954fa.eb277c"]]},{"id":"4700b20a.0d6a2c","type":"function","z":"c575ff75.3289b","name":"Extract + Format SMA Yield","func":"let TotalYield = msg.payload[1] ; // 30531\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: TotalYield,\n\t\t},\n\t\ttags:{\n\t\t device: \"SMA 5.0 - System\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":742.0000038146973,"y":215.00001335144043,"wires":[["a63fde53.8d639"]]},{"id":"fd9b6f0f.7573f","type":"debug","z":"c575ff75.3289b","name":"Debug","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":1848.5001773834229,"y":361.0000972747803,"wires":[]},{"id":"83df4273.05a4c","type":"function","z":"c575ff75.3289b","name":"Extract + Format SMA DC1","func":"let DCCurrent1 = msg.payload[1] / 1000; // 30769\nlet DCVoltage1 = msg.payload[3] / 100; // 30771\nlet DCPower1 = msg.payload[5]; // 30773\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tcurrent: DCCurrent1,\n\t\t\tvoltage: DCVoltage1,\n\t\t\tpower: DCPower1, \n\t\t},\n\t\ttags:{\n\t\t device: \"SMA 5.0 - MPPT B\",\n\t\t orientation: \"East\",\n\t\t type: \"DC\",\n\t\t},\n\t\ttimestamp: flow.timestamp\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":782.0000038146973,"y":473.00001335144043,"wires":[["dad8a724.c37438"]]},{"id":"5c19e045.5fca9","type":"join","z":"c575ff75.3289b","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"8","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":1717.5000381469727,"y":360.0000343322754,"wires":[["fd9b6f0f.7573f"]]},{"id":"6e20f164.5e585","type":"function","z":"c575ff75.3289b","name":"Extract SMA AC","func":"let PowerTot = msg.payload[7]; // 30775\nlet GridVoltagePhase1 = msg.payload[15] / 100; // 30783\n\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n\t\t\tsma_ac_power_tot: PowerTot,\n\t\t\tsma_ac_voltage: GridVoltagePhase1,\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":746.0000190734863,"y":405.0000352859497,"wires":[["c4f7a9b9.4e9138","531230d7.f6736"]]},{"id":"765e9089.58d2c","type":"function","z":"c575ff75.3289b","name":"Extract SMA AC + Temp","func":"let InternalTemperature = msg.payload[1] /10; // 30953\nlet ACCurrentL1 = msg.payload[25] / 1000; // 30977\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n\t\t\tsma_temperature: InternalTemperature,\n\t\t\tsma_ac_currentL1: ACCurrentL1,\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":733.0000038146973,"y":344.00001335144043,"wires":[["c4f7a9b9.4e9138"]]},{"id":"c4f7a9b9.4e9138","type":"join","z":"c575ff75.3289b","name":"","mode":"custom","build":"merged","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"5","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":954.5000534057617,"y":374.0000057220459,"wires":[["e53d5caf.433c9","b174456.b02beb8"]]},{"id":"e53d5caf.433c9","type":"function","z":"c575ff75.3289b","name":"Format SMA AC","func":"let _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tcurrent: msg.payload.sma_ac_currentL1,\n\t\t\tvoltage: msg.payload.sma_ac_voltage,\n\t\t\tpower: msg.payload.sma_ac_power_tot,\n\t\t},\n\t\ttags:{\n\t\t device: \"SMA 5.0 - System\",\n\t\t type: \"AC\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":1150.5000610351562,"y":419.00004863739014,"wires":[["1d478725.e60949"]]},{"id":"b174456.b02beb8","type":"function","z":"c575ff75.3289b","name":"Format SMA Temp","func":"let _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"temperature\",\n\t\tfields: {\n\t\t\ttemperature: msg.payload.sma_temperature,\n\t\t},\n\t\ttags:{\n\t\t device: \"SMA 5.0 - System\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":1151.000087738037,"y":329.0000820159912,"wires":[["551ecf99.386c2"]]},{"id":"4380e15c.119c8","type":"influxdb batch","z":"c575ff75.3289b","influxdb":"b4a8fa5f.129f88","precision":"","retentionPolicy":"","name":"InfluxDB","x":1858.4999961853027,"y":302.0000743865967,"wires":[]},{"id":"dad8a724.c37438","type":"switch","z":"c575ff75.3289b","name":"Filter null","property":"payload.fields.power","propertyType":"msg","rules":[{"t":"neq","v":"0","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":1362.4999961853027,"y":472.99999809265137,"wires":[["5c19e045.5fca9"]]},{"id":"551ecf99.386c2","type":"switch","z":"c575ff75.3289b","name":"Filter null","property":"payload.fields.temperature","propertyType":"msg","rules":[{"t":"neq","v":"0","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":1360.5000610351562,"y":329.0000591278076,"wires":[["5c19e045.5fca9"]]},{"id":"1d478725.e60949","type":"switch","z":"c575ff75.3289b","name":"Filter null","property":"payload.fields.power","propertyType":"msg","rules":[{"t":"neq","v":"0","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":1360.5000267028809,"y":420.00012016296387,"wires":[["5c19e045.5fca9"]]},{"id":"354954fa.eb277c","type":"switch","z":"c575ff75.3289b","name":"Filter null","property":"payload.fields.power","propertyType":"msg","rules":[{"t":"neq","v":"0","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":1358.4999923706055,"y":284.0000057220459,"wires":[["5c19e045.5fca9"]]},{"id":"2ef2880e.c9ad28","type":"function","z":"c575ff75.3289b","name":"Set totalyield filter value","func":"flow.set('totalyield',msg.payload.fields.totalyield);","outputs":1,"noerr":0,"x":1433.5000038146973,"y":178.00001335144043,"wires":[[]]},{"id":"e0683ff7.c7756","type":"switch","z":"c575ff75.3289b","name":"Limit Repeating","property":"payload.fields.totalyield","propertyType":"msg","rules":[{"t":"neq","v":"totalyield","vt":"flow"}],"checkall":"true","repair":false,"outputs":1,"x":1188.5000305175781,"y":214.00001907348633,"wires":[["2ef2880e.c9ad28","5c19e045.5fca9"]]},{"id":"14b7d5b5.45529a","type":"inject","z":"c575ff75.3289b","name":"Reset totalyield filter","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":171.5,"y":58,"wires":[["6ebecb35.53f764"]]},{"id":"6ebecb35.53f764","type":"function","z":"c575ff75.3289b","name":"Reset totalyield filter value","func":"flow.set('totalyield',0);","outputs":1,"noerr":0,"x":486,"y":58,"wires":[[]]},{"id":"a63fde53.8d639","type":"switch","z":"c575ff75.3289b","name":"Filter invalid","property":"payload.fields.totalyield","propertyType":"msg","rules":[{"t":"neq","v":"65535","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":955.0000267028809,"y":214.00001907348633,"wires":[["e0683ff7.c7756"]]},{"id":"500d50c8.f02a2","type":"exec","z":"c575ff75.3289b","command":"smeterd","addpay":false,"append":"read-meter --serial-baudrate 115200 --show-output consumed current produced voltage --tsv","useSpawn":"false","timer":"5","oldrc":false,"name":"","x":462.99999237060547,"y":552.0000896453857,"wires":[["a09b135.05a3cf"],[],[]]},{"id":"a09b135.05a3cf","type":"function","z":"c575ff75.3289b","name":"Extract smeterd","func":"var payload = msg.payload\nvar clean_payload = msg.payload.trim();\n\nvar output = clean_payload.split('\\t');\n\n\nvar consumed_high = output[0];\nvar consumed_low = output[1];\nvar consumed_gas = output[2];\nvar produced_high = output[3];\nvar produced_low = output[4];\nvar current_consumption = output[5];\nvar current_production = output[6];\nvar current_voltage = output[7];\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n consumed_high: consumed_high,\n consumed_low: consumed_low,\n consumed_gas: consumed_gas,\n produced_high: produced_high,\n produced_low: produced_low,\n current_consumption: current_consumption,\n current_production: current_production,\n current_voltage: current_voltage,\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":809.9999961853027,"y":735.5000286102295,"wires":[["5332693b.0df818","b00d294c.b32aa8","92a714b.1ae2fe8","37b8bce1.c51bd4","bc1cb20a.bb508","ff790294.9fbdc","b8991294.a81c5","769b89f3.fe24e8","7a92c10c.a94f9"]]},{"id":"b00d294c.b32aa8","type":"function","z":"c575ff75.3289b","name":"Format P1 Usage Low","func":"let consumed_low = msg.payload.consumed_low / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: consumed_low,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"Low\",\n\t\t direction: \"Grid Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1376.5001258850098,"y":847.5000367164612,"wires":[["5c19e045.5fca9"]]},{"id":"92a714b.1ae2fe8","type":"function","z":"c575ff75.3289b","name":"Format P1 Usage High","func":"let consumed_high = msg.payload.consumed_high / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: consumed_high,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"High\",\n\t\t direction: \"Grid Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1376.0001106262207,"y":883.5000219345093,"wires":[["5c19e045.5fca9"]]},{"id":"bc1cb20a.bb508","type":"function","z":"c575ff75.3289b","name":"Format P1 Delivery High","func":"let produced_high = msg.payload.produced_high / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: produced_high,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"Low\",\n\t\t direction: \"Grid Delivery\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1385.0001106262207,"y":971.5000238418579,"wires":[["5c19e045.5fca9"]]},{"id":"ff790294.9fbdc","type":"function","z":"c575ff75.3289b","name":"Format P1 Delivery High","func":"let produced_low = msg.payload.produced_low / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: produced_low,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"High\",\n\t\t direction: \"Grid Delivery\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1386.0001106262207,"y":1009.5000238418579,"wires":[["5c19e045.5fca9"]]},{"id":"7a92c10c.a94f9","type":"function","z":"c575ff75.3289b","name":"Extract P1 Power","func":"let current_voltage = msg.payload.current_voltage\nlet current_consumption = msg.payload.current_consumption\nlet current_production = msg.payload.current_production\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n\t\t\tp1_ac_power_usage: Number(current_consumption),\n\t\t\tp1_ac_power_delivery: Number(current_production),\n\t\t\tp1_ac_voltage: Number(current_voltage),\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":778.0002098083496,"y":578.4999980926514,"wires":[["82d778e7.80e7f8","2ada881f.bc1998","f5eed518.1622a8","531230d7.f6736"]]},{"id":"82d778e7.80e7f8","type":"function","z":"c575ff75.3289b","name":"Format Grid Net Usage","func":"let _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tvoltage: msg.payload.p1_ac_voltage,\n\t\t\tpower: msg.payload.p1_ac_power_usage - msg.payload.p1_ac_power_delivery,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t type: \"AC\",\n\t\t direction: \"Grid Net Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":1214.5000305175781,"y":589.5000104904175,"wires":[["5c19e045.5fca9"]]},{"id":"37b8bce1.c51bd4","type":"function","z":"c575ff75.3289b","name":"Format P1 Usage Total","func":"let consumed_high = msg.payload.consumed_high / 1000;\nlet consumed_low = msg.payload.consumed_low / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: consumed_high + consumed_low,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"Total\",\n\t\t direction: \"Grid Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1376.0001258850098,"y":920.3000378608704,"wires":[["5c19e045.5fca9"]]},{"id":"b8991294.a81c5","type":"function","z":"c575ff75.3289b","name":"Format P1 Delivery Total","func":"let produced_low = msg.payload.produced_low / 1000;\nlet produced_high = msg.payload.produced_high / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: produced_low + produced_high,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"Total\",\n\t\t direction: \"Grid Delivery\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1386.0001106262207,"y":1046.30002450943,"wires":[["5c19e045.5fca9"]]},{"id":"769b89f3.fe24e8","type":"function","z":"c575ff75.3289b","name":"Format P1 Net Usage","func":"let consumed_low = msg.payload.consumed_low / 1000;\nlet consumed_high = msg.payload.consumed_high / 1000;\nlet produced_low = msg.payload.produced_low / 1000;\nlet produced_high = msg.payload.produced_high / 1000;\n\nlet TotalUsage = consumed_low + consumed_high;\nlet TotalDelivery = produced_low + produced_high;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"yield\",\n\t\tfields: {\n\t\t\ttotalyield: TotalUsage - TotalDelivery,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t rate: \"Total\",\n\t\t direction: \"Grid Net Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1374.0001029968262,"y":1103.300018787384,"wires":[["5c19e045.5fca9"]]},{"id":"5332693b.0df818","type":"function","z":"c575ff75.3289b","name":"Format P1 Gas","func":"let consumed_gas = msg.payload.consumed_gas / 1000;\nlet _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n measurement: \"gas\",\n\t\tfields: {\n\t\t\ttotalyield: consumed_gas,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t direction: \"Grid Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":1355.2002182006836,"y":795.5000591278076,"wires":[["5c19e045.5fca9"]]},{"id":"2ada881f.bc1998","type":"function","z":"c575ff75.3289b","name":"Format Grid Usage","func":"let _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tvoltage: msg.payload.p1_ac_voltage,\n\t\t\tpower: msg.payload.p1_ac_power_usage,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t type: \"AC\",\n\t\t direction: \"Grid Usage\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":1194.0000228881836,"y":641.5000286102295,"wires":[["85ba72b5.96c5b"]]},{"id":"f5eed518.1622a8","type":"function","z":"c575ff75.3289b","name":"Format Grid Delivery","func":"let _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tvoltage: msg.payload.p1_ac_voltage,\n\t\t\tpower: msg.payload.p1_ac_power_delivery*-1,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t type: \"AC\",\n\t\t direction: \"Grid Delivery\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":1204.000057220459,"y":689.5000281333923,"wires":[["2545f0aa.fd982"]]},{"id":"85ba72b5.96c5b","type":"switch","z":"c575ff75.3289b","name":"Filter null","property":"payload.fields.power","propertyType":"msg","rules":[{"t":"neq","v":"0","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":1397.5000267028809,"y":641.5000286102295,"wires":[["5c19e045.5fca9"]]},{"id":"2545f0aa.fd982","type":"switch","z":"c575ff75.3289b","name":"Filter null","property":"payload.fields.power","propertyType":"msg","rules":[{"t":"neq","v":"","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":1392.500057220459,"y":689.5000286102295,"wires":[["5c19e045.5fca9"]]},{"id":"d7098e5e.16af5","type":"function","z":"c575ff75.3289b","name":"Format Internal Consumption","func":"usage = msg.payload.p1_ac_power_usage;\ndelivery = msg.payload.p1_ac_power_delivery;\nproduction = msg.payload.sma_ac_power_tot;\n\nnet_grid = usage - delivery;\n\nnet_internal_consumption = production + net_grid;\n\nlet _msg = {\n payload: []\n};\n\n_msg.payload=\n {\n measurement: \"energy\",\n\t\tfields: {\n\t\t\tvoltage: msg.payload.p1_ac_voltage,\n\t\t\tpower: net_internal_consumption,\n\t\t},\n\t\ttags:{\n\t\t device: \"P1\",\n\t\t type: \"AC\",\n\t\t direction: \"Internal Consumption\",\n\t\t},\n\t\ttimestamp: flow.get('timestamp')\n\t}\n\nreturn _msg;","outputs":1,"noerr":0,"x":1224.6667785644531,"y":538.3333415985107,"wires":[["5c19e045.5fca9"]]},{"id":"64ade0ea.207a3","type":"inject","z":"c575ff75.3289b","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":128.28124237060547,"y":194.45313835144043,"wires":[["d961d136.d2109"]]},{"id":"531230d7.f6736","type":"join","z":"c575ff75.3289b","name":"","mode":"custom","build":"merged","property":"payload","propertyType":"msg","key":"topic","joiner":"\\n","joinerType":"str","accumulate":false,"timeout":"5","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"","reduceFixup":"","x":1030.0235862731934,"y":539.0390911102295,"wires":[["d7098e5e.16af5"]]},{"id":"d961d136.d2109","type":"function","z":"c575ff75.3289b","name":"Create Timestamp","func":"let _msg = {\n payload:[]\n};\n\n_msg.payload=\n {\n\t\ttimestamp: new Date()\n\t}\n\n\nreturn _msg;","outputs":1,"noerr":0,"x":182.28123474121094,"y":258.33595085144043,"wires":[["a416aec4.850b4"]]},{"id":"a416aec4.850b4","type":"change","z":"c575ff75.3289b","name":"Set Timestamp","rules":[{"t":"set","p":"payload.timestamp","pt":"msg","to":"timestamp","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":244.28905487060547,"y":320.3437786102295,"wires":[["6e31895a.57e5b8","7e88c112.ccd21","999c9ed6.8439","500d50c8.f02a2"]]},{"id":"26890943.6257c6","type":"modbus-client","z":"","name":"SMA","clienttype":"tcp","bufferCommands":true,"stateLogEnabled":true,"tcpHost":"10.5.0.70","tcpPort":"502","tcpType":"DEFAULT","serialPort":"/dev/ttyUSB","serialType":"RTU-BUFFERD","serialBaudrate":"9600","serialDatabits":"8","serialStopbits":"1","serialParity":"none","serialConnectionDelay":"100","unit_id":"3","commandDelay":"1","clientTimeout":"1500","reconnectTimeout":"2000"},{"id":"b4a8fa5f.129f88","type":"influxdb","z":"","hostname":"127.0.0.1","port":"8086","protocol":"http","database":"SMA","name":"","usetls":false,"tls":"f26ea607.4740a8"},{"id":"f26ea607.4740a8","type":"tls-config","z":"","name":"local-tls","cert":"","key":"","ca":"","certname":"","keyname":"","caname":"","verifyservercert":false}]