Goodwe inverter

Is there someone who communicates directly with a Goodwe inverter in the home network?
I"m fairly new to node-red and are hoping for some code to do this
Greets Rien

Are the existing threads of use? Search results for 'Goodwe order:latest' - Node-RED Forum

Yes i currently have 3 x GoodWe SBP 5000 (AC coupled Single Phase LV inverters) that i use for Grid Arbitrage and control them through Modbus

I am just going through the final design for our new house which will have a GoodWe 29.9K Hybrid Inverter and intend to do all control through Modbus on that also

Craig

What do you need

Hi Greg, I just started and don't have much experience.
Is it possible that you have a code of how to get the status of the inverter.?
Do you also regulate the generating capacity of the inverter?

My inverters are AC coupled only - they do not have any PV attached - so yes i manually control what they are doing (which is exceptionally easy once you get over the initial hurdles)

What model inverter do you have ?

My setup looks like This

Node Red (Virtual Machine) TCPIP > 4 Port TPC/RTU device > RS485 to each of the 3 inverters

Here is the basic code for querying the inverters using Modbus

[{"id":"f24223123dfb4d14","type":"group","z":"8f18eed8.4d3ac","style":{"stroke":"#999999","stroke-opacity":"1","fill":"none","fill-opacity":"1","label":true,"label-position":"nw","color":"#a4a4a4"},"nodes":["27bca47250e35d8e","0e3f07b24fb90d4c","8e9895ecaf9e8eec","f50c9add45a457a7","03aeb53c3c9b5143","5a34e61b6845ff35","c959544869dc5c9a","c8d490f73a2a2f1c","90c89cf1f732ff79","0658d2a416fa9c1f","cb9d343666c1105c","5a2f11ac0a3fcca0","4b63d8f61d367987","e7206133f9c601ba","7a32fc66c0ac026f","788da596.e7358c","15baa0974d89f5fe","13784cc687a656e4","28c1b8a6f1d01ed7","ed7d40b8cb6fc86c","6fb2e67d90d3edf2","38b15abe84e9f426","6dacaafd638c3e8a","c34b5ca76830c5c9","e8a898d17d2ee4cd","b097c31d4de3e8f1","d3f508afe371431d"],"x":54,"y":459,"w":1692,"h":1022},{"id":"27bca47250e35d8e","type":"buffer-parser","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"PV Stats","data":"payload","dataType":"msg","specification":"spec","specificationType":"ui","items":[{"type":"int16be","name":"Battery_Voltage","offset":0,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"TBD","offset":2,"length":1,"offsetbit":0,"scale":".01","mask":""},{"type":"int16be","name":"BMS_Status","offset":4,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS _Temperature","offset":6,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Battery_Current","offset":8,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"BMS_Max_Charge","offset":10,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS_Max_Discharge","offset":12,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS_Error_Code","offset":14,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"SOC","offset":16,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"SOH","offset":22,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Battery_Mode","offset":24,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Grid_Voltage","offset":32,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_Current","offset":34,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_Power","offset":36,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Grid_Frequency","offset":38,"length":1,"offsetbit":0,"scale":".01","mask":""},{"type":"int16be","name":"Grid_Mode","offset":40,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Work_Mode","offset":52,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Inverter_Temperature","offset":54,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_in_out_Flag","offset":80,"length":1,"offsetbit":0,"scale":"1","mask":""}],"swap1":"","swap2":"","swap3":"","swap1Type":"swap","swap2Type":"swap","swap3Type":"swap","msgProperty":"payload","msgPropertyType":"str","resultType":"keyvalue","resultTypeType":"return","multipleResult":false,"fanOutMultipleResult":false,"setTopic":true,"outputs":1,"x":600,"y":520,"wires":[["c959544869dc5c9a","0658d2a416fa9c1f","13784cc687a656e4"]]},{"id":"0e3f07b24fb90d4c","type":"modbus-read","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Left - 180 - All Registers","topic":"","showStatusActivities":true,"logIOActivities":false,"showErrors":true,"showWarnings":true,"unitid":"247","dataType":"HoldingRegister","adr":"0x0506","quantity":"50","rate":"30","rateUnit":"s","delayOnStart":true,"startDelayTime":"","server":"1d7be2203213cf7d","useIOFile":false,"ioFile":"6b66c4e5.3debb4","useIOForPayload":false,"emptyMsgOnFail":false,"x":290,"y":500,"wires":[["27bca47250e35d8e"],[]]},{"id":"8e9895ecaf9e8eec","type":"buffer-parser","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"PV Stats","data":"payload","dataType":"msg","specification":"spec","specificationType":"ui","items":[{"type":"int16be","name":"Battery_Voltage","offset":0,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"TBD","offset":2,"length":1,"offsetbit":0,"scale":".01","mask":""},{"type":"int16be","name":"BMS_Status","offset":4,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS _Temperature","offset":6,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Battery_Current","offset":8,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"BMS_Max_Charge","offset":10,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS_Max_Discharge","offset":12,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS_Error_Code","offset":14,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"SOC","offset":16,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"SOH","offset":22,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Battery_Mode","offset":24,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Grid_Voltage","offset":32,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_Current","offset":34,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_Power","offset":36,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Grid_Frequency","offset":38,"length":1,"offsetbit":0,"scale":".01","mask":""},{"type":"int16be","name":"Grid_Mode","offset":40,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Work_Mode","offset":52,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Inverter_Temperature","offset":54,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_in_out_Flag","offset":80,"length":1,"offsetbit":0,"scale":"1","mask":""}],"swap1":"","swap2":"","swap3":"","swap1Type":"swap","swap2Type":"swap","swap3Type":"swap","msgProperty":"payload","msgPropertyType":"str","resultType":"keyvalue","resultTypeType":"return","multipleResult":false,"fanOutMultipleResult":false,"setTopic":true,"outputs":1,"x":580,"y":780,"wires":[["c8d490f73a2a2f1c","cb9d343666c1105c","b097c31d4de3e8f1"]]},{"id":"f50c9add45a457a7","type":"modbus-read","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Left - 181 - All Registers","topic":"","showStatusActivities":true,"logIOActivities":false,"showErrors":true,"showWarnings":true,"unitid":"247","dataType":"HoldingRegister","adr":"0x0506","quantity":"50","rate":"30","rateUnit":"s","delayOnStart":true,"startDelayTime":"","server":"ef6245036c03d53b","useIOFile":false,"ioFile":"6b66c4e5.3debb4","useIOForPayload":false,"emptyMsgOnFail":false,"x":250,"y":780,"wires":[["8e9895ecaf9e8eec"],[]]},{"id":"03aeb53c3c9b5143","type":"buffer-parser","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"PV Stats","data":"payload","dataType":"msg","specification":"spec","specificationType":"ui","items":[{"type":"int16be","name":"Battery_Voltage","offset":0,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"TBD","offset":2,"length":1,"offsetbit":0,"scale":".01","mask":""},{"type":"int16be","name":"BMS_Status","offset":4,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS _Temperature","offset":6,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Battery_Current","offset":8,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"BMS_Max_Charge","offset":10,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS_Max_Discharge","offset":12,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"BMS_Error_Code","offset":14,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"SOC","offset":16,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"SOH","offset":22,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Battery_Mode","offset":24,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Grid_Voltage","offset":32,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_Current","offset":34,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_Power","offset":36,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Grid_Frequency","offset":38,"length":1,"offsetbit":0,"scale":".01","mask":""},{"type":"int16be","name":"Grid_Mode","offset":40,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Load_Voltage","offset":42,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Load_Current","offset":44,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Load_Power","offset":46,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Work_Mode","offset":52,"length":1,"offsetbit":0,"scale":"1","mask":""},{"type":"int16be","name":"Inverter_Temperature","offset":54,"length":1,"offsetbit":0,"scale":".1","mask":""},{"type":"int16be","name":"Grid_in_out_Flag","offset":80,"length":1,"offsetbit":0,"scale":"1","mask":""}],"swap1":"","swap2":"","swap3":"","swap1Type":"swap","swap2Type":"swap","swap3Type":"swap","msgProperty":"payload","msgPropertyType":"str","resultType":"keyvalue","resultTypeType":"return","multipleResult":false,"fanOutMultipleResult":false,"setTopic":true,"outputs":1,"x":540,"y":1140,"wires":[["90c89cf1f732ff79","5a2f11ac0a3fcca0","6fb2e67d90d3edf2"]]},{"id":"5a34e61b6845ff35","type":"modbus-read","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Right - 182 - All Registers","topic":"","showStatusActivities":true,"logIOActivities":false,"showErrors":true,"showWarnings":true,"unitid":"247","dataType":"HoldingRegister","adr":"0x0506","quantity":"50","rate":"30","rateUnit":"s","delayOnStart":true,"startDelayTime":"","server":"c4637cfad132b61d","useIOFile":false,"ioFile":"6b66c4e5.3debb4","useIOForPayload":false,"emptyMsgOnFail":false,"x":240,"y":1140,"wires":[["03aeb53c3c9b5143"],[]]},{"id":"c959544869dc5c9a","type":"flogger","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"Left Inverter - All Registers","logfile":"GoodWe-Left","inputchoice":"object","inputobject":"payload","inputobjectType":"msg","inputmoustache":"Recieved payload {{payload}} and topic {{topic}}","loglevel":"INFO","logconfig":"bc7a715d.1d2f2","sendpane":false,"x":1040,"y":660,"wires":[[]]},{"id":"c8d490f73a2a2f1c","type":"flogger","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"Middle Inverter - All Registers","logfile":"GoodWe-Middle","inputchoice":"object","inputobject":"payload","inputobjectType":"msg","inputmoustache":"Recieved payload {{payload}} and topic {{topic}}","loglevel":"INFO","logconfig":"bc7a715d.1d2f2","sendpane":false,"x":680,"y":980,"wires":[[]]},{"id":"90c89cf1f732ff79","type":"flogger","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"Right Inverter - All Registers","logfile":"GoodWe-Right","inputchoice":"object","inputobject":"payload","inputobjectType":"msg","inputmoustache":"Recieved payload {{payload}} and topic {{topic}}","loglevel":"INFO","logconfig":"bc7a715d.1d2f2","sendpane":false,"x":980,"y":1200,"wires":[[]]},{"id":"0658d2a416fa9c1f","type":"debug","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Left - Full Message","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1040,"y":620,"wires":[]},{"id":"cb9d343666c1105c","type":"debug","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Middle - Full Message","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":710,"y":920,"wires":[]},{"id":"5a2f11ac0a3fcca0","type":"debug","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Right - Full Message","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":990,"y":1260,"wires":[]},{"id":"4b63d8f61d367987","type":"link out","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"link out from Inverter Query to Global Logging","mode":"link","links":["04b3213a73549f33"],"x":1595,"y":800,"wires":[]},{"id":"e7206133f9c601ba","type":"ui_gauge","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"SOC SBP-Left","group":"78fb41154b62814e","order":1,"width":2,"height":2,"gtype":"gage","title":"SBP-Left","label":"units","format":"{{value}}","min":0,"max":"100","colors":["#b30000","#e6e600","#04ff00"],"seg1":"25","seg2":"50","className":"","x":1400,"y":500,"wires":[]},{"id":"7a32fc66c0ac026f","type":"ui_gauge","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"SOC SBP-Middle","group":"9ab5e9cea066caef","order":1,"width":2,"height":2,"gtype":"gage","title":"SBP-Middle","label":"units","format":"{{value}}","min":0,"max":"100","colors":["#b30000","#e6e600","#04ff00"],"seg1":"25","seg2":"50","className":"","x":1350,"y":820,"wires":[]},{"id":"788da596.e7358c","type":"ui_gauge","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"SOC SBP-Right","group":"bfa4630337161353","order":2,"width":2,"height":2,"gtype":"gage","title":"SBP-Right","label":"units","format":"{{value}}","min":0,"max":"100","colors":["#b30000","#e6e600","#04ff00"],"seg1":"25","seg2":"50","className":"","x":1340,"y":1380,"wires":[]},{"id":"15baa0974d89f5fe","type":"debug","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Right - after Change Node","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1400,"y":1440,"wires":[]},{"id":"13784cc687a656e4","type":"change","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"Set Payload and Globals","rules":[{"t":"set","p":"Battery.SBP-Left.SOC","pt":"global","to":"keyvalues.SOC","tot":"msg"},{"t":"set","p":"Battery.SBP-Left.Power","pt":"global","to":"$round(\t   keyvalues.Battery_Current * keyvalues.Battery_Voltage,\t   2\t)","tot":"jsonata"},{"t":"set","p":"Battery.SBP-Left.Mode","pt":"global","to":"payload.Battery_Mode","tot":"msg"},{"t":"set","p":"Battery.SBP-Left.MaxChargingRate","pt":"global","to":"payload.BMS_Max_Charge","tot":"msg"},{"t":"set","p":"logfile","pt":"msg","to":"SBP-Left","tot":"str"},{"t":"set","p":"DesiredChargeRate","pt":"msg","to":"Battery.SBP-Left.DesiredRate","tot":"global"},{"t":"set","p":"payload","pt":"msg","to":"keyvalues.SOC","tot":"msg"},{"t":"delete","p":"arrayResults","pt":"msg"},{"t":"delete","p":"buffer","pt":"msg"},{"t":"delete","p":"input","pt":"msg"},{"t":"delete","p":"responseBuffer","pt":"msg"},{"t":"delete","p":"originalPayload","pt":"msg"},{"t":"delete","p":"objectResults","pt":"msg"},{"t":"delete","p":"specification","pt":"msg"},{"t":"delete","p":"values","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1030,"y":580,"wires":[["e7206133f9c601ba","4b63d8f61d367987","28c1b8a6f1d01ed7","69e99ecd6b220048","04687a9dfedacada","423b9dc5f448ebc0","7e3e527f13147caf"]]},{"id":"28c1b8a6f1d01ed7","type":"debug","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Left - after Change Node","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1440,"y":620,"wires":[]},{"id":"ed7d40b8cb6fc86c","type":"debug","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"GoodWe Middle- after Change Node","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1550,"y":700,"wires":[]},{"id":"6fb2e67d90d3edf2","type":"change","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"Set Payload and Globals","rules":[{"t":"set","p":"Battery.SBP-Right.SOC","pt":"global","to":"keyvalues.SOC","tot":"msg"},{"t":"set","p":"Battery.SBP-Right.Power","pt":"global","to":"$round(\t   keyvalues.Battery_Current * keyvalues.Battery_Voltage,\t   2\t)","tot":"jsonata"},{"t":"set","p":"Battery.SBP-Right.Mode","pt":"global","to":"payload.Battery_Mode","tot":"msg"},{"t":"set","p":"Battery.SBP-Right.MaxChargingRate","pt":"global","to":"payload.BMS_Max_Charge","tot":"msg"},{"t":"set","p":"logfile","pt":"msg","to":"SBP-Right","tot":"str"},{"t":"set","p":"DesiredChargeRate","pt":"msg","to":"Battery.SBP-Right.DesiredRate","tot":"global"},{"t":"set","p":"payload","pt":"msg","to":"keyvalues.SOC","tot":"msg"},{"t":"delete","p":"arrayResults","pt":"msg"},{"t":"delete","p":"buffer","pt":"msg"},{"t":"delete","p":"input","pt":"msg"},{"t":"delete","p":"responseBuffer","pt":"msg"},{"t":"delete","p":"originalPayload","pt":"msg"},{"t":"delete","p":"objectResults","pt":"msg"},{"t":"delete","p":"specification","pt":"msg"},{"t":"delete","p":"values","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":970,"y":1340,"wires":[["788da596.e7358c","15baa0974d89f5fe","e8a898d17d2ee4cd","c34b5ca76830c5c9","6dacaafd638c3e8a","38b15abe84e9f426","d3f508afe371431d"]]},{"id":"38b15abe84e9f426","type":"ui_text","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","group":"bfa4630337161353","order":2,"width":0,"height":0,"name":"","label":"MaxDischargeCurrent","format":"{{msg.keyvalues.BMS_Max_Discharge}}","layout":"row-left","className":"","x":1360,"y":1340,"wires":[]},{"id":"6dacaafd638c3e8a","type":"ui_text","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","group":"bfa4630337161353","order":2,"width":0,"height":0,"name":"","label":"MaxChargeCurrent","format":"{{msg.keyvalues.BMS_Max_Charge}}","layout":"row-left","className":"","x":1350,"y":1300,"wires":[]},{"id":"c34b5ca76830c5c9","type":"ui_text","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","group":"bfa4630337161353","order":2,"width":0,"height":0,"name":"","label":"SOH","format":"{{msg.keyvalues.SOH}}","layout":"row-left","className":"","x":1310,"y":1260,"wires":[]},{"id":"e8a898d17d2ee4cd","type":"ui_text","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","group":"bfa4630337161353","order":2,"width":0,"height":0,"name":"","label":"SOC","format":"{{msg.keyvalues.SOC}}","layout":"row-left","className":"","x":1310,"y":1220,"wires":[]},{"id":"b097c31d4de3e8f1","type":"change","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","name":"Set Payload and Globals","rules":[{"t":"set","p":"Battery.SBP-Middle.SOC","pt":"global","to":"keyvalues.SOC","tot":"msg"},{"t":"set","p":"Battery.SBP-Middle.Power","pt":"global","to":"$round(\t   keyvalues.Battery_Current * keyvalues.Battery_Voltage,\t   2\t)","tot":"jsonata"},{"t":"set","p":"Battery.SBP-Middle.Mode","pt":"global","to":"payload.Battery_Mode","tot":"msg"},{"t":"set","p":"Battery.SBP-Middle.MaxChargingRate","pt":"global","to":"payload.BMS_Max_Charge","tot":"msg"},{"t":"set","p":"logfile","pt":"msg","to":"SBP-Middle","tot":"str"},{"t":"set","p":"DesiredChargeRate","pt":"msg","to":"Battery.SBP-Middle.DesiredRate","tot":"global"},{"t":"set","p":"payload","pt":"msg","to":"keyvalues.SOC","tot":"msg"},{"t":"delete","p":"arrayResults","pt":"msg"},{"t":"delete","p":"buffer","pt":"msg"},{"t":"delete","p":"input","pt":"msg"},{"t":"delete","p":"responseBuffer","pt":"msg"},{"t":"delete","p":"originalPayload","pt":"msg"},{"t":"delete","p":"objectResults","pt":"msg"},{"t":"delete","p":"specification","pt":"msg"},{"t":"delete","p":"values","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1030,"y":800,"wires":[["7a32fc66c0ac026f","4b63d8f61d367987","ed7d40b8cb6fc86c","15f54de26d4ad33b","fb2108c1748b872d","e0f212b042af2714","08074d2372a9dd21"]]},{"id":"d3f508afe371431d","type":"junction","z":"8f18eed8.4d3ac","g":"f24223123dfb4d14","x":1520,"y":980,"wires":[["4b63d8f61d367987"]]},{"id":"1d7be2203213cf7d","type":"modbus-client","name":"GoodWe Left - 180","clienttype":"tcp","bufferCommands":true,"stateLogEnabled":false,"queueLogEnabled":false,"failureLogEnabled":true,"tcpHost":"172.16.100.180","tcpPort":"8899","tcpType":"DEFAULT","serialPort":"/dev/ttyUSB","serialType":"RTU-BUFFERD","serialBaudrate":"9600","serialDatabits":"8","serialStopbits":"1","serialParity":"none","serialConnectionDelay":"100","serialAsciiResponseStartDelimiter":"0x3A","unit_id":247,"commandDelay":1,"clientTimeout":1000,"reconnectOnTimeout":true,"reconnectTimeout":2000,"parallelUnitIdsAllowed":true,"showWarnings":true,"showLogs":true},{"id":"6b66c4e5.3debb4","type":"modbus-io-config","d":true,"name":"so","path":"/home/pi/ME3000/sofar.py","format":"","addressOffset":""},{"id":"ef6245036c03d53b","type":"modbus-client","name":"GoodWe Middle - 181","clienttype":"tcp","bufferCommands":true,"stateLogEnabled":false,"queueLogEnabled":false,"failureLogEnabled":true,"tcpHost":"172.16.100.181","tcpPort":"8899","tcpType":"DEFAULT","serialPort":"/dev/ttyUSB","serialType":"RTU-BUFFERD","serialBaudrate":"9600","serialDatabits":"8","serialStopbits":"1","serialParity":"none","serialConnectionDelay":"100","serialAsciiResponseStartDelimiter":"0x3A","unit_id":"247","commandDelay":"1","clientTimeout":"1000","reconnectOnTimeout":true,"reconnectTimeout":"2000","parallelUnitIdsAllowed":true,"showWarnings":true,"showLogs":true},{"id":"c4637cfad132b61d","type":"modbus-client","name":"GoodWe Right - 182","clienttype":"tcp","bufferCommands":true,"stateLogEnabled":false,"queueLogEnabled":false,"failureLogEnabled":true,"tcpHost":"172.16.100.182","tcpPort":"8899","tcpType":"DEFAULT","serialPort":"/dev/ttyUSB","serialType":"RTU-BUFFERD","serialBaudrate":"9600","serialDatabits":"8","serialStopbits":"1","serialParity":"none","serialConnectionDelay":"100","serialAsciiResponseStartDelimiter":"0x3A","unit_id":"247","commandDelay":"1","clientTimeout":"1000","reconnectOnTimeout":true,"reconnectTimeout":"2000","parallelUnitIdsAllowed":true,"showWarnings":true,"showLogs":true},{"id":"bc7a715d.1d2f2","type":"config-log","logname":"Default with rotation and compression","logdir":"logs","stamp":"local","logstyle":"plain","logrotate":true,"logcompress":true,"logrotatecount":"5","logsize":"1000"},{"id":"78fb41154b62814e","type":"ui_group","name":"Left Battery","tab":"db89d5cd.28b158","order":11,"disp":true,"width":"6","collapse":false,"className":""},{"id":"9ab5e9cea066caef","type":"ui_group","name":"Middle Battery","tab":"db89d5cd.28b158","order":13,"disp":true,"width":"6","collapse":false,"className":""},{"id":"bfa4630337161353","type":"ui_group","name":"Right Battery","tab":"db89d5cd.28b158","order":12,"disp":true,"width":"6","collapse":false,"className":""},{"id":"db89d5cd.28b158","type":"ui_tab","name":"Battery Control","icon":"fa-battery-full","order":7,"disabled":false,"hidden":false}]

Thanks for you code, modbus nodes etc can I import but there are some unrecognized nodes.
Can you tell me wich pallette I have to install?