Thanks Matthijs, but as Murphy’s Law always applies at the worst moment, it seems that half of (dynamic pricing) Europe is switching to 15 minute pricing midnight tonight, rendering (at least right this moment) all Node-RED DESS implementations void. Logs running full of errors, 'Could not get energy prices, ‘AxiosError: Request failed with status code 408’ for instance.
Hi @UpCycleElectric , I’ve moved your post to a separate thread.
You’re right, the Node-RED implementation of DESS doesn’t support 15 minute pricing.
I’ll reply more later.
The VRM api does indeed fail to return DESS data: Error fetching VRM Data for Dynamic ESS since (quarterly hour) prices known
But after it is returned, I think Phasing out the Node-RED Dynamic ESS implementation - #38 by snowwie also needs some work. (Which I will try to do once the API returns prices ;-))
Thanks, I know Node-RED DESS doesn’t support 15m pricing and is flagged to be phased out, with no intention to implement 15m pricing either. Therefore I have tried for months already to draw attention to the incomplete (absent) port of the Node-RED DESS ‘ScheduledSoc’ function to VRM DESS, only to have that met with vague replies that Node-RED DESS would not be phased out before VRM DESS with VRM-API control was good and ready to take over. I did not believe that would end well back then, and now the time has come to deal with the (unintended for sure) consequences: a regression of the formally available function to instruct the scheduler to aim for a planned SoC within the known prices times range. Do I sound disappointed? Well what can I say, it is no pleasure to be right when it comes to foreseeing a trainwreck months ahead and not being heard.
Hi,
later tonight we’ll make it work again by averaging the 15m prices in a very simple way; and then look further how to handle this in the coming days.
Thanks. Hopefully that change will also fix VRM/DESS not honoring 60min pricing - #3 by jkoljo
The solution is to port the ‘ScheduledSoC’ function to the VRM DESS scheduler (as an input to the scheduler, exactly as was functional in Node-RED DESS). That way we can finally sunset Node-RED DESS altogether. Alternatively and more elegant even, is to enable the ‘Scheduled charge levels’ under the ESS settings not to be silently ignorred with VRM DESS enabled. I bet you a good whisky that the latter suggestion will once and for all allow well defined easy to grasp (as in high level of abstraction Node-RED Flow logic) solutions to satisfy all the other constanly recurring feature requests for addittional custom DESS SoC settings.
And it would not hurt to also recognize that in the present or near future with 15 minute price windows, where three figure battery capacities (100kWh+) won’t be considered uncommon, a single (1.0%) percentage precision for the current timeslot SoC% target, will fully max out a MultiPlus II 5000 power capacity for those 15 minutes. From a systems control point of view this won’t cut it anymore, the precision for the current timeslot SoC% target will need to be increased by at least a full order of magnituide (10x) or simply need to be aligned to level of precision already delivered by the scheduler itself, which is three (3) digits if I recall correctly.
(End of rant, I’ll leave it at this for the time being)
Thanks, the API returns data again. Looking forward to 15min data in the response! Keep up the good work.
Check, yes it does. That’s pretty amazing on the positive side I’ll add, just to counterbalance my previous rant a bit.
Yes, a change was deployed just now.
To get 15 minute data for an installation, set its VRM DESS settings to 15 minutes.
So far I am not getting15minute data but maybe VRM needs some time to re-calculate the schedule for tomorrow.
When using ESS mode 1, the VRM schedule for tomorrow also shows the hour-schedule while prices show 15minutes.
I switched back to mode 4 now since VRM stops discharging after 15 minutes and this is today’s expensive hour. ![]()
In 25 minutes I will start trying again.
{"0":"2025-09-30T00:00:00+02:00","1":"2025-09-30T01:00:00+02:00","2":"2025-09-30T02:00:00+02:00","3":"2025-09-30T03:00:00+02:00","4":"2025-09-30T04:00:00+02:00","5":"2025-09-30T05:00:00+02:00","6":"2025-09-30T06:00:00+02:00","7":"2025-09-30T07:00:00+02:00","8":"2025-09-30T08:00:00+02:00","9":"2025-09-30T09:00:00+02:00","10":"2025-09-30T10:00:00+02:00","11":"2025-09-30T11:00:00+02:00","12":"2025-09-30T12:00:00+02:00","13":"2025-09-30T13:00:00+02:00","14":"2025-09-30T14:00:00+02:00","15":"2025-09-30T15:00:00+02:00","16":"2025-09-30T16:00:00+02:00","17":"2025-09-30T17:00:00+02:00","18":"2025-09-30T18:00:00+02:00","19":"2025-09-30T19:00:00+02:00","20":"2025-09-30T20:00:00+02:00","21":"2025-09-30T21:00:00+02:00","22":"2025-09-30T22:00:00+02:00","23":"2025-09-30T23:00:00+02:00","24":"2025-10-01T00:00:00+02:00","25":"2025-10-01T01:00:00+02:00","26":"2025-10-01T02:00:00+02:00","27":"2025-10-01T03:00:00+02:00","28":"2025-10-01T04:00:00+02:00","29":"2025-10-01T05:00:00+02:00","30":"2025-10-01T06:00:00+02:00","31":"2025-10-01T07:00:00+02:00","32":"2025-10-01T08:00:00+02:00","33":"2025-10-01T09:00:00+02:00","34":"2025-10-01T10:00:00+02:00","35":"2025-10-01T11:00:00+02:00","36":"2025-10-01T12:00:00+02:00","37":"2025-10-01T13:00:00+02:00","38":"2025-10-01T14:00:00+02:00","39":"2025-10-01T15:00:00+02:00","40":"2025-10-01T16:00:00+02:00","41":"2025-10-01T17:00:00+02:00","42":"2025-10-01T18:00:00+02:00","43":"2025-10-01T19:00:00+02:00","44":"2025-10-01T20:00:00+02:00","45":"2025-10-01T21:00:00+02:00","46":"2025-10-01T22:00:00+02:00","47":"2025-10-01T23:00:00+02:00"}
Hi,
I don’t exactly know what mode 4 is. Are you using our Node-RED DESS flow, which doesn’t work with 15m pricing (but that can be worked around by leaving the related VRM DESS setting set to 15 minutes)?
I’m quite sure that the VRM API can return both 15m pricing and 60m pricing.
And what we did/fixed just now is that for countries where the core data is now switching to 15m, the system will still return 60m pricing when configured for that. Instead of erroring out.
Or use this flow to manually control the schedule while runing mode 1 - auto VRM DESS (instead of mode 4 Node-RED DESS) , You may need to set a recurrent timer on the a SoC (far below current SoC) and the ‘3 - Pro grid’ inject nodes to keep it selling to end of day:
[
{
"id": "6c869c3cc1a6f3a9",
"type": "group",
"z": "4dc207279e9d07bd",
"name": "UpCycle Hybrid DESS Trade : Quarterly Schedules",
"style": {
"label": true
},
"nodes": [
"0b648b6feea8c1a2",
"4842f58c82bed985",
"71ad82d01017c7dc",
"3035cb293847501d",
"e5131913f791588e",
"7ad0197750083fc5",
"2897eb5f46cc99c2",
"e8e9b771a170598b",
"20b5a0e54085db39",
"04205cc276a414f7",
"cfebb029f86e3567",
"1c3919f0cf07e35c",
"1e0b7ab7f0a0f9c1",
"c4c6381b4b0fd58e",
"0838984737cd803e",
"52678d6a9ee81e2f",
"12f3926b2f9f25ea",
"1337566e85e98331",
"512063a106c64f4b",
"5c6bf4618040969b",
"9b906582803c0b15",
"8cda1fe05fd2b755",
"b0a6dcf795c12946",
"a656a1ea3fe1a927",
"aa35ccda2b7139b0",
"60766f5142036421",
"aadbd0f923586f5b",
"1a421db46f17dcfc",
"e845a8dcd1c1869e",
"2fa903ba5e497633",
"2eef9484a59c6bad",
"3b01c314a7aef559",
"84c70372a3eba8ac",
"2e4b486631c8ba71",
"67675aaa4356a69f",
"39eb532c283a389b",
"37061e0f48df36d7",
"2a67a4660b0ed5dc",
"08a2506d931f7d03",
"383b75af9576eb83",
"e5ca3790bac69c76",
"e24ad249299af587",
"2809f152ab2c9b08",
"dd1d967ad2d8d61e",
"58ed8ad2e62d0d92",
"919994bd931d9011",
"447b0e7f6dbe3bb7",
"efb1c1cecf19ed11",
"54d31fa435b6fce7",
"711d545d964f2e4e",
"47078aabf6c9686a",
"b774b3114b7dd989",
"d7ad2c212adf9448",
"7727ab4bd20958c6",
"724eb297452766ed",
"e9ccff5c0e8c419a",
"2d5f81564494d205",
"9301594febddbbbb",
"25bc6c673e425f3a",
"38360102fc8d2ccb",
"66343a8f36353cd9",
"f8a6aaa24118ed5b",
"091c0ecbfe1e3b11",
"0e45d0363c02fccf",
"f7d9ee3568b39576",
"6512757d32010f21",
"5d1fa439cde2aa85",
"f0ec762bf97bc9c5",
"ea91ec6fd972acf8",
"05dba4f37048a1a4",
"cbc59d93c7d71004",
"eeeb3839a0d48e3a",
"b51ae9d4f23f01b5",
"17a6930fbc1d644a",
"428947fa357f3c60",
"3372cb2d5077055a",
"abc97776b7c793bc",
"2bd57293de7555de",
"d4e3b0caa703a10d",
"9369d5b119fa113c",
"cfe0a1745e758bb2",
"4c2d888a3c5cfd69",
"7c01203302f9c63b",
"7dc998218f7c38f5",
"f4cf5a462f4d5c42",
"15f00598732d9056",
"aaf5da4a73596642",
"a17c18b9b377b30e",
"903a7bbf2f8eb477",
"6e3f7ed69d46fca1",
"5bcb5c386b441cfa",
"f9df5693f8fdc44d",
"00943394bc29db3c",
"722f61285e876530",
"1142458b614f38a6",
"83ac7abcd03034c1",
"840ce9f3a4f79f4b",
"3676572dd96ea4e2",
"9fbc794872df478c",
"c87a0096d450be1f",
"ce84f2a8dc2d8916",
"71879ff128611602",
"316f14f90c39cb48",
"96d8d51e70fcd0c3",
"b3fa9db3bae4f02d",
"90bc9cecd36e2d43",
"7158ebf318fa1c2d",
"ae62b2825b97e5f6",
"180ca24ccfd3cc6c",
"ccca907828b556a4",
"59cb8928dad78db3",
"e3cc6271d7069c71",
"20053b7f2b3f9446",
"17380c4401828e91",
"c074c384aff83f67",
"7b5027cdb79b168b",
"3388e8d26fa37aca",
"f2789a30310817ad",
"f11070ed775aff4e",
"7d84d28765cdbfd9",
"bece41ad86f68419",
"297a6e7d8ac50f60",
"b587ecd6dff60a65",
"91542813400497c3",
"3808c6773053540c",
"605d2eda5e4b42ba",
"2e3428a44bd7602b",
"df023124b05c30a5",
"25d8ac5642ca666e",
"0f17424d04a9e0fa",
"ef9b537ae2515545",
"674326aad72a8dfd",
"a8424479936777a4",
"4da5d8f54ad28b13",
"2fcfe369e55f2361",
"86d9e233cd2616a3",
"68e6a476aa77945d",
"c9792a42fb23ad4a",
"40ba3f85388448f5",
"b8f5da08281dfa41",
"cc85ba2263ac2395",
"c09eb964d2345108",
"3d8230c5e00166ab",
"d228937e56d57bf2",
"44bbf45caaf4f5ba",
"885ef3a7e56ec185",
"12135cbc0e263dec",
"8ce08d5f271f3bd8",
"4d93cb19b684359a",
"dfe4ec76f42954c9",
"737b44e573713f3b"
],
"x": 34,
"y": 4179,
"w": 1082,
"h": 1582
},
{
"id": "0b648b6feea8c1a2",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.system/0",
"path": "/DynamicEss/Strategy",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/DynamicEss/Strategy",
"type": "enum",
"name": "Used strategy for current time slot",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
}
},
"name": "",
"onlyChanges": false,
"x": 700,
"y": 5040,
"wires": [
[
"2bd57293de7555de"
]
]
},
{
"id": "4842f58c82bed985",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/AllowGridFeedIn",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/AllowGridFeedIn",
"type": "enum",
"name": "Allow grid feed-in during schedule 0",
"enum": {
"0": "Not allowed",
"1": "Allowed"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 290,
"y": 5600,
"wires": [
[]
]
},
{
"id": "71ad82d01017c7dc",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Duration",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Duration",
"type": "float",
"name": "Duration for schedule 0 (Seconds)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 690,
"y": 5600,
"wires": [
[]
]
},
{
"id": "3035cb293847501d",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 0",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 660,
"y": 5320,
"wires": [
[
"4da5d8f54ad28b13"
]
]
},
{
"id": "e5131913f791588e",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Soc",
"type": "float",
"name": "Target SOC for schedule 0 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 740,
"y": 4800,
"wires": [
[
"ccca907828b556a4"
]
]
},
{
"id": "7ad0197750083fc5",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Strategy",
"type": "enum",
"name": "Used strategy for schedule 0",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 630,
"y": 5080,
"wires": [
[
"605d2eda5e4b42ba"
]
]
},
{
"id": "2897eb5f46cc99c2",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/AllowGridFeedIn",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/AllowGridFeedIn",
"type": "enum",
"name": "Allow grid feed-in during schedule 1",
"enum": {
"0": "Not allowed",
"1": "Allowed"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 330,
"y": 5640,
"wires": [
[]
]
},
{
"id": "e8e9b771a170598b",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Duration",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Duration",
"type": "float",
"name": "Duration for schedule 1 (Seconds)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 730,
"y": 5640,
"wires": [
[]
]
},
{
"id": "20b5a0e54085db39",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 1",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 700,
"y": 5360,
"wires": [
[
"2fcfe369e55f2361"
]
]
},
{
"id": "04205cc276a414f7",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.system/0",
"path": "/DynamicEss/TargetSoc",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/DynamicEss/TargetSoc",
"type": "float",
"name": "The set target SOC for this time slot (%)"
},
"name": "",
"onlyChanges": false,
"x": 310,
"y": 4720,
"wires": []
},
{
"id": "cfebb029f86e3567",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.system/0",
"path": "/DynamicEss/TargetSoc",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/DynamicEss/TargetSoc",
"type": "float",
"name": "The set target SOC for this time slot (%)"
},
"name": "",
"onlyChanges": false,
"x": 740,
"y": 4720,
"wires": [
[
"abc97776b7c793bc"
]
]
},
{
"id": "1c3919f0cf07e35c",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Soc",
"type": "float",
"name": "Target SOC for schedule 0 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 300,
"y": 4800,
"wires": []
},
{
"id": "1e0b7ab7f0a0f9c1",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Strategy",
"type": "enum",
"name": "Used strategy for schedule 0",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 270,
"y": 5080,
"wires": []
},
{
"id": "c4c6381b4b0fd58e",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.system/0",
"path": "/DynamicEss/Strategy",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/DynamicEss/Strategy",
"type": "enum",
"name": "Used strategy for current time slot",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
}
},
"name": "",
"onlyChanges": false,
"x": 290,
"y": 5040,
"wires": []
},
{
"id": "0838984737cd803e",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Soc",
"type": "float",
"name": "Target SOC for schedule 1 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 340,
"y": 4840,
"wires": []
},
{
"id": "52678d6a9ee81e2f",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/Soc",
"type": "float",
"name": "Target SOC for schedule 3 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 420,
"y": 4920,
"wires": []
},
{
"id": "12f3926b2f9f25ea",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Strategy",
"type": "enum",
"name": "Used strategy for schedule 1",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 310,
"y": 5120,
"wires": []
},
{
"id": "1337566e85e98331",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Strategy",
"type": "enum",
"name": "Used strategy for schedule 2",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 350,
"y": 5160,
"wires": []
},
{
"id": "512063a106c64f4b",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/Strategy",
"type": "enum",
"name": "Used strategy for schedule 3",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 390,
"y": 5200,
"wires": []
},
{
"id": "5c6bf4618040969b",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Soc",
"type": "float",
"name": "Target SOC for schedule 1 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 740,
"y": 4840,
"wires": [
[
"59cb8928dad78db3"
]
]
},
{
"id": "9b906582803c0b15",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Strategy",
"type": "enum",
"name": "Used strategy for schedule 1",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 670,
"y": 5120,
"wires": [
[
"2e3428a44bd7602b"
]
]
},
{
"id": "8cda1fe05fd2b755",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Soc",
"type": "float",
"name": "Target SOC for schedule 2 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 740,
"y": 4880,
"wires": [
[
"e3cc6271d7069c71"
]
]
},
{
"id": "b0a6dcf795c12946",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Strategy",
"type": "enum",
"name": "Used strategy for schedule 2",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 710,
"y": 5160,
"wires": [
[
"df023124b05c30a5"
]
]
},
{
"id": "a656a1ea3fe1a927",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/Soc",
"type": "float",
"name": "Target SOC for schedule 3 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 740,
"y": 4920,
"wires": [
[
"20053b7f2b3f9446"
]
]
},
{
"id": "aa35ccda2b7139b0",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/Strategy",
"type": "enum",
"name": "Used strategy for schedule 3",
"enum": {
"0": "Target SOC",
"1": "Self-consumption",
"2": "Pro battery",
"3": "Pro grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 750,
"y": 5200,
"wires": [
[
"25d8ac5642ca666e"
]
]
},
{
"id": "60766f5142036421",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "Target SOC",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "payload",
"statusType": "auto",
"x": 950,
"y": 4340,
"wires": []
},
{
"id": "aadbd0f923586f5b",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "Strategy",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "payload",
"statusType": "auto",
"x": 960,
"y": 4440,
"wires": []
},
{
"id": "1a421db46f17dcfc",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/AllowGridFeedIn",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/AllowGridFeedIn",
"type": "enum",
"name": "Allow grid feed-in during schedule 2",
"enum": {
"0": "Not allowed",
"1": "Allowed"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 370,
"y": 5680,
"wires": [
[]
]
},
{
"id": "e845a8dcd1c1869e",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/AllowGridFeedIn",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/AllowGridFeedIn",
"type": "enum",
"name": "Allow grid feed-in during schedule 3",
"enum": {
"0": "Not allowed",
"1": "Allowed"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 410,
"y": 5720,
"wires": [
[]
]
},
{
"id": "2fa903ba5e497633",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Duration",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Duration",
"type": "float",
"name": "Duration for schedule 2 (Seconds)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 770,
"y": 5680,
"wires": [
[]
]
},
{
"id": "2eef9484a59c6bad",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/Duration",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/Duration",
"type": "float",
"name": "Duration for schedule 3 (Seconds)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 810,
"y": 5720,
"wires": [
[]
]
},
{
"id": "3b01c314a7aef559",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 2",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 740,
"y": 5400,
"wires": [
[
"86d9e233cd2616a3"
]
]
},
{
"id": "84c70372a3eba8ac",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/3/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/3/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 3",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 780,
"y": 5440,
"wires": [
[
"68e6a476aa77945d"
]
]
},
{
"id": "2e4b486631c8ba71",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.system/0",
"path": "/DynamicEss/Restrictions",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/DynamicEss/Restrictions",
"type": "enum",
"name": "Active restrictions",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
}
},
"name": "",
"onlyChanges": false,
"x": 910,
"y": 5480,
"wires": [
[
"d4e3b0caa703a10d"
]
]
},
{
"id": "67675aaa4356a69f",
"type": "victron-input-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Restrictions",
"type": "enum",
"name": "Dynamic ESS restrictions",
"enum": {
"0": "None",
"1": "Battery to grid",
"2": "Grid to battery"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 680,
"y": 5540,
"wires": [
[
"cfe0a1745e758bb2"
]
]
},
{
"id": "39eb532c283a389b",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 15",
"mode": "link",
"links": [
"58ed8ad2e62d0d92",
"44bbf45caaf4f5ba",
"dbf1e2372edc4c14",
"7673d5c062514049"
],
"x": 1075,
"y": 4760,
"wires": []
},
{
"id": "37061e0f48df36d7",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 18",
"mode": "link",
"links": [
"919994bd931d9011",
"db725047c5a46b0c"
],
"x": 1075,
"y": 5040,
"wires": []
},
{
"id": "2a67a4660b0ed5dc",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "Active restrictions",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "payload",
"statusType": "auto",
"x": 930,
"y": 4540,
"wires": []
},
{
"id": "08a2506d931f7d03",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 29",
"mode": "link",
"links": [
"447b0e7f6dbe3bb7"
],
"x": 1075,
"y": 5280,
"wires": []
},
{
"id": "383b75af9576eb83",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 0",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 280,
"y": 5320,
"wires": []
},
{
"id": "e5ca3790bac69c76",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.system/0",
"path": "/DynamicEss/Restrictions",
"serviceObj": {
"service": "com.victronenergy.system/0",
"name": "Venus system"
},
"pathObj": {
"path": "/DynamicEss/Restrictions",
"type": "enum",
"name": "Active restrictions",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
}
},
"name": "",
"onlyChanges": false,
"x": 260,
"y": 5480,
"wires": []
},
{
"id": "e24ad249299af587",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/1/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/1/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 1",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 320,
"y": 5360,
"wires": []
},
{
"id": "2809f152ab2c9b08",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 2",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 360,
"y": 5400,
"wires": []
},
{
"id": "dd1d967ad2d8d61e",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/0/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/0/Restrictions",
"type": "enum",
"name": "Active restrictions for schedule 0",
"enum": {
"0": "No restrictions between battery and the grid",
"1": "Grid to battery energy flow is restricted",
"2": "Battery to grid energy flow is restricted",
"3": "No energy flow between battery and grid"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 400,
"y": 5440,
"wires": []
},
{
"id": "58ed8ad2e62d0d92",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 26",
"links": [
"39eb532c283a389b"
],
"x": 565,
"y": 4340,
"wires": [
[
"17380c4401828e91"
]
]
},
{
"id": "919994bd931d9011",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 27",
"links": [
"37061e0f48df36d7"
],
"x": 565,
"y": 4440,
"wires": [
[
"00943394bc29db3c"
]
]
},
{
"id": "447b0e7f6dbe3bb7",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 28",
"links": [
"08a2506d931f7d03"
],
"x": 565,
"y": 4540,
"wires": [
[
"1142458b614f38a6"
]
]
},
{
"id": "efb1c1cecf19ed11",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 29",
"links": [
"54d31fa435b6fce7"
],
"x": 165,
"y": 4960,
"wires": [
[
"1c3919f0cf07e35c",
"0838984737cd803e",
"52678d6a9ee81e2f",
"c074c384aff83f67",
"40ba3f85388448f5",
"04205cc276a414f7"
]
]
},
{
"id": "54d31fa435b6fce7",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 30",
"mode": "link",
"links": [
"efb1c1cecf19ed11"
],
"x": 1075,
"y": 4300,
"wires": []
},
{
"id": "711d545d964f2e4e",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 30",
"links": [
"47078aabf6c9686a",
"283315ec92abdd38"
],
"x": 145,
"y": 5240,
"wires": [
[
"1e0b7ab7f0a0f9c1",
"12f3926b2f9f25ea",
"1337566e85e98331",
"512063a106c64f4b",
"c4c6381b4b0fd58e",
"8ce08d5f271f3bd8"
]
]
},
{
"id": "47078aabf6c9686a",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 31",
"mode": "link",
"links": [
"711d545d964f2e4e"
],
"x": 1075,
"y": 4400,
"wires": []
},
{
"id": "b774b3114b7dd989",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 31",
"links": [
"d7ad2c212adf9448"
],
"x": 75,
"y": 5480,
"wires": [
[
"383b75af9576eb83",
"e24ad249299af587",
"2809f152ab2c9b08",
"dd1d967ad2d8d61e",
"e5ca3790bac69c76"
]
]
},
{
"id": "d7ad2c212adf9448",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 32",
"mode": "link",
"links": [
"b774b3114b7dd989"
],
"x": 1075,
"y": 4500,
"wires": []
},
{
"id": "7727ab4bd20958c6",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "25",
"payloadType": "num",
"x": 270,
"y": 4300,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "724eb297452766ed",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "75",
"payloadType": "num",
"x": 550,
"y": 4300,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "e9ccff5c0e8c419a",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "95",
"payloadType": "num",
"x": 690,
"y": 4300,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "2d5f81564494d205",
"type": "function",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "mux",
"func": "return msg;",
"outputs": 1,
"timeout": 0,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 930,
"y": 4300,
"wires": [
[
"54d31fa435b6fce7"
]
]
},
{
"id": "9301594febddbbbb",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "50",
"payloadType": "num",
"x": 410,
"y": 4300,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "25bc6c673e425f3a",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "10",
"payloadType": "num",
"x": 130,
"y": 4300,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "38360102fc8d2ccb",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Restrictions",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Restrictions",
"type": "enum",
"name": "Dynamic ESS restrictions",
"enum": {
"0": "None",
"1": "Battery to grid",
"2": "Grid to battery"
},
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 280,
"y": 5540,
"wires": []
},
{
"id": "66343a8f36353cd9",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "3 - Pro grid",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "3",
"payloadType": "num",
"x": 740,
"y": 4400,
"wires": [
[
"f7d9ee3568b39576"
]
]
},
{
"id": "f8a6aaa24118ed5b",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "0 - Target SOC",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "0",
"payloadType": "num",
"x": 160,
"y": 4400,
"wires": [
[
"f7d9ee3568b39576"
]
]
},
{
"id": "091c0ecbfe1e3b11",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "2 - Pro battery",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "2",
"payloadType": "num",
"x": 570,
"y": 4400,
"wires": [
[
"f7d9ee3568b39576"
]
]
},
{
"id": "0e45d0363c02fccf",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "1 - Self-consumption",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "1",
"payloadType": "num",
"x": 370,
"y": 4400,
"wires": [
[
"f7d9ee3568b39576"
]
]
},
{
"id": "f7d9ee3568b39576",
"type": "function",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "mux",
"func": "return msg;",
"outputs": 1,
"timeout": 0,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 930,
"y": 4400,
"wires": [
[
"47078aabf6c9686a"
]
]
},
{
"id": "6512757d32010f21",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "2 - No b_to_g",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "2",
"payloadType": "num",
"x": 530,
"y": 4500,
"wires": [
[
"5d1fa439cde2aa85"
]
]
},
{
"id": "5d1fa439cde2aa85",
"type": "function",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "mux",
"func": "return msg;",
"outputs": 1,
"timeout": 0,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 930,
"y": 4500,
"wires": [
[
"d7ad2c212adf9448"
]
]
},
{
"id": "f0ec762bf97bc9c5",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "0 - Unrestricted",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "0",
"payloadType": "num",
"x": 160,
"y": 4500,
"wires": [
[
"5d1fa439cde2aa85"
]
]
},
{
"id": "ea91ec6fd972acf8",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "1 - No g_2_b",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "1",
"payloadType": "num",
"x": 350,
"y": 4500,
"wires": [
[
"5d1fa439cde2aa85"
]
]
},
{
"id": "05dba4f37048a1a4",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "3 - Restricted",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "3",
"payloadType": "num",
"x": 710,
"y": 4500,
"wires": [
[
"5d1fa439cde2aa85"
]
]
},
{
"id": "cbc59d93c7d71004",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "DESS restrictions",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "payload",
"statusType": "auto",
"x": 930,
"y": 4640,
"wires": []
},
{
"id": "eeeb3839a0d48e3a",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "2 - No b_to_g",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "2",
"payloadType": "num",
"x": 530,
"y": 4600,
"wires": [
[
"b51ae9d4f23f01b5"
]
]
},
{
"id": "b51ae9d4f23f01b5",
"type": "function",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "mux",
"func": "return msg;",
"outputs": 1,
"timeout": 0,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 930,
"y": 4600,
"wires": [
[
"3372cb2d5077055a"
]
]
},
{
"id": "17a6930fbc1d644a",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "0 - Unrestricted",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "0",
"payloadType": "num",
"x": 160,
"y": 4600,
"wires": [
[
"b51ae9d4f23f01b5"
]
]
},
{
"id": "428947fa357f3c60",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "1 - No g_2_b",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "1",
"payloadType": "num",
"x": 350,
"y": 4600,
"wires": [
[
"b51ae9d4f23f01b5"
]
]
},
{
"id": "3372cb2d5077055a",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 34",
"mode": "link",
"links": [
"9369d5b119fa113c"
],
"x": 1075,
"y": 4600,
"wires": []
},
{
"id": "abc97776b7c793bc",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:tsoc",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "tsoc",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1020,
"y": 4720,
"wires": [
[
"39eb532c283a389b"
]
]
},
{
"id": "2bd57293de7555de",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:tstrat",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "tstrat",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 970,
"y": 5040,
"wires": [
[
"37061e0f48df36d7"
]
]
},
{
"id": "d4e3b0caa703a10d",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:actrestr",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "actrestr",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 970,
"y": 5280,
"wires": [
[
"08a2506d931f7d03"
]
]
},
{
"id": "9369d5b119fa113c",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 56",
"links": [
"3372cb2d5077055a"
],
"x": 75,
"y": 5540,
"wires": [
[
"38360102fc8d2ccb"
]
]
},
{
"id": "cfe0a1745e758bb2",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:dessrestr",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "dessrestr",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 940,
"y": 5540,
"wires": [
[
"4c2d888a3c5cfd69"
]
]
},
{
"id": "4c2d888a3c5cfd69",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 61",
"mode": "link",
"links": [
"7c01203302f9c63b"
],
"x": 1075,
"y": 5540,
"wires": []
},
{
"id": "7c01203302f9c63b",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 57",
"links": [
"4c2d888a3c5cfd69"
],
"x": 565,
"y": 4640,
"wires": [
[
"840ce9f3a4f79f4b"
]
]
},
{
"id": "7dc998218f7c38f5",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 64",
"links": [],
"x": 1005,
"y": 4300,
"wires": [
[
"54d31fa435b6fce7"
]
]
},
{
"id": "f4cf5a462f4d5c42",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 65",
"links": [
"77700d5a17c9583b"
],
"x": 1005,
"y": 4400,
"wires": [
[
"47078aabf6c9686a"
]
]
},
{
"id": "15f00598732d9056",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 66",
"links": [],
"x": 1005,
"y": 4500,
"wires": [
[
"d7ad2c212adf9448"
]
]
},
{
"id": "aaf5da4a73596642",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 67",
"links": [],
"x": 1005,
"y": 4600,
"wires": [
[
"3372cb2d5077055a"
]
]
},
{
"id": "a17c18b9b377b30e",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 95",
"mode": "link",
"links": [
"9fbc794872df478c"
],
"x": 1075,
"y": 4340,
"wires": []
},
{
"id": "903a7bbf2f8eb477",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 96",
"mode": "link",
"links": [
"9fbc794872df478c"
],
"x": 1075,
"y": 4440,
"wires": []
},
{
"id": "6e3f7ed69d46fca1",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 97",
"mode": "link",
"links": [
"9fbc794872df478c"
],
"x": 1075,
"y": 4540,
"wires": []
},
{
"id": "5bcb5c386b441cfa",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 98",
"mode": "link",
"links": [
"9fbc794872df478c"
],
"x": 1075,
"y": 4640,
"wires": []
},
{
"id": "f9df5693f8fdc44d",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "topic",
"statusType": "msg",
"x": 770,
"y": 4340,
"wires": []
},
{
"id": "00943394bc29db3c",
"type": "rbe",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "dedup",
"func": "rbe",
"gap": "",
"start": "",
"inout": "out",
"septopics": false,
"property": "payload",
"topi": "topic",
"x": 650,
"y": 4440,
"wires": [
[
"722f61285e876530",
"aadbd0f923586f5b",
"903a7bbf2f8eb477"
]
]
},
{
"id": "722f61285e876530",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "topic",
"statusType": "msg",
"x": 770,
"y": 4440,
"wires": []
},
{
"id": "1142458b614f38a6",
"type": "rbe",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "dedup",
"func": "rbe",
"gap": "",
"start": "",
"inout": "out",
"septopics": false,
"property": "payload",
"topi": "topic",
"x": 650,
"y": 4540,
"wires": [
[
"83ac7abcd03034c1",
"2a67a4660b0ed5dc",
"6e3f7ed69d46fca1"
]
]
},
{
"id": "83ac7abcd03034c1",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "topic",
"statusType": "msg",
"x": 770,
"y": 4540,
"wires": []
},
{
"id": "840ce9f3a4f79f4b",
"type": "rbe",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "dedup",
"func": "rbe",
"gap": "",
"start": "",
"inout": "out",
"septopics": false,
"property": "payload",
"topi": "topic",
"x": 650,
"y": 4640,
"wires": [
[
"3676572dd96ea4e2",
"cbc59d93c7d71004",
"5bcb5c386b441cfa"
]
]
},
{
"id": "3676572dd96ea4e2",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "topic",
"statusType": "msg",
"x": 770,
"y": 4640,
"wires": []
},
{
"id": "9fbc794872df478c",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 103",
"links": [
"a17c18b9b377b30e",
"903a7bbf2f8eb477",
"6e3f7ed69d46fca1",
"5bcb5c386b441cfa"
],
"x": 565,
"y": 4260,
"wires": [
[
"ce84f2a8dc2d8916"
]
]
},
{
"id": "c87a0096d450be1f",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 108",
"mode": "link",
"links": [
"297a82e410cf96e0"
],
"x": 1075,
"y": 4260,
"wires": []
},
{
"id": "ce84f2a8dc2d8916",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "venus-ts",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "venus-ts",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "",
"tot": "date"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 660,
"y": 4260,
"wires": [
[
"7b5027cdb79b168b"
]
]
},
{
"id": "71879ff128611602",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 118",
"links": [
"b9c6d8827de82bce"
],
"x": 75,
"y": 4920,
"wires": [
[
"52678d6a9ee81e2f"
]
]
},
{
"id": "316f14f90c39cb48",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 119",
"links": [
"7b70893e79429abc"
],
"x": 75,
"y": 4880,
"wires": [
[
"c074c384aff83f67"
]
]
},
{
"id": "96d8d51e70fcd0c3",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 120",
"links": [
"0e9544fb183db3f8"
],
"x": 75,
"y": 4840,
"wires": [
[
"0838984737cd803e"
]
]
},
{
"id": "b3fa9db3bae4f02d",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 121",
"links": [
"b880a437e0e73330"
],
"x": 75,
"y": 4800,
"wires": [
[
"1c3919f0cf07e35c"
]
]
},
{
"id": "90bc9cecd36e2d43",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 125",
"mode": "link",
"links": [
"44bbf45caaf4f5ba"
],
"x": 1075,
"y": 4800,
"wires": []
},
{
"id": "7158ebf318fa1c2d",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 126",
"mode": "link",
"links": [
"44bbf45caaf4f5ba"
],
"x": 1075,
"y": 4840,
"wires": []
},
{
"id": "ae62b2825b97e5f6",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 127",
"mode": "link",
"links": [
"44bbf45caaf4f5ba"
],
"x": 1075,
"y": 4880,
"wires": []
},
{
"id": "180ca24ccfd3cc6c",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 128",
"mode": "link",
"links": [
"44bbf45caaf4f5ba"
],
"x": 1075,
"y": 4920,
"wires": []
},
{
"id": "ccca907828b556a4",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:0",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 4800,
"wires": [
[
"90bc9cecd36e2d43"
]
]
},
{
"id": "59cb8928dad78db3",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:1",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "1",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 4840,
"wires": [
[
"7158ebf318fa1c2d"
]
]
},
{
"id": "e3cc6271d7069c71",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:2",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "2",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 4880,
"wires": [
[
"ae62b2825b97e5f6"
]
]
},
{
"id": "20053b7f2b3f9446",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:3",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "3",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 4920,
"wires": [
[
"180ca24ccfd3cc6c"
]
]
},
{
"id": "17380c4401828e91",
"type": "rbe",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "dedup",
"func": "rbe",
"gap": "",
"start": "",
"inout": "out",
"septopics": false,
"property": "payload",
"topi": "topic",
"x": 650,
"y": 4340,
"wires": [
[
"f9df5693f8fdc44d",
"60766f5142036421",
"a17c18b9b377b30e"
]
]
},
{
"id": "c074c384aff83f67",
"type": "victron-output-dess",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/2/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "Venus settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/2/Soc",
"type": "float",
"name": "Target SOC for schedule 2 (%)",
"mode": "both"
},
"name": "",
"onlyChanges": false,
"x": 380,
"y": 4880,
"wires": []
},
{
"id": "7b5027cdb79b168b",
"type": "delay",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"pauseType": "delay",
"timeout": "0",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "15",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": true,
"allowrate": true,
"outputs": 1,
"x": 960,
"y": 4260,
"wires": [
[
"c87a0096d450be1f"
]
]
},
{
"id": "3388e8d26fa37aca",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "72",
"payloadType": "num",
"x": 830,
"y": 4760,
"wires": [
[
"52678d6a9ee81e2f"
]
]
},
{
"id": "f2789a30310817ad",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "69",
"payloadType": "num",
"x": 670,
"y": 4760,
"wires": [
[
"c074c384aff83f67"
]
]
},
{
"id": "f11070ed775aff4e",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "65",
"payloadType": "num",
"x": 250,
"y": 4760,
"wires": [
[
"1c3919f0cf07e35c"
]
]
},
{
"id": "7d84d28765cdbfd9",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "67",
"payloadType": "num",
"x": 430,
"y": 4760,
"wires": [
[
"0838984737cd803e"
]
]
},
{
"id": "bece41ad86f68419",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "90",
"payloadType": "num",
"x": 410,
"y": 4260,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "297a6e7d8ac50f60",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 176",
"mode": "link",
"links": [],
"x": 1075,
"y": 5080,
"wires": []
},
{
"id": "b587ecd6dff60a65",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 177",
"mode": "link",
"links": [],
"x": 1075,
"y": 5120,
"wires": []
},
{
"id": "91542813400497c3",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 178",
"mode": "link",
"links": [],
"x": 1075,
"y": 5160,
"wires": []
},
{
"id": "3808c6773053540c",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 179",
"mode": "link",
"links": [],
"x": 1075,
"y": 5200,
"wires": []
},
{
"id": "605d2eda5e4b42ba",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:0",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5080,
"wires": [
[
"297a6e7d8ac50f60"
]
]
},
{
"id": "2e3428a44bd7602b",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:1",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "1",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5120,
"wires": [
[
"b587ecd6dff60a65"
]
]
},
{
"id": "df023124b05c30a5",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:2",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "2",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5160,
"wires": [
[
"91542813400497c3"
]
]
},
{
"id": "25d8ac5642ca666e",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:3",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "3",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5200,
"wires": [
[
"3808c6773053540c"
]
]
},
{
"id": "0f17424d04a9e0fa",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 180",
"mode": "link",
"links": [],
"x": 1075,
"y": 5320,
"wires": []
},
{
"id": "ef9b537ae2515545",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 181",
"mode": "link",
"links": [],
"x": 1075,
"y": 5360,
"wires": []
},
{
"id": "674326aad72a8dfd",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 182",
"mode": "link",
"links": [],
"x": 1075,
"y": 5400,
"wires": []
},
{
"id": "a8424479936777a4",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 183",
"mode": "link",
"links": [],
"x": 1075,
"y": 5440,
"wires": []
},
{
"id": "4da5d8f54ad28b13",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:0",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5320,
"wires": [
[
"0f17424d04a9e0fa"
]
]
},
{
"id": "2fcfe369e55f2361",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:1",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "1",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5360,
"wires": [
[
"ef9b537ae2515545"
]
]
},
{
"id": "86d9e233cd2616a3",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:2",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "2",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5400,
"wires": [
[
"674326aad72a8dfd"
]
]
},
{
"id": "68e6a476aa77945d",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:3",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "3",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 5440,
"wires": [
[
"a8424479936777a4"
]
]
},
{
"id": "c9792a42fb23ad4a",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 139",
"links": [],
"x": 75,
"y": 4720,
"wires": [
[
"04205cc276a414f7"
]
]
},
{
"id": "40ba3f85388448f5",
"type": "victron-output-custom",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/4/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "com.victronenergy.settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/4/Soc",
"name": "/Settings/DynamicEss/Schedule/4/Soc",
"type": "number",
"value": 56
},
"name": "",
"onlyChanges": false,
"x": 520,
"y": 4960,
"wires": []
},
{
"id": "b8f5da08281dfa41",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 140",
"links": [
"8aafd089fd98eda0"
],
"x": 75,
"y": 4960,
"wires": [
[
"40ba3f85388448f5"
]
]
},
{
"id": "cc85ba2263ac2395",
"type": "victron-input-custom",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/4/Soc",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "com.victronenergy.settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/4/Soc",
"name": "/Settings/DynamicEss/Schedule/4/Soc",
"type": "number",
"value": 60
},
"name": "",
"onlyChanges": false,
"x": 660,
"y": 5000,
"wires": [
[
"c09eb964d2345108"
]
]
},
{
"id": "c09eb964d2345108",
"type": "change",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic:4",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "4",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 990,
"y": 4960,
"wires": [
[
"3d8230c5e00166ab"
]
]
},
{
"id": "3d8230c5e00166ab",
"type": "link out",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link out 187",
"mode": "link",
"links": [
"44bbf45caaf4f5ba"
],
"x": 1075,
"y": 4960,
"wires": []
},
{
"id": "d228937e56d57bf2",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "topic",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "topic",
"statusType": "msg",
"x": 770,
"y": 4220,
"wires": []
},
{
"id": "44bbf45caaf4f5ba",
"type": "link in",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "link in 134",
"links": [
"39eb532c283a389b",
"90bc9cecd36e2d43",
"7158ebf318fa1c2d",
"ae62b2825b97e5f6",
"180ca24ccfd3cc6c",
"3d8230c5e00166ab"
],
"x": 565,
"y": 4220,
"wires": [
[
"885ef3a7e56ec185",
"12135cbc0e263dec"
]
]
},
{
"id": "885ef3a7e56ec185",
"type": "debug",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "All SOC",
"active": true,
"tosidebar": false,
"console": false,
"tostatus": true,
"complete": "payload",
"targetType": "msg",
"statusVal": "payload",
"statusType": "auto",
"x": 960,
"y": 4220,
"wires": []
},
{
"id": "12135cbc0e263dec",
"type": "StatusUltimate",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "Status",
"property": "payload",
"x": 650,
"y": 4220,
"wires": [
[
"d228937e56d57bf2"
]
]
},
{
"id": "8ce08d5f271f3bd8",
"type": "victron-output-custom",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Schedule/4/Strategy",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "com.victronenergy.settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Schedule/4/Strategy",
"name": "/Settings/DynamicEss/Schedule/4/Strategy",
"type": "number",
"value": 2
},
"name": "",
"onlyChanges": false,
"x": 510,
"y": 5240,
"wires": []
},
{
"id": "4d93cb19b684359a",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "85",
"payloadType": "num",
"x": 270,
"y": 4260,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "dfe4ec76f42954c9",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "80",
"payloadType": "num",
"x": 130,
"y": 4260,
"wires": [
[
"2d5f81564494d205"
]
]
},
{
"id": "737b44e573713f3b",
"type": "inject",
"z": "4dc207279e9d07bd",
"g": "6c869c3cc1a6f3a9",
"name": "",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "68",
"payloadType": "num",
"x": 410,
"y": 4220,
"wires": [
[
"2d5f81564494d205"
]
]
}
]
I am no longer using the Node-RED DESS node, but a replacement using the VRM API node and some code stolen from the Node-RED DESS node. (as posted here)
This code will not yet work with 15 minute prices but I can adapt it as soon as the VRM api node returns the 15 minute schedules
Dynamic ESS mode 4 is “Node-red” 1 is auto (VRM) and 0 is off
[
{
"id": "db2675c26af8189a",
"type": "inject",
"z": "2bf3db9bfca4f392",
"g": "c018435c26989974",
"name": "Enable Dynamic ESS (mode: Node-RED)",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "4",
"payloadType": "num",
"x": 250,
"y": 60,
"wires": [
[
"9f355ad0aef74e42"
]
]
},
{
"id": "b2649c3356beac4c",
"type": "inject",
"z": "2bf3db9bfca4f392",
"g": "c018435c26989974",
"name": "Disable Dynamic ESS (mode: auto)",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "1",
"payloadType": "num",
"x": 230,
"y": 100,
"wires": [
[
"9f355ad0aef74e42"
]
]
},
{
"id": "21a412f9205b4ad6",
"type": "inject",
"z": "2bf3db9bfca4f392",
"g": "c018435c26989974",
"name": "Disable Dynamic ESS (mode: off)",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "0",
"payloadType": "num",
"x": 220,
"y": 140,
"wires": [
[
"9f355ad0aef74e42"
]
]
},
{
"id": "9f355ad0aef74e42",
"type": "victron-output-custom",
"z": "2bf3db9bfca4f392",
"g": "c018435c26989974",
"service": "com.victronenergy.settings",
"path": "/Settings/DynamicEss/Mode",
"serviceObj": {
"service": "com.victronenergy.settings",
"name": "com.victronenergy.settings"
},
"pathObj": {
"path": "/Settings/DynamicEss/Mode",
"name": "/Settings/DynamicEss/Mode",
"type": "number"
},
"name": "Dynamic ESS mode",
"onlyChanges": false,
"x": 630,
"y": 60,
"wires": []
}
]
I remember we discussed that in detail. I think what you might actually be doing is accessing the Node-RED DESS scheduler through the VRM-API node and backfeeding that into the VRM DESS execution engine (in mode 1 auto). But I might be mistaken, the whole scheduler backend system isn’t all to transparent to me and I never really found any good (as in complete) documentation of it, not even on the dedicated VRM-API site.
I am going to (stfu &) sit on my hands for a little while to see what will happen coming days and then revisit this whole DESS topic with a new plan how to eat my (dess) cake and have it too ![]()
When attempting to retrieve 15m pricing through VRM-API installation stats (VRM DESS set to 15m and VRM-API call set to 15m as well), the returning object is still based on 60m intervals. Is this temporary?
It isn’t part of the stats. I am working on updating the VRM api node, allowing it to retrieve the latest schedule, either in 1 hour or 15 minutes.
The update will come out on npm as soon as it is ready and will be added to the Venus candidate release shortly after.
Thanks. I’m not even going to argue what my most wanted change in addition to this is, just a one word hint: scheduledsoc
Wonderful, thanks for the update Dirk-Jan! I will be waiting patiently.
I see you released it rather quick, awesome! And if I understand the changes correctly, the “old” dynamic ESS is completely dropped in favor of the “fetch-dynamic-ess-schedules” option, getting the schedules from the stats.
I assume these will show the same schedule as VRM and not the “old” method/function/schedules.
Okay, this might break a few things but I like the way this is going. Let me see if I can install the 0.3.0 version and get back to you.
edit
Installing it was not that straightforward since node-red on venus locked the victron-vrm-api node, but I worked around it:
- download https://registry.npmjs.org/victron-vrm-api/-/victron-vrm-api-0.3.3.tgz
- rename the package (and contents in the json) to victron-vrm-api-new
- remove/disable all your victron-vrm-api nodes, the “dynamic ESS” option will be gone after the update
- disable victron-vrm-api and it’s nodes
- upload the modified package in the palette manager
- restart node-red
- ignore the warnings ^^
edit2
Uninstalling can be done in more or less the same way:
- remove the vrm-api nodes (and config)
- remove the modified package
- re-enable the old vrm-api nodes
- restart node-red

