Monitoring & Controlling a Hybrid Solis Inverter
Re: Monitoring & Controlling a Hybrid Solis Inverter
Morning James, sorry for missing your original query!
Yes, you can just pass 5 through, it doesn't need to be prefixed with a zero.
I have a section of my own flow that I have used before for Octopus Power Hours, so I'll grab the details today for you to import and test out.
Yes, you can just pass 5 through, it doesn't need to be prefixed with a zero.
I have a section of my own flow that I have used before for Octopus Power Hours, so I'll grab the details today for you to import and test out.
10x 405W JA Solar panels (4.05kWp) @ 5 degrees
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
-
- Posts: 25
- Joined: Tue Sep 26, 2023 4:00 pm
Re: Monitoring & Controlling a Hybrid Solis Inverter
Morning!
Thank you, that would be brilliant! I've tried copying your buffer parsers to get the data for charge hour and minute etc but am very confused about what the offsets mean, what to set 'fc' to and the quantity so virtually all of it! I set the register to 43143 which should be start charge hours but keep getting a result of 0 and 0x0 back from the array and buffer it sends out.
Does your flow include calling these values perchance? As I'd like to be able to check my commands to the inverter are doing what I want them to without having to go in the loft!
Thank you again!
Thank you, that would be brilliant! I've tried copying your buffer parsers to get the data for charge hour and minute etc but am very confused about what the offsets mean, what to set 'fc' to and the quantity so virtually all of it! I set the register to 43143 which should be start charge hours but keep getting a result of 0 and 0x0 back from the array and buffer it sends out.
Does your flow include calling these values perchance? As I'd like to be able to check my commands to the inverter are doing what I want them to without having to go in the loft!
Thank you again!
Re: Monitoring & Controlling a Hybrid Solis Inverter
Hi James,
I won't have time to get to my pc for the node red flows tonight, it'll have to be tomorrow I'm afraid.
I have a manual check which I can run to return the current schedule times, so that should work for you too.
I won't have time to get to my pc for the node red flows tonight, it'll have to be tomorrow I'm afraid.
I have a manual check which I can run to return the current schedule times, so that should work for you too.
10x 405W JA Solar panels (4.05kWp) @ 5 degrees
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
-
- Posts: 25
- Joined: Tue Sep 26, 2023 4:00 pm
Re: Monitoring & Controlling a Hybrid Solis Inverter
No worries, that sounds perfect, thank you
Re: Monitoring & Controlling a Hybrid Solis Inverter
James, here's a couple of subflows you can import and set up to work with your inverter.
Query existing settings for schedule 1 and 2, plus schedule charge and discharge current:
If you click the square to the left of the timestamp node, you should see schedule values in the debug pane on NodeRed.
Set Schedule 1 start and end times:
That should make a new section on the dashboard like the below screenshot.
Set your start and end time, then wait a second or so. After that, click 'Update Schedule 1' and the inverter should be set to the desired times.
Final note, don't forget to update the new modbus nodes to point at your EE11 details.
Query existing settings for schedule 1 and 2, plus schedule charge and discharge current:
Code: Select all
[
{
"id": "371117eaeb9627b9",
"type": "group",
"z": "092657c3a04af884",
"name": "Query Inverter Schedule Details",
"style": {
"fill": "#bfdbef",
"label": true
},
"nodes": [
"b4cf832f252f66fa",
"8c8b3faaad2bf21d",
"6d74289f7cd1e3cb",
"16b6e86ece8422a8",
"cf7d736079434f77",
"bc7ff499b4b925b7",
"177c63c2a31f1ecc",
"0d010c01ed07383e",
"d8201ca5709f73b1",
"62d69426a37f7a03"
],
"x": 174,
"y": 179,
"w": 892,
"h": 322
},
{
"id": "b4cf832f252f66fa",
"type": "function",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Read Data on Inverter",
"func": "msg.payload = {\n 'fc': 3,\n 'unitid': 1,\n 'address': 43141,\n 'quantity': 50\n }\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 340,
"y": 300,
"wires": [
[
"8c8b3faaad2bf21d"
]
]
},
{
"id": "8c8b3faaad2bf21d",
"type": "modbus-flex-getter",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Solis Inverter",
"showStatusActivities": true,
"showErrors": false,
"logIOActivities": false,
"server": "",
"useIOFile": false,
"ioFile": "",
"useIOForPayload": false,
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"x": 370,
"y": 360,
"wires": [
[],
[
"16b6e86ece8422a8"
]
]
},
{
"id": "6d74289f7cd1e3cb",
"type": "inject",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "date",
"x": 280,
"y": 240,
"wires": [
[
"b4cf832f252f66fa"
]
]
},
{
"id": "16b6e86ece8422a8",
"type": "buffer-parser",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "",
"data": "payload.buffer",
"dataType": "msg",
"specification": "spec",
"specificationType": "ui",
"items": [
{
"type": "uint16be",
"name": "Scheduled Charge Current",
"offset": 0,
"length": 1,
"offsetbit": 0,
"scale": "0.1",
"mask": ""
},
{
"type": "uint16be",
"name": "Scheduled Discharge Current",
"offset": 2,
"length": 1,
"offsetbit": 0,
"scale": "0.1",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Charge - Start Hour",
"offset": 4,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Charge - Start Minute",
"offset": 6,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Charge - End Hour",
"offset": 8,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Charge - End Minute",
"offset": 10,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Discharge - Start Hour",
"offset": 12,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Discharge - Start Minute",
"offset": 14,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Discharge - End Hour",
"offset": 16,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 1 - Discharge - End Minute",
"offset": 18,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Charge - Start Hour",
"offset": 24,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Charge - Start Minute",
"offset": 26,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Charge - End Hour",
"offset": 28,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Charge - End Hour",
"offset": 30,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Discharge - Start Hour",
"offset": 32,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Discharge - Start Minute",
"offset": 34,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Discharge - End Hour",
"offset": 36,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
},
{
"type": "uint16be",
"name": "Schedule 2 - Discharge - End Minute",
"offset": 38,
"length": 1,
"offsetbit": 0,
"scale": "0",
"mask": ""
}
],
"swap1": "",
"swap2": "",
"swap3": "",
"swap1Type": "swap",
"swap2Type": "swap",
"swap3Type": "swap",
"msgProperty": "payload",
"msgPropertyType": "str",
"resultType": "value",
"resultTypeType": "return",
"multipleResult": true,
"fanOutMultipleResult": true,
"setTopic": true,
"outputs": 18,
"x": 550,
"y": 340,
"wires": [
[
"bc7ff499b4b925b7"
],
[
"177c63c2a31f1ecc"
],
[
"cf7d736079434f77"
],
[
"cf7d736079434f77"
],
[
"cf7d736079434f77"
],
[
"cf7d736079434f77"
],
[
"d8201ca5709f73b1"
],
[
"d8201ca5709f73b1"
],
[
"d8201ca5709f73b1"
],
[
"d8201ca5709f73b1"
],
[
"0d010c01ed07383e"
],
[
"0d010c01ed07383e"
],
[
"0d010c01ed07383e"
],
[
"0d010c01ed07383e"
],
[
"62d69426a37f7a03"
],
[
"62d69426a37f7a03"
],
[
"62d69426a37f7a03"
],
[
"62d69426a37f7a03"
]
]
},
{
"id": "cf7d736079434f77",
"type": "debug",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Schedule 1 - Charge Times",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 880,
"y": 340,
"wires": []
},
{
"id": "bc7ff499b4b925b7",
"type": "debug",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Scheduled Charge Current",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 880,
"y": 220,
"wires": []
},
{
"id": "177c63c2a31f1ecc",
"type": "debug",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Scheduled Discharge Current",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 890,
"y": 280,
"wires": []
},
{
"id": "0d010c01ed07383e",
"type": "debug",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Schedule 2 - Charge Times",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 880,
"y": 420,
"wires": []
},
{
"id": "d8201ca5709f73b1",
"type": "debug",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Schedule 1 - Discharge Times",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 890,
"y": 380,
"wires": []
},
{
"id": "62d69426a37f7a03",
"type": "debug",
"z": "092657c3a04af884",
"g": "371117eaeb9627b9",
"name": "Schedule 2 - Discharge Times",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"targetType": "msg",
"statusVal": "",
"statusType": "auto",
"x": 890,
"y": 460,
"wires": []
}
]
If you click the square to the left of the timestamp node, you should see schedule values in the debug pane on NodeRed.
Set Schedule 1 start and end times:
Code: Select all
[
{
"id": "18b747ce8e218f26",
"type": "group",
"z": "092657c3a04af884",
"name": "Set Inverter Schedule 1",
"style": {
"fill": "#ffffbf",
"label": true
},
"nodes": [
"92b9f028d59ea0e8",
"0589d9852ef5b108",
"54bf222c4dcb0125",
"f28f0a6964a4d3ea",
"b96d91f66e470478",
"0df762ba0186e639",
"9794157ae5ed06d0",
"7fe49b333145b422",
"55d566bcaf0abad7",
"766ac32687a49cb8",
"60a4d2b8b017ccd4",
"6d2415d25c0c01ea",
"f403efabd078804e",
"12981ac7055069b9",
"ccb4c044d58fbf71"
],
"x": 174,
"y": 579,
"w": 1032,
"h": 322
},
{
"id": "92b9f028d59ea0e8",
"type": "ui_text_input",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Schedule 1 - Start Time",
"label": "Schedule 1 - Start Time",
"tooltip": "",
"group": "007d5f4ac436546f",
"order": 1,
"width": 0,
"height": 0,
"passthru": true,
"mode": "time",
"delay": "100",
"topic": "topic",
"sendOnBlur": true,
"className": "",
"topicType": "msg",
"x": 510,
"y": 620,
"wires": [
[
"f403efabd078804e"
]
]
},
{
"id": "0589d9852ef5b108",
"type": "function",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Start Milliseconds to Hour and Minute",
"func": "var totalSeconds = flow.get(\"start_ms\") / 1000\n\nvar hours = Math.floor(totalSeconds / 3600);\ntotalSeconds %= 3600;\nvar minutes = Math.floor(totalSeconds / 60);\n\nmsg.start_hour = hours;\nmsg.start_minute = minutes;\n\nreturn msg",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 570,
"y": 800,
"wires": [
[
"55d566bcaf0abad7"
]
]
},
{
"id": "54bf222c4dcb0125",
"type": "modbus-flex-write",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Write Schedule 1",
"showStatusActivities": false,
"showErrors": false,
"server": "",
"emptyMsgOnFail": false,
"keepMsgProperties": false,
"x": 910,
"y": 860,
"wires": [
[],
[
"b96d91f66e470478"
]
]
},
{
"id": "f28f0a6964a4d3ea",
"type": "function",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Set Charging Slot no.1",
"func": "msg.payload = {\n 'value': [msg.start_hour, msg.start_minute, msg.end_hour, msg.end_minute],\n 'fc': 16,\n 'unitid': 1,\n 'address': 43143,\n 'quantity': 4\n }\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 920,
"y": 800,
"wires": [
[
"54bf222c4dcb0125"
]
]
},
{
"id": "b96d91f66e470478",
"type": "debug",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1110,
"y": 860,
"wires": []
},
{
"id": "0df762ba0186e639",
"type": "catch",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "",
"scope": [
"54bf222c4dcb0125"
],
"uncaught": false,
"x": 470,
"y": 740,
"wires": [
[
"9794157ae5ed06d0"
]
]
},
{
"id": "9794157ae5ed06d0",
"type": "delay",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "",
"pauseType": "rate",
"timeout": "5",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "5",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": true,
"allowrate": false,
"outputs": 1,
"x": 620,
"y": 740,
"wires": [
[
"7fe49b333145b422"
]
]
},
{
"id": "7fe49b333145b422",
"type": "delay",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "",
"pauseType": "delay",
"timeout": "7",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 780,
"y": 740,
"wires": [
[
"f28f0a6964a4d3ea"
]
]
},
{
"id": "55d566bcaf0abad7",
"type": "function",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "End Milliseconds to Hour and Minute",
"func": "var totalSeconds = flow.get(\"end_ms\") / 1000\n\nvar hours = Math.floor(totalSeconds / 3600);\ntotalSeconds %= 3600;\nvar minutes = Math.floor(totalSeconds / 60);\n\nmsg.end_hour = hours;\nmsg.end_minute = minutes;\n\nreturn msg",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 570,
"y": 860,
"wires": [
[
"f28f0a6964a4d3ea"
]
]
},
{
"id": "766ac32687a49cb8",
"type": "ui_text_input",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Schedule 1 - End Time",
"label": "Schedule 1 - End Time",
"tooltip": "",
"group": "007d5f4ac436546f",
"order": 2,
"width": 0,
"height": 0,
"passthru": true,
"mode": "time",
"delay": "100",
"topic": "topic",
"sendOnBlur": true,
"className": "",
"topicType": "msg",
"x": 500,
"y": 680,
"wires": [
[
"ccb4c044d58fbf71"
]
]
},
{
"id": "60a4d2b8b017ccd4",
"type": "ui_button",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "",
"group": "007d5f4ac436546f",
"order": 3,
"width": 0,
"height": 0,
"passthru": false,
"label": "Update Schedule 1",
"tooltip": "",
"color": "",
"bgcolor": "",
"className": "",
"icon": "",
"payload": "true",
"payloadType": "bool",
"topic": "topic",
"topicType": "msg",
"x": 290,
"y": 800,
"wires": [
[
"0589d9852ef5b108"
]
]
},
{
"id": "6d2415d25c0c01ea",
"type": "inject",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Restore",
"props": [
{
"p": "payload"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": "0.5",
"topic": "",
"payload": "start_ms",
"payloadType": "flow",
"x": 300,
"y": 620,
"wires": [
[
"92b9f028d59ea0e8"
]
]
},
{
"id": "f403efabd078804e",
"type": "change",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Store Start Milliseconds",
"rules": [
{
"t": "set",
"p": "start_ms",
"pt": "flow",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 620,
"wires": [
[]
]
},
{
"id": "12981ac7055069b9",
"type": "inject",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Restore",
"props": [
{
"p": "payload"
}
],
"repeat": "",
"crontab": "",
"once": true,
"onceDelay": "0.5",
"topic": "",
"payload": "end_ms",
"payloadType": "flow",
"x": 300,
"y": 680,
"wires": [
[
"766ac32687a49cb8"
]
]
},
{
"id": "ccb4c044d58fbf71",
"type": "change",
"z": "092657c3a04af884",
"g": "18b747ce8e218f26",
"name": "Store End Milliseconds",
"rules": [
{
"t": "set",
"p": "end_ms",
"pt": "flow",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 740,
"y": 680,
"wires": [
[]
]
},
{
"id": "007d5f4ac436546f",
"type": "ui_group",
"name": "Schedule Time",
"tab": "e1eb2e4d8dfd0407",
"order": 7,
"disp": true,
"width": "6",
"collapse": false,
"className": ""
},
{
"id": "e1eb2e4d8dfd0407",
"type": "ui_tab",
"name": "Solar Dashboard",
"icon": "dashboard",
"order": 1,
"disabled": false,
"hidden": false
}
]
That should make a new section on the dashboard like the below screenshot.
Set your start and end time, then wait a second or so. After that, click 'Update Schedule 1' and the inverter should be set to the desired times.
Final note, don't forget to update the new modbus nodes to point at your EE11 details.
10x 405W JA Solar panels (4.05kWp) @ 5 degrees
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
-
- Posts: 25
- Joined: Tue Sep 26, 2023 4:00 pm
Re: Monitoring & Controlling a Hybrid Solis Inverter
Dear Mr Pablo (and anyone else here who is interested),
Thank you so much for all your help, it's been a frustrating road to get here but I'm finally at a place where the flow is doing it's job automatically and controlling the inverter! If anyone is in the same situation as me, feel free to use my flow. How do I add the code in as you did above please Mr Pablo?
James
Thank you so much for all your help, it's been a frustrating road to get here but I'm finally at a place where the flow is doing it's job automatically and controlling the inverter! If anyone is in the same situation as me, feel free to use my flow. How do I add the code in as you did above please Mr Pablo?
James
Re: Monitoring & Controlling a Hybrid Solis Inverter
Great news, I'm glad it's working well for you!
To add code, just use the following tags at each end of your code block, removing the space after each leading square bracket.
[ code]
CODE GOES HERE
[/code ]
My PCBs from JLCPCB arrived today, but my 4 pin side JST connectors are still on the way. Hoping to get the units built this month, I should have two spare once my initial order is done.
To add code, just use the following tags at each end of your code block, removing the space after each leading square bracket.
[ code]
CODE GOES HERE
[/code ]
My PCBs from JLCPCB arrived today, but my 4 pin side JST connectors are still on the way. Hoping to get the units built this month, I should have two spare once my initial order is done.
10x 405W JA Solar panels (4.05kWp) @ 5 degrees
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
3x 405W Longi panels (1.22kWp) @ 90 degrees
16.5kWh DIY LifePo4 battery
Solis inverter/charger
0.6kW Ripple WT
64kWh Kia E-Niro
-
- Posts: 25
- Joined: Tue Sep 26, 2023 4:00 pm
Re: Monitoring & Controlling a Hybrid Solis Inverter
It won't let me post the JSON code as it is apparently well over the character limit for a post? Yours came up in that separate box. Is mine just too big a code?
-
- Posts: 25
- Joined: Tue Sep 26, 2023 4:00 pm
Re: Monitoring & Controlling a Hybrid Solis Inverter
Hi Mr Pablo and all,
It was going very well but now every so often it refuses to change the charge times on the inverter. It's only getting a maximum of 2 writes sent to it per day for the charge times. It won't let me even change the times from the inverter itself. Then the next day comes and it works again. Do you know what this could be perchance please? Is it a problem with too many writes to the same register in total? It lets me change other things from the flow....
Thank you for all your help!
James
It was going very well but now every so often it refuses to change the charge times on the inverter. It's only getting a maximum of 2 writes sent to it per day for the charge times. It won't let me even change the times from the inverter itself. Then the next day comes and it works again. Do you know what this could be perchance please? Is it a problem with too many writes to the same register in total? It lets me change other things from the flow....
Thank you for all your help!
James