EVCS NS keep disappearing all the time need to be discovered from modbus device list.
If wvcs is lost did not charge on auto charge mode.
I don’t know what else i can do i tried all option.
Can be hardwire to cerbo?
Start regretting to buy this one.
EVCS NS keep disappearing all the time need to be discovered from modbus device list.
If wvcs is lost did not charge on auto charge mode.
I don’t know what else i can do i tried all option.
Can be hardwire to cerbo?
Start regretting to buy this one.
This also happened to my EVCS after doing a yearly round of firmware updates. It is connected properly as I can use it on Bluetooth and directly through its IP adress from the same LAN as the Cerbo. Testing the connection to cerbo from within the EVCS also gives a green OK and the IP adres is shown in the modbus list on CERBO.
I think its something in the Cerbo firmware itself because eventhough the device list in VRM states that it has not been found for over a day if I Click “Control panel”it opens the control panel of the EVCS as if nothing is wrong. however it won’t show up in the device list on the console.
Because of the intermittentness of this issue I build a workaround in Node-Red that calculates and then sets the charge current etc in the manual mode comparable to what the auto mode does. For now this works for this case but I would like an update on a solid-solution from Victron to not run into issues for other use-cases. the way the EVCS integrates in the rest of the Victron systems has been a treat before this happened so I hope there will be a fix.
can you fill me in about your node-red settings?
[
{
"id": "f3bac825cfc03bf9",
"type": "tab",
"label": "EVCS \"AUTO mode\"",
"disabled": true,
"info": "",
"env": []
},
{
"id": "1c5432dd918b665c",
"type": "victron-input-evcharger",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.evcharger/40",
"path": "/Status",
"serviceObj": {
"service": "com.victronenergy.evcharger/40",
"name": "Loadpoaltie"
},
"pathObj": {
"path": "/Status",
"type": "enum",
"name": "Status",
"enum": {
"0": "Disconnected",
"1": "Connected",
"2": "Charging",
"3": "Charged",
"4": "Waiting for sun",
"5": "Waiting for RFID",
"6": "Waiting for start",
"7": "Low SOC",
"8": "Ground test error",
"9": "Welded contacts test error",
"10": "CP input test error (shorted)",
"11": "Residual current detected",
"12": "Undervoltage detected",
"13": "Overvoltage detected",
"14": "Overheating detected",
"15": "Reserved",
"16": "Reserved",
"17": "Reserved",
"18": "Reserved",
"19": "Reserved",
"20": "Charging limit",
"21": "Start charging",
"22": "Switching to 3 phase",
"23": "Switching to 1 phase",
"24": "Stop charging"
}
},
"name": "EVCS -Status",
"onlyChanges": false,
"x": 110,
"y": 200,
"wires": [
[
"6f919a0d9085d2ac"
]
]
},
{
"id": "582117413f6d5373",
"type": "victron-input-evcharger",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.evcharger/40",
"path": "/Current",
"serviceObj": {
"service": "com.victronenergy.evcharger/40",
"name": "Loadpoaltie"
},
"pathObj": {
"path": "/Current",
"type": "float",
"name": "Charge current (A)"
},
"name": "EVCS Charge current",
"onlyChanges": false,
"x": 140,
"y": 160,
"wires": [
[
"4df3069f2c47cfa1"
]
]
},
{
"id": "b0ded9c5c7ade924",
"type": "victron-input-evcharger",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.evcharger/40",
"path": "/Ac/Power",
"serviceObj": {
"service": "com.victronenergy.evcharger/40",
"name": "Loadpoaltie"
},
"pathObj": {
"path": "/Ac/Power",
"type": "float",
"name": "Total power (W)"
},
"name": "EVCS Power",
"onlyChanges": false,
"x": 110,
"y": 120,
"wires": [
[
"be3c8e2be9c05565"
]
]
},
{
"id": "b2a88c246616a814",
"type": "victron-output-evcharger",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.evcharger/40",
"path": "/SetCurrent",
"serviceObj": {
"service": "com.victronenergy.evcharger/40",
"name": "Loadpoaltie"
},
"pathObj": {
"path": "/SetCurrent",
"type": "float",
"name": "Set charge current (manual mode) (A)",
"mode": "both"
},
"initial": 0,
"name": "set EVCS current",
"onlyChanges": false,
"x": 1430,
"y": 200,
"wires": []
},
{
"id": "19a072c8929316de",
"type": "victron-output-evcharger",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.evcharger/40",
"path": "/StartStop",
"serviceObj": {
"service": "com.victronenergy.evcharger/40",
"name": "Loadpoaltie"
},
"pathObj": {
"path": "/StartStop",
"type": "enum",
"name": "Start/stop charging (manual mode)",
"enum": {
"0": "Stop",
"1": "Start"
},
"mode": "both"
},
"name": "set start/stop",
"onlyChanges": false,
"x": 1410,
"y": 260,
"wires": []
},
{
"id": "af9fe7ebc705a48f",
"type": "victron-output-evcharger",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.evcharger/40",
"path": "/Mode",
"serviceObj": {
"service": "com.victronenergy.evcharger/40",
"name": "Loadpoaltie"
},
"pathObj": {
"path": "/Mode",
"type": "enum",
"name": "Mode",
"enum": {
"0": "Manual",
"1": "Auto",
"2": "Schedule"
},
"mode": "both"
},
"name": "Set mode",
"onlyChanges": false,
"x": 1400,
"y": 320,
"wires": []
},
{
"id": "b6b3859895c761c9",
"type": "victron-input-battery",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.battery/0",
"path": "/Soc",
"serviceObj": {
"service": "com.victronenergy.battery/0",
"name": "LYNX DISTRIBUTION BMS"
},
"pathObj": {
"path": "/Soc",
"type": "float",
"name": "State of charge (%)"
},
"name": "get LYNX SOC ",
"onlyChanges": false,
"x": 120,
"y": 440,
"wires": [
[
"5870cbfba5f31c5f"
]
]
},
{
"id": "d1e8744fce3c67e8",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "set SOC",
"rules": [
{
"t": "set",
"p": "SOC",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 460,
"y": 420,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "5870cbfba5f31c5f",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "1%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 420,
"wires": [
[
"d1e8744fce3c67e8"
]
]
},
{
"id": "440d893d945b25e2",
"type": "victron-input-system",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.system/0",
"path": "/Dc/Pv/Power",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/Dc/Pv/Power",
"type": "float",
"name": "MPPTs - power (W)"
},
"name": "MPPT's",
"onlyChanges": false,
"x": 90,
"y": 260,
"wires": [
[
"3709db1bb57712f2"
]
]
},
{
"id": "3709db1bb57712f2",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "5%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 260,
"wires": [
[
"01f85cf1cf7e924b"
]
]
},
{
"id": "070cc648b862eaaa",
"type": "victron-input-system",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.system/0",
"path": "/Ac/Consumption/L3/Power",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/Ac/Consumption/L3/Power",
"type": "float",
"name": "AC Consumption L3 (W)"
},
"name": "L3 Consumption",
"onlyChanges": false,
"x": 120,
"y": 400,
"wires": [
[
"bb74577ce0dbd0b3"
]
]
},
{
"id": "dad7cd935204c63a",
"type": "victron-input-system",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.system/0",
"path": "/Ac/Consumption/L2/Power",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/Ac/Consumption/L2/Power",
"type": "float",
"name": "AC Consumption L2 (W)"
},
"name": "L2 Consumption",
"onlyChanges": false,
"x": 120,
"y": 360,
"wires": [
[
"f5ec53e9c33f6d3a"
]
]
},
{
"id": "70d9f7b8a2b43cfc",
"type": "victron-input-system",
"z": "f3bac825cfc03bf9",
"service": "com.victronenergy.system/0",
"path": "/Ac/Consumption/L1/Power",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/Ac/Consumption/L1/Power",
"type": "float",
"name": "AC Consumption L1 (W)"
},
"name": "L1 Consumption",
"onlyChanges": false,
"x": 120,
"y": 320,
"wires": [
[
"cacf484b4fcaa1a4"
]
]
},
{
"id": "2bf1ff92157f1232",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "Set Consumption -L1",
"rules": [
{
"t": "set",
"p": "CONL1",
"pt": "msg",
"to": "payload",
"tot": "msg",
"dc": true
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 300,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "d7cc6651c1b21106",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "Set Consumption -L2",
"rules": [
{
"t": "set",
"p": "CONL2",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 340,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "050aed72ab8538eb",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "Set Consumption -L3",
"rules": [
{
"t": "set",
"p": "CONL3",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 380,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "01f85cf1cf7e924b",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "set Solar ",
"rules": [
{
"t": "set",
"p": "PV",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 460,
"y": 260,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "cacf484b4fcaa1a4",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "15%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 300,
"wires": [
[
"2bf1ff92157f1232"
]
]
},
{
"id": "f5ec53e9c33f6d3a",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "15%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 340,
"wires": [
[
"d7cc6651c1b21106"
]
]
},
{
"id": "bb74577ce0dbd0b3",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "15%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 380,
"wires": [
[
"050aed72ab8538eb"
]
]
},
{
"id": "be3c8e2be9c05565",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "5%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 120,
"wires": [
[
"6fedefbfbf31d499"
]
]
},
{
"id": "4df3069f2c47cfa1",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadbandEq",
"gap": "2",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 160,
"wires": [
[
"4543eaa2efc3cd44"
]
]
},
{
"id": "6f919a0d9085d2ac",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "5%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 320,
"y": 200,
"wires": [
[
"692d0ea83240a9a0"
]
]
},
{
"id": "6fedefbfbf31d499",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "set EVConsumption",
"rules": [
{
"t": "set",
"p": "evpower",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 120,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "4543eaa2efc3cd44",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "set EVcurrent",
"rules": [
{
"t": "set",
"p": "EVcurrent",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 480,
"y": 160,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "692d0ea83240a9a0",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "",
"rules": [
{
"t": "set",
"p": "status",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 480,
"y": 200,
"wires": [
[
"cc76da781d0cdce1"
]
]
},
{
"id": "cc76da781d0cdce1",
"type": "join",
"z": "f3bac825cfc03bf9",
"name": "Combine",
"mode": "custom",
"build": "object",
"property": "",
"propertyType": "full",
"key": "topic",
"joiner": "",
"joinerType": "str",
"accumulate": true,
"timeout": "5",
"count": "1",
"reduceRight": false,
"reduceExp": "",
"reduceInit": "",
"reduceInitType": "num",
"reduceFixup": "",
"x": 730,
"y": 260,
"wires": [
[
"c4c796f0e7101e1b"
]
]
},
{
"id": "c4c796f0e7101e1b",
"type": "function",
"z": "f3bac825cfc03bf9",
"name": "Automagicalisation",
"func": "\nConTotal=msg.CONL1 + msg.CONL2 + msg.CONL3 // current total consumption\nEVpower=msg.evpower // current ev charging consumption\ncurr2= msg.EVcurrent//Current current setting\nPV= msg.PV\nSOC=msg.SOC\nPVover= PV-(ConTotal-EVpower) //excess PV production without EVCS\nphase= 3 //1 phase EV or 3 phase EV \n\n\nif (PVover>4000){\nmsg.EVcurrent=Math.round((PVover/(230*phase))/2)*2// calculate Current setting for EVCS round to even numbers\nmsg.chargemode = 0 // set mode to manual\nmsg.startstop = 1 // set start(1) stop (0)\nreturn msg;\n}\n\n//allow a bit of battery drain when SOC allows\nif (PVover>1500&&SOC>=70){\n PVover=PVover+3000\nmsg.EVcurrent=Math.round((PVover/(230*phase))/2)*2// calculate Current setting for EVCS round to even numbers\nmsg.chargemode = 0 // set mode to manual\nmsg.startstop = 1\nreturn msg;\n}\n\n// (NODERED \"wait mode\")\nif (PV>150&&PV<1000){\nmsg.chargemode = 1 // set mode to manual\nmsg.startstop = 0\nreturn msg;\n}\n\nif (PV<50){\n // do nothing when no PV available to allow for manual charging at night\nreturn msg;\n}\n\nreturn msg;",
"outputs": 1,
"timeout": 0,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 910,
"y": 260,
"wires": [
[
"b3319c060749c99f",
"b9c1b5365bab5965",
"0f4d69deb24ef146"
]
]
},
{
"id": "b3319c060749c99f",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "current",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "laadstroom",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1080,
"y": 220,
"wires": [
[
"aca7b81730c3b558"
]
]
},
{
"id": "b9c1b5365bab5965",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "Start/Stop",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "startstop",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1080,
"y": 260,
"wires": [
[
"6e43020f83b1d520"
]
]
},
{
"id": "0f4d69deb24ef146",
"type": "change",
"z": "f3bac825cfc03bf9",
"name": "auto/manual",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "chargemode",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1090,
"y": 300,
"wires": [
[
"dde25056326ab30c"
]
]
},
{
"id": "aca7b81730c3b558",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "5%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 1240,
"y": 220,
"wires": [
[
"b2a88c246616a814"
]
]
},
{
"id": "6e43020f83b1d520",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "5%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 1240,
"y": 260,
"wires": [
[
"19a072c8929316de"
]
]
},
{
"id": "dde25056326ab30c",
"type": "rbe",
"z": "f3bac825cfc03bf9",
"name": "",
"func": "deadband",
"gap": "5%",
"start": "",
"inout": "out",
"septopics": true,
"property": "payload",
"topi": "topic",
"x": 1240,
"y": 300,
"wires": [
[
"af9fe7ebc705a48f"
]
]
}
]
It basically sets the EVCS to manual mode and then calculates and sets the allowed Current. this hijacks the abillity to do actual manual charging during the day so its not optimal, however it allows for manual settings at night and integration of other limitations (like grid fail or max battery or grid consumption etc).