- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
1928 lines
48 KiB
JSON
1928 lines
48 KiB
JSON
[
|
|
{
|
|
"id": "9aafbf849d4d6e12",
|
|
"type": "tab",
|
|
"label": "Debug",
|
|
"disabled": false,
|
|
"info": ""
|
|
},
|
|
{
|
|
"id": "ed603c51db9dcbb9",
|
|
"type": "tab",
|
|
"label": "Connector 1",
|
|
"disabled": false,
|
|
"info": ""
|
|
},
|
|
{
|
|
"id": "af1e1eeac9c4b704",
|
|
"type": "group",
|
|
"z": "ed603c51db9dcbb9",
|
|
"style": {
|
|
"stroke": "#999999",
|
|
"stroke-opacity": "1",
|
|
"fill": "none",
|
|
"fill-opacity": "1",
|
|
"label": true,
|
|
"label-position": "nw",
|
|
"color": "#a4a4a4"
|
|
},
|
|
"nodes": [
|
|
"1295e032d7ddbc20"
|
|
],
|
|
"x": 1114,
|
|
"y": 439,
|
|
"w": 152,
|
|
"h": 82
|
|
},
|
|
{
|
|
"id": "7140803fb3989089",
|
|
"type": "ui_base",
|
|
"theme": {
|
|
"name": "theme-custom",
|
|
"lightTheme": {
|
|
"default": "#0094CE",
|
|
"baseColor": "#0094CE",
|
|
"baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
|
|
"edited": true,
|
|
"reset": false
|
|
},
|
|
"darkTheme": {
|
|
"default": "#097479",
|
|
"baseColor": "#097479",
|
|
"baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
|
|
"edited": true,
|
|
"reset": false
|
|
},
|
|
"customTheme": {
|
|
"name": "EVerest",
|
|
"default": "#4B7930",
|
|
"baseColor": "#2a62ac",
|
|
"baseFont": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif",
|
|
"reset": false
|
|
},
|
|
"themeState": {
|
|
"base-color": {
|
|
"default": "#2a62ac",
|
|
"value": "#2a62ac",
|
|
"edited": true
|
|
},
|
|
"page-titlebar-backgroundColor": {
|
|
"value": "#2a62ac",
|
|
"edited": false
|
|
},
|
|
"page-backgroundColor": {
|
|
"value": "#111111",
|
|
"edited": false
|
|
},
|
|
"page-sidebar-backgroundColor": {
|
|
"value": "#333333",
|
|
"edited": false
|
|
},
|
|
"group-textColor": {
|
|
"value": "#4f88d4",
|
|
"edited": false
|
|
},
|
|
"group-borderColor": {
|
|
"value": "#555555",
|
|
"edited": false
|
|
},
|
|
"group-backgroundColor": {
|
|
"value": "#333333",
|
|
"edited": false
|
|
},
|
|
"widget-textColor": {
|
|
"value": "#eeeeee",
|
|
"edited": false
|
|
},
|
|
"widget-backgroundColor": {
|
|
"value": "#2a62ac",
|
|
"edited": false
|
|
},
|
|
"widget-borderColor": {
|
|
"value": "#333333",
|
|
"edited": false
|
|
},
|
|
"base-font": {
|
|
"value": "-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif"
|
|
}
|
|
},
|
|
"angularTheme": {
|
|
"primary": "indigo",
|
|
"accents": "blue",
|
|
"warn": "red",
|
|
"background": "grey",
|
|
"palette": "light"
|
|
}
|
|
},
|
|
"site": {
|
|
"name": "EVerest",
|
|
"hideToolbar": "false",
|
|
"allowSwipe": "false",
|
|
"lockMenu": "false",
|
|
"allowTempTheme": "true",
|
|
"dateFormat": "DD.MM.YYYY",
|
|
"sizes": {
|
|
"sx": 48,
|
|
"sy": 48,
|
|
"gx": 6,
|
|
"gy": 6,
|
|
"cx": 6,
|
|
"cy": 6,
|
|
"px": 6,
|
|
"py": 6
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"id": "fc8686af.48d178",
|
|
"type": "mqtt-broker",
|
|
"name": "",
|
|
"broker": "localhost",
|
|
"port": "1883",
|
|
"clientid": "",
|
|
"usetls": false,
|
|
"protocolVersion": "4",
|
|
"keepalive": "60",
|
|
"cleansession": true,
|
|
"birthTopic": "",
|
|
"birthQos": "0",
|
|
"birthPayload": "",
|
|
"birthMsg": {},
|
|
"closeTopic": "",
|
|
"closeQos": "0",
|
|
"closePayload": "",
|
|
"closeMsg": {},
|
|
"willTopic": "",
|
|
"willQos": "0",
|
|
"willPayload": "",
|
|
"willMsg": {},
|
|
"sessionExpiry": ""
|
|
},
|
|
{
|
|
"id": "5e36140d.127f1c",
|
|
"type": "ui_group",
|
|
"name": "PowerMeter",
|
|
"tab": "50c487c1.27e508",
|
|
"order": 2,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "ebbb0e3f.53fbf",
|
|
"type": "ui_group",
|
|
"name": "Actions",
|
|
"tab": "50c487c1.27e508",
|
|
"order": 2,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "1709edaf.162962",
|
|
"type": "ui_group",
|
|
"name": "Debug",
|
|
"tab": "50c487c1.27e508",
|
|
"order": 3,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "8d6f402b.8f007",
|
|
"type": "ui_group",
|
|
"name": "KeepAlive",
|
|
"tab": "50c487c1.27e508",
|
|
"order": 5,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "1ebee360.265b5d",
|
|
"type": "ui_group",
|
|
"name": "PowerMeter",
|
|
"tab": "50c487c1.27e508",
|
|
"order": 6,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "d3f19d5c.593e5",
|
|
"type": "ui_group",
|
|
"name": "State",
|
|
"tab": "50c487c1.27e508",
|
|
"order": 4,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "b364f7eb4621082b",
|
|
"type": "ui_group",
|
|
"name": "Connector 1",
|
|
"tab": "d3ada9fa4cf6ac53",
|
|
"order": 2,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "7cd2ccabb1265f7a",
|
|
"type": "ui_group",
|
|
"name": "RFID",
|
|
"tab": "d3ada9fa4cf6ac53",
|
|
"order": 1,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "21e40a4a97a50168",
|
|
"type": "ui_group",
|
|
"name": "Connector 2",
|
|
"tab": "d3ada9fa4cf6ac53",
|
|
"order": 3,
|
|
"disp": true,
|
|
"width": "6",
|
|
"collapse": false
|
|
},
|
|
{
|
|
"id": "84ddb762.5129f8",
|
|
"type": "ui_tab",
|
|
"name": "Home",
|
|
"icon": "dashboard",
|
|
"disabled": false,
|
|
"hidden": false
|
|
},
|
|
{
|
|
"id": "427a83e7f6d33afc",
|
|
"type": "ui_tab",
|
|
"name": "Home",
|
|
"icon": "dashboard",
|
|
"order": 1,
|
|
"disabled": false,
|
|
"hidden": false
|
|
},
|
|
{
|
|
"id": "27225dc1005441da",
|
|
"type": "ui_spacer",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "spacer",
|
|
"group": "27651fee38a05406",
|
|
"order": 4,
|
|
"width": 1,
|
|
"height": 1
|
|
},
|
|
{
|
|
"id": "7120e41583a9165f",
|
|
"type": "ui_spacer",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "spacer",
|
|
"group": "27651fee38a05406",
|
|
"order": 4,
|
|
"width": 1,
|
|
"height": 1
|
|
},
|
|
{
|
|
"id": "efce370cfc8e4f9b",
|
|
"type": "ui_spacer",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "spacer",
|
|
"group": "",
|
|
"order": 2,
|
|
"width": 6,
|
|
"height": 1
|
|
},
|
|
{
|
|
"id": "794d727ae2866f12",
|
|
"type": "ui_spacer",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "spacer",
|
|
"group": "",
|
|
"order": 5,
|
|
"width": "6",
|
|
"height": "1"
|
|
},
|
|
{
|
|
"id": "50c487c1.27e508",
|
|
"type": "ui_tab",
|
|
"name": "Debug",
|
|
"icon": "fa-fire",
|
|
"disabled": false,
|
|
"hidden": false
|
|
},
|
|
{
|
|
"id": "d3ada9fa4cf6ac53",
|
|
"type": "ui_tab",
|
|
"name": "Home",
|
|
"icon": "dashboard",
|
|
"order": 1,
|
|
"disabled": false,
|
|
"hidden": false
|
|
},
|
|
{
|
|
"id": "3c7214a9dd24b0ad",
|
|
"type": "ui_tab",
|
|
"name": "EVSE Configuration",
|
|
"icon": "dashboard",
|
|
"order": 1,
|
|
"disabled": false,
|
|
"hidden": false
|
|
},
|
|
{
|
|
"id": "c8955752ad17f297",
|
|
"type": "mqtt in",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/powermeter/vrmsL1",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 180,
|
|
"y": 100,
|
|
"wires": [
|
|
[
|
|
"b1d3d31a92c2c68d"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "b1d3d31a92c2c68d",
|
|
"type": "ui_chart",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"group": "5e36140d.127f1c",
|
|
"order": 11,
|
|
"width": 0,
|
|
"height": 0,
|
|
"label": "vrmsL1",
|
|
"chartType": "line",
|
|
"legend": "false",
|
|
"xformat": "HH:mm:ss",
|
|
"interpolate": "linear",
|
|
"nodata": "",
|
|
"dot": false,
|
|
"ymin": "",
|
|
"ymax": "",
|
|
"removeOlder": "60",
|
|
"removeOlderPoints": "",
|
|
"removeOlderUnit": "1",
|
|
"cutout": 0,
|
|
"useOneColor": false,
|
|
"useUTC": false,
|
|
"colors": [
|
|
"#1f77b4",
|
|
"#aec7e8",
|
|
"#ff7f0e",
|
|
"#2ca02c",
|
|
"#98df8a",
|
|
"#d62728",
|
|
"#ff9896",
|
|
"#9467bd",
|
|
"#c5b0d5"
|
|
],
|
|
"outputs": 1,
|
|
"useDifferentColor": false,
|
|
"x": 400,
|
|
"y": 100,
|
|
"wires": [
|
|
[]
|
|
]
|
|
},
|
|
{
|
|
"id": "a4bef87a56ade625",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/enable",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 500,
|
|
"y": 440,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "6c1a9684ee9cff1b",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/disable",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 500,
|
|
"y": 480,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "7b7910abcebe9ea8",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "Enabled",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 120,
|
|
"y": 460,
|
|
"wires": [
|
|
[
|
|
"f68fa199eb0c13b0"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "f68fa199eb0c13b0",
|
|
"type": "switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"property": "payload",
|
|
"propertyType": "msg",
|
|
"rules": [
|
|
{
|
|
"t": "true"
|
|
},
|
|
{
|
|
"t": "false"
|
|
}
|
|
],
|
|
"checkall": "true",
|
|
"repair": false,
|
|
"outputs": 2,
|
|
"x": 280,
|
|
"y": 460,
|
|
"wires": [
|
|
[
|
|
"a4bef87a56ade625"
|
|
],
|
|
[
|
|
"6c1a9684ee9cff1b"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "be7373d5f1fc78e3",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "setThreePhases",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 140,
|
|
"y": 540,
|
|
"wires": [
|
|
[
|
|
"ee61573475970e13"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "ee61573475970e13",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/set_three_phases",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 370,
|
|
"y": 540,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "1e33ee217d09343a",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "enableRCD",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 130,
|
|
"y": 600,
|
|
"wires": [
|
|
[
|
|
"7f1db77313661cf3"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "7f1db77313661cf3",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/enable_rcd",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 350,
|
|
"y": 600,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "23610d2f3c1a674b",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "setHasVentilation",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 150,
|
|
"y": 660,
|
|
"wires": [
|
|
[
|
|
"d40cd5658151e3ca"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "d40cd5658151e3ca",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/set_has_ventilation",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 420,
|
|
"y": 660,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "d62a89349e2d9147",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/set_auth",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 380,
|
|
"y": 220,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "49a61fca4e975f0d",
|
|
"type": "ui_button",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 1,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": false,
|
|
"label": "setAuth(USERID)",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"icon": "",
|
|
"payload": "USERID",
|
|
"payloadType": "str",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"x": 150,
|
|
"y": 220,
|
|
"wires": [
|
|
[
|
|
"d62a89349e2d9147"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "4a20ae416f941363",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "switch3phWhileCharging",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 170,
|
|
"y": 720,
|
|
"wires": [
|
|
[
|
|
"9f997a83d8c5e502"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "9f997a83d8c5e502",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/switch_three_phases_while_charging",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 530,
|
|
"y": 720,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "b0dbe5826f92035e",
|
|
"type": "mqtt in",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/debug_json",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 160,
|
|
"y": 960,
|
|
"wires": [
|
|
[
|
|
"a62346afa82d2aa1"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "a62346afa82d2aa1",
|
|
"type": "json",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"property": "payload",
|
|
"action": "",
|
|
"pretty": false,
|
|
"x": 350,
|
|
"y": 960,
|
|
"wires": [
|
|
[
|
|
"971b16b8195f14bb"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "971b16b8195f14bb",
|
|
"type": "function",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"func": "var json = msg.payload;\n\n\n//tab[top] = {'Variable' : top, 'Value' : pay};\n\n\nnewpayload = [];\nfor(var index in json) {\n newpayload.push({'Variable' : index, 'Value' : json[index]});\n}\n\nmsg.payload = newpayload;\nreturn msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 510,
|
|
"y": 960,
|
|
"wires": [
|
|
[
|
|
"b79f8c3549cdb63e"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "b79f8c3549cdb63e",
|
|
"type": "ui_table",
|
|
"z": "9aafbf849d4d6e12",
|
|
"group": "1709edaf.162962",
|
|
"name": "Debug",
|
|
"order": 12,
|
|
"width": "6",
|
|
"height": "11",
|
|
"columns": [],
|
|
"outputs": 0,
|
|
"cts": false,
|
|
"x": 680,
|
|
"y": 960,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "105b9eab50b4db7f",
|
|
"type": "mqtt in",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/keepalive_json",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 170,
|
|
"y": 1140,
|
|
"wires": [
|
|
[
|
|
"f9bce2148fd0d745"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "f9bce2148fd0d745",
|
|
"type": "json",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"property": "payload",
|
|
"action": "",
|
|
"pretty": false,
|
|
"x": 350,
|
|
"y": 1140,
|
|
"wires": [
|
|
[
|
|
"81c08d60fe305390"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "81c08d60fe305390",
|
|
"type": "function",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"func": "var json = msg.payload;\n\n\n//tab[top] = {'Variable' : top, 'Value' : pay};\n\n\nnewpayload = [];\nfor(var index in json) {\n newpayload.push({'Variable' : index, 'Value' : json[index]});\n}\n\nmsg.payload = newpayload;\nreturn msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 510,
|
|
"y": 1140,
|
|
"wires": [
|
|
[
|
|
"24770a798c2cc78c"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "24770a798c2cc78c",
|
|
"type": "ui_table",
|
|
"z": "9aafbf849d4d6e12",
|
|
"group": "8d6f402b.8f007",
|
|
"name": "KeepAlive",
|
|
"order": 12,
|
|
"width": "6",
|
|
"height": "4",
|
|
"columns": [],
|
|
"outputs": 0,
|
|
"cts": false,
|
|
"x": 690,
|
|
"y": 1140,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "b2e6e05e396ff846",
|
|
"type": "mqtt in",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/powermeter_json",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 170,
|
|
"y": 1200,
|
|
"wires": [
|
|
[
|
|
"bff81951aab38e7c"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "bff81951aab38e7c",
|
|
"type": "json",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"property": "payload",
|
|
"action": "",
|
|
"pretty": false,
|
|
"x": 360,
|
|
"y": 1200,
|
|
"wires": [
|
|
[
|
|
"685dcdcf457910a6"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "685dcdcf457910a6",
|
|
"type": "function",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"func": "var json = msg.payload;\n\n\n//tab[top] = {'Variable' : top, 'Value' : pay};\n\n\nnewpayload = [];\nfor(var index in json) {\n newpayload.push({'Variable' : index, 'Value' : json[index]});\n}\n\nmsg.payload = newpayload;\nreturn msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 520,
|
|
"y": 1200,
|
|
"wires": [
|
|
[
|
|
"854cee03b9be0de5"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "854cee03b9be0de5",
|
|
"type": "ui_table",
|
|
"z": "9aafbf849d4d6e12",
|
|
"group": "1ebee360.265b5d",
|
|
"name": "PowerMeter",
|
|
"order": 12,
|
|
"width": "6",
|
|
"height": "11",
|
|
"columns": [],
|
|
"outputs": 0,
|
|
"cts": false,
|
|
"x": 710,
|
|
"y": 1200,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "dd9a01731c23f076",
|
|
"type": "mqtt in",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/state/#",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 140,
|
|
"y": 1020,
|
|
"wires": [
|
|
[
|
|
"181994551d5096a8"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "181994551d5096a8",
|
|
"type": "function",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"func": "let cur_topic_index = -1;\nlet topics_list_length = 0;\n\nvar topics_list = global.get(\"state_topics_list\");\nvar payload_list = global.get(\"state_payload_list\");\nvar new_payload = [];\n\nfor (var topics_list_index in topics_list) {\n if ( (topics_list[topics_list_index].indexOf(msg.topic) >= 0) && (topics_list[topics_list_index].length == msg.topic.length) ) {\n cur_topic_index = topics_list_index;\n break;\n }\n topics_list_length++;\n}\n\nif (cur_topic_index > -1) {\n payload_list[cur_topic_index] = msg.payload;\n} else {\n topics_list.push(msg.topic);\n payload_list.push(msg.payload);\n}\n\nglobal.set(\"state_topics_list\", topics_list);\nglobal.set(\"state_payload_list\", payload_list);\n\n\nfor (var index in payload_list) {\n new_payload.push({'Variable': topics_list[index].substr(16, topics_list[index].length), 'Value': payload_list[index]});\n}\n\nmsg.payload = new_payload;\nreturn msg;\n",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "// Code added here will be run once\n// whenever the node is started.\nglobal.set(\"state_topics_list\", []);\nglobal.set(\"state_payload_list\", []);",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 520,
|
|
"y": 1020,
|
|
"wires": [
|
|
[
|
|
"f05a2bcbad4e5e4f"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "f05a2bcbad4e5e4f",
|
|
"type": "ui_table",
|
|
"z": "9aafbf849d4d6e12",
|
|
"group": "d3f19d5c.593e5",
|
|
"name": "State",
|
|
"order": 12,
|
|
"width": "6",
|
|
"height": "4",
|
|
"columns": [],
|
|
"outputs": 0,
|
|
"cts": false,
|
|
"x": 690,
|
|
"y": 1020,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "626ae76afca27c10",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "enableHLC",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 130,
|
|
"y": 780,
|
|
"wires": [
|
|
[
|
|
"cb19212395df1ec4"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "cb19212395df1ec4",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/enable_hlc",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 350,
|
|
"y": 780,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "8761f22ed645e3d5",
|
|
"type": "ui_switch",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"label": "Simulation RCD",
|
|
"tooltip": "",
|
|
"group": "ebbb0e3f.53fbf",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "topic",
|
|
"topicType": "msg",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 140,
|
|
"y": 840,
|
|
"wires": [
|
|
[
|
|
"c423c5096c47f04a"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "c423c5096c47f04a",
|
|
"type": "mqtt out",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "",
|
|
"topic": "/external/cmd/enable_rcd",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 350,
|
|
"y": 840,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "edcc986828bdfcc4",
|
|
"type": "comment",
|
|
"z": "9aafbf849d4d6e12",
|
|
"name": "Debug",
|
|
"info": "",
|
|
"x": 110,
|
|
"y": 40,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "e8e1511b6239bfa2",
|
|
"type": "comment",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Initialize the Connector number",
|
|
"info": "",
|
|
"x": 230,
|
|
"y": 80,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "23d875eef4c57fa8",
|
|
"type": "change",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"rules": [
|
|
{
|
|
"t": "set",
|
|
"p": "connector_number",
|
|
"pt": "flow",
|
|
"to": "1",
|
|
"tot": "str"
|
|
}
|
|
],
|
|
"action": "",
|
|
"property": "",
|
|
"from": "",
|
|
"to": "",
|
|
"reg": false,
|
|
"x": 440,
|
|
"y": 140,
|
|
"wires": [
|
|
[]
|
|
]
|
|
},
|
|
{
|
|
"id": "e99161497760c072",
|
|
"type": "inject",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"props": [
|
|
{
|
|
"p": "payload"
|
|
},
|
|
{
|
|
"p": "topic",
|
|
"vt": "str"
|
|
}
|
|
],
|
|
"repeat": "",
|
|
"crontab": "",
|
|
"once": true,
|
|
"onceDelay": 0.1,
|
|
"topic": "",
|
|
"payloadType": "date",
|
|
"x": 190,
|
|
"y": 140,
|
|
"wires": [
|
|
[
|
|
"23d875eef4c57fa8"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "b70c30908c955b81",
|
|
"type": "comment",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Data to show",
|
|
"info": "",
|
|
"x": 170,
|
|
"y": 200,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "f96ccb60614f9f18",
|
|
"type": "mqtt out",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"topic": "",
|
|
"qos": "1",
|
|
"retain": "false",
|
|
"respTopic": "",
|
|
"contentType": "",
|
|
"userProps": "",
|
|
"correl": "",
|
|
"expiry": "",
|
|
"broker": "fc8686af.48d178",
|
|
"x": 890,
|
|
"y": 840,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "3a5423dc1feed224",
|
|
"type": "ui_button",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 1,
|
|
"width": "3",
|
|
"height": "1",
|
|
"passthru": false,
|
|
"label": "Pause",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"icon": "",
|
|
"payload": "",
|
|
"payloadType": "str",
|
|
"topic": "everest_external/nodered/#/cmd/pause_charging",
|
|
"topicType": "str",
|
|
"x": 150,
|
|
"y": 700,
|
|
"wires": [
|
|
[
|
|
"361b3d846c4e6673"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "f042bc45e3742ef7",
|
|
"type": "ui_button",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 2,
|
|
"width": "3",
|
|
"height": "1",
|
|
"passthru": false,
|
|
"label": "Resume",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"icon": "",
|
|
"payload": "",
|
|
"payloadType": "str",
|
|
"topic": "everest_external/nodered/#/cmd/resume_charging",
|
|
"topicType": "str",
|
|
"x": 160,
|
|
"y": 760,
|
|
"wires": [
|
|
[
|
|
"361b3d846c4e6673"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "361b3d846c4e6673",
|
|
"type": "change",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Insert Connector number",
|
|
"rules": [
|
|
{
|
|
"t": "change",
|
|
"p": "topic",
|
|
"pt": "msg",
|
|
"from": "#",
|
|
"fromt": "str",
|
|
"to": "connector_number",
|
|
"tot": "flow"
|
|
}
|
|
],
|
|
"action": "",
|
|
"property": "",
|
|
"from": "",
|
|
"to": "",
|
|
"reg": false,
|
|
"x": 670,
|
|
"y": 840,
|
|
"wires": [
|
|
[
|
|
"f96ccb60614f9f18",
|
|
"fb1511183c9a660f"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "9c6d1a5e2ba43d36",
|
|
"type": "comment",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Commands",
|
|
"info": "",
|
|
"x": 170,
|
|
"y": 640,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "51656271f4688a67",
|
|
"type": "mqtt in",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"topic": "everest_external/nodered/+/state/max_current",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 270,
|
|
"y": 280,
|
|
"wires": [
|
|
[
|
|
"f5ca89d3e6d1d1ba"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "f5ca89d3e6d1d1ba",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Filter connector number",
|
|
"func": "if (msg.topic.indexOf(String(flow.get('connector_number'))) > -1) return msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 590,
|
|
"y": 280,
|
|
"wires": [
|
|
[
|
|
"1a019e35e580cbf4"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "1a019e35e580cbf4",
|
|
"type": "ui_text",
|
|
"z": "ed603c51db9dcbb9",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 3,
|
|
"width": 0,
|
|
"height": 0,
|
|
"name": "",
|
|
"label": "Max Current",
|
|
"format": "{{msg.payload | number: 1}}",
|
|
"layout": "row-spread",
|
|
"x": 890,
|
|
"y": 280,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "799130c039278e9b",
|
|
"type": "ui_text",
|
|
"z": "ed603c51db9dcbb9",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 5,
|
|
"width": 0,
|
|
"height": 0,
|
|
"name": "",
|
|
"label": "Energy Charged",
|
|
"format": "{{msg.payload | number:2}} kWh",
|
|
"layout": "row-spread",
|
|
"x": 880,
|
|
"y": 340,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "a24c1a5f8bb6a5b5",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Filter connector number",
|
|
"func": "if (msg.topic.indexOf(String(flow.get('connector_number'))) > -1) return msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 650,
|
|
"y": 340,
|
|
"wires": [
|
|
[
|
|
"799130c039278e9b"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "7164db07c0a78327",
|
|
"type": "mqtt in",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"topic": "everest_external/nodered/+/powermeter/totalKWattHr",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 300,
|
|
"y": 340,
|
|
"wires": [
|
|
[
|
|
"a24c1a5f8bb6a5b5"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "9715c97a5a212e0f",
|
|
"type": "mqtt in",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"topic": "everest_external/nodered/+/state/state_string",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 270,
|
|
"y": 440,
|
|
"wires": [
|
|
[
|
|
"0139c0ace0e5f706"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "8059bceefd9dcdf7",
|
|
"type": "mqtt in",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"topic": "everest_external/nodered/+/powermeter/totalKw",
|
|
"qos": "2",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 280,
|
|
"y": 500,
|
|
"wires": [
|
|
[
|
|
"6941efd3ef8e1ac4"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "72a90b471d6ebb44",
|
|
"type": "ui_level",
|
|
"z": "ed603c51db9dcbb9",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 7,
|
|
"width": 0,
|
|
"height": 0,
|
|
"name": "",
|
|
"label": "Temperature:",
|
|
"colorHi": "#e60000",
|
|
"colorWarn": "#ff9900",
|
|
"colorNormal": "#00b33c",
|
|
"colorOff": "#595959",
|
|
"min": "-20",
|
|
"max": "85",
|
|
"segWarn": "65",
|
|
"segHigh": "75",
|
|
"unit": "",
|
|
"layout": "sh",
|
|
"channelA": "",
|
|
"channelB": "",
|
|
"decimals": 0,
|
|
"animations": "soft",
|
|
"shape": "3",
|
|
"colorschema": "valuedriven",
|
|
"textoptions": "default",
|
|
"colorText": "#eeeeee",
|
|
"fontLabel": "",
|
|
"fontValue": "",
|
|
"fontSmall": "",
|
|
"colorFromTheme": true,
|
|
"textAnimations": false,
|
|
"hideValue": false,
|
|
"tickmode": "segments",
|
|
"peakmode": false,
|
|
"property": "payload",
|
|
"peaktime": 3000,
|
|
"x": 1010,
|
|
"y": 560,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "4b864ea8df7d27cf",
|
|
"type": "mqtt in",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"topic": "everest_external/nodered/+/state/temperature",
|
|
"qos": "0",
|
|
"datatype": "auto",
|
|
"broker": "fc8686af.48d178",
|
|
"nl": false,
|
|
"rap": true,
|
|
"rh": 0,
|
|
"inputs": 0,
|
|
"x": 280,
|
|
"y": 560,
|
|
"wires": [
|
|
[
|
|
"bc1b6adb5db9d7e4"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "1ef49a48bf883748",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"func": "if (msg.topic.indexOf('totalKw')>=0) {\n context.data.totalKw = msg.payload;\n}\nelse if (msg.topic.indexOf('state_string')>=0) {\n context.data.state_string = msg.payload;\n}\n\n//node.warn(msg.topic);\nmsg.payload = context.data.totalKw;\nmsg.label = context.data.state_string;\nreturn msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "// Code added here will be run once\n// whenever the node is started.\ncontext.data = {}",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 980,
|
|
"y": 480,
|
|
"wires": [
|
|
[
|
|
"5bd8abc274e70360",
|
|
"1295e032d7ddbc20"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "5bd8abc274e70360",
|
|
"type": "debug",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"active": false,
|
|
"tosidebar": true,
|
|
"console": false,
|
|
"tostatus": false,
|
|
"complete": "payload",
|
|
"targetType": "msg",
|
|
"statusVal": "",
|
|
"statusType": "auto",
|
|
"x": 1190,
|
|
"y": 380,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "1295e032d7ddbc20",
|
|
"type": "ui_gauge",
|
|
"z": "ed603c51db9dcbb9",
|
|
"g": "af1e1eeac9c4b704",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 6,
|
|
"width": 0,
|
|
"height": 0,
|
|
"gtype": "gage",
|
|
"title": "{{msg.label}}",
|
|
"label": "Kilowatt",
|
|
"format": "{{value}} kW",
|
|
"min": "0",
|
|
"max": "11",
|
|
"colors": [
|
|
"#00b500",
|
|
"#e6e600",
|
|
"#ca3838"
|
|
],
|
|
"seg1": "",
|
|
"seg2": "",
|
|
"x": 1190,
|
|
"y": 480,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "6941efd3ef8e1ac4",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Filter connector number",
|
|
"func": "if (msg.topic.indexOf(String(flow.get('connector_number'))) > -1) return msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 730,
|
|
"y": 500,
|
|
"wires": [
|
|
[
|
|
"1ef49a48bf883748"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "0139c0ace0e5f706",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Filter connector number",
|
|
"func": "if (msg.topic.indexOf(String(flow.get('connector_number'))) > -1) return msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 730,
|
|
"y": 460,
|
|
"wires": [
|
|
[
|
|
"1ef49a48bf883748"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "bc1b6adb5db9d7e4",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Filter connector number",
|
|
"func": "if (msg.topic.indexOf(String(flow.get('connector_number'))) > -1) return msg;",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 710,
|
|
"y": 560,
|
|
"wires": [
|
|
[
|
|
"72a90b471d6ebb44"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "348dfdc4b48ec881",
|
|
"type": "comment",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Simulation control",
|
|
"info": "",
|
|
"x": 190,
|
|
"y": 820,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "352d9f34ae594f58",
|
|
"type": "ui_switch",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"label": "Simulation enable (HIL)",
|
|
"tooltip": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 12,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"decouple": "false",
|
|
"topic": "everest_external/nodered/#/carsim/cmd/enable",
|
|
"topicType": "str",
|
|
"style": "",
|
|
"onvalue": "true",
|
|
"onvalueType": "bool",
|
|
"onicon": "",
|
|
"oncolor": "",
|
|
"offvalue": "false",
|
|
"offvalueType": "bool",
|
|
"officon": "",
|
|
"offcolor": "",
|
|
"animate": false,
|
|
"x": 210,
|
|
"y": 880,
|
|
"wires": [
|
|
[
|
|
"361b3d846c4e6673"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "76be7e55a947f675",
|
|
"type": "ui_button",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 8,
|
|
"width": "3",
|
|
"height": "1",
|
|
"passthru": false,
|
|
"label": "Car Plugin",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"icon": "",
|
|
"payload": "start",
|
|
"payloadType": "str",
|
|
"topic": "everest_external/nodered/#/carsim/cmd/execute_charging_session",
|
|
"topicType": "str",
|
|
"x": 170,
|
|
"y": 980,
|
|
"wires": [
|
|
[
|
|
"620b0d248a89ece0"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "42f4c4f916474559",
|
|
"type": "ui_button",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 9,
|
|
"width": "3",
|
|
"height": "1",
|
|
"passthru": false,
|
|
"label": "Stop & Unplug",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"icon": "",
|
|
"payload": "stop",
|
|
"payloadType": "str",
|
|
"topic": "everest_external/nodered/#/carsim/cmd/modify_charging_session",
|
|
"topicType": "str",
|
|
"x": 170,
|
|
"y": 940,
|
|
"wires": [
|
|
[
|
|
"620b0d248a89ece0"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "cc45f1b73782292a",
|
|
"type": "ui_slider",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "MaxCurrent Slider",
|
|
"label": "",
|
|
"tooltip": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 4,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": false,
|
|
"outs": "all",
|
|
"topic": "everest_external/nodered/#/cmd/set_max_current",
|
|
"topicType": "str",
|
|
"min": "6",
|
|
"max": "16",
|
|
"step": "0.1",
|
|
"x": 450,
|
|
"y": 700,
|
|
"wires": [
|
|
[
|
|
"361b3d846c4e6673"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "f2ae0c306f3052f9",
|
|
"type": "ui_dropdown",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"label": "Car Simulation",
|
|
"tooltip": "",
|
|
"place": "Select option",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 13,
|
|
"width": 0,
|
|
"height": 0,
|
|
"passthru": true,
|
|
"multiple": false,
|
|
"options": [
|
|
{
|
|
"label": "DC ISO15118-2",
|
|
"value": "sleep 1;iso_wait_slac_matched;iso_start_v2g_session DC 86400 0;iso_wait_pwr_ready;iso_dc_power_on;iso_wait_for_stop 36000#iso_stop_charging;iso_wait_v2g_session_stopped;unplug#iso_pause_charging;iso_wait_for_resume#iso_start_bcb_toggle 3;iso_wait_pwm_is_running;iso_start_v2g_session DC 86400 0;iso_wait_pwr_ready;iso_dc_power_on;sleep 36000;",
|
|
"type": "str"
|
|
}
|
|
],
|
|
"payload": "",
|
|
"topic": "sim_commands",
|
|
"topicType": "str",
|
|
"className": "",
|
|
"x": 170,
|
|
"y": 1120,
|
|
"wires": [
|
|
[
|
|
"620b0d248a89ece0"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "620b0d248a89ece0",
|
|
"type": "function",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "Buffer sim commands",
|
|
"func": "if (msg.topic.indexOf('sim_commands') > -1) {\n const s = msg.payload.split('#');\n flow.set('sim_commands_start', s[0]);\n flow.set('sim_commands_stop', s[1]);\n flow.set('sim_commands_pause', s[2]);\n flow.set('sim_commands_resume', s[3]);\n} else if (msg.payload == 'start') {\n msg.payload = flow.get('sim_commands_start');\n return msg;\n} else if (msg.payload == 'stop') {\n msg.payload = flow.get('sim_commands_stop');\n return msg;\n} else if (msg.payload == 'pause') {\n msg.payload = flow.get('sim_commands_pause');\n return msg;\n} else if (msg.payload == 'resume') {\n msg.payload = flow.get('sim_commands_resume');\n return msg;\n} else {\n msg.payload = 'NONE';\n return msg;\n}\n",
|
|
"outputs": 1,
|
|
"noerr": 0,
|
|
"initialize": "",
|
|
"finalize": "",
|
|
"libs": [],
|
|
"x": 440,
|
|
"y": 960,
|
|
"wires": [
|
|
[
|
|
"361b3d846c4e6673"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "fb1511183c9a660f",
|
|
"type": "debug",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"active": true,
|
|
"tosidebar": true,
|
|
"console": false,
|
|
"tostatus": false,
|
|
"complete": "false",
|
|
"statusVal": "",
|
|
"statusType": "auto",
|
|
"x": 910,
|
|
"y": 920,
|
|
"wires": []
|
|
},
|
|
{
|
|
"id": "fef2be4575e66bda",
|
|
"type": "inject",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"props": [
|
|
{
|
|
"p": "payload"
|
|
},
|
|
{
|
|
"p": "topic",
|
|
"vt": "str"
|
|
}
|
|
],
|
|
"repeat": "",
|
|
"crontab": "",
|
|
"once": true,
|
|
"onceDelay": "1",
|
|
"topic": "sim_commands",
|
|
"payload": "sleep 1;iso_wait_slac_matched;iso_start_v2g_session DC 86400 0;iso_wait_pwr_ready;iso_dc_power_on;iso_wait_for_stop 36000#iso_stop_charging;iso_wait_v2g_session_stopped;unplug#iso_pause_charging;iso_wait_for_resume#iso_start_bcb_toggle 3;iso_wait_pwm_is_running;iso_start_v2g_session DC 86400 0;iso_wait_pwr_ready;iso_dc_power_on;sleep 36000;",
|
|
"payloadType": "str",
|
|
"x": 150,
|
|
"y": 1180,
|
|
"wires": [
|
|
[
|
|
"f2ae0c306f3052f9"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "7cedfe81979df439",
|
|
"type": "ui_button",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 11,
|
|
"width": "3",
|
|
"height": "1",
|
|
"passthru": false,
|
|
"label": "EV Resume",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"className": "",
|
|
"icon": "",
|
|
"payload": "resume",
|
|
"payloadType": "str",
|
|
"topic": "everest_external/nodered/#/carsim/cmd/modify_charging_session",
|
|
"topicType": "str",
|
|
"x": 170,
|
|
"y": 1060,
|
|
"wires": [
|
|
[
|
|
"620b0d248a89ece0"
|
|
]
|
|
]
|
|
},
|
|
{
|
|
"id": "9ca06173e71733b7",
|
|
"type": "ui_button",
|
|
"z": "ed603c51db9dcbb9",
|
|
"name": "",
|
|
"group": "b364f7eb4621082b",
|
|
"order": 10,
|
|
"width": "3",
|
|
"height": "1",
|
|
"passthru": false,
|
|
"label": "EV Pause",
|
|
"tooltip": "",
|
|
"color": "",
|
|
"bgcolor": "",
|
|
"className": "",
|
|
"icon": "",
|
|
"payload": "pause",
|
|
"payloadType": "str",
|
|
"topic": "everest_external/nodered/#/carsim/cmd/modify_charging_session",
|
|
"topicType": "str",
|
|
"x": 170,
|
|
"y": 1020,
|
|
"wires": [
|
|
[
|
|
"620b0d248a89ece0"
|
|
]
|
|
]
|
|
}
|
|
] |