Requires controller software version 20250626135043.
Generated on studio.asyncapi.com with YAML file.
General information about controller
Accepts the following message:
{
"unitId": "XRKPF0Q5JHPCST79",
"unitIdFormatted": "XRKP-F0Q5-JHPC-ST79",
"boardModel": "REDUXI_1",
"CPUSerial": "1651660b0b01d4fc",
"EMMCSerial": "45010044473430303801b1e6d22579af",
"ethernetMAC": "d8:47:8f:9c:83:1a",
"ethernetIp": "192.168.1.202",
"eth0Ip": "192.168.1.202",
"eth0MAC": "d8:47:8f:9c:83:1a",
"eth1Ip": "",
"eth1MAC": "",
"wirelessMAC": "30:eb:1f:57:52:63",
"wirelessIp": "",
"mobileIp": "",
"osVersion": "20240229105406",
"softwareVersion": "20250623082652000",
"hwVersion": "2",
"hasWifiModule": true,
"hasMobileModule": true,
"openVpnIp": "10.4.9.218",
"dso": {
"entity": null
},
"brand": {
"type": {
"id": 1,
"name": "Reduxi",
"enumeration": "REDUXI"
},
"controllerName": "Reduxi",
"controllerHostname": "reduxi"
},
"timezone": "Europe/London",
"settings": {
"init": true,
"location": "London UK",
"locationLat": null,
"locationLng": null,
"gridFuseL1": 1,
"gridFuseL2": 2,
"gridFuseL3": 3,
"importPowerActiveLimit": 4000,
"exportPowerActiveLimit": 5000
},
"uptime": 258340978
}
Controller periodically sends keep alive ad unix timestamp in milliseconds
Accepts the following message:
Readout interval in milliseconds
Accepts the following message:
Set readout interval in milliseconds
Accepts the following message:
Keep alive interval in milliseconds
Accepts the following message:
Set keep alive interval in milliseconds
Accepts the following message:
Set controller grid settings
Accepts the following message:
{
"location": "someName",
"gridFuseL1": 10,
"gridFuseL2": 20,
"gridFuseL3": 30,
"importPowerActiveLimit": 4000,
"exportPowerActiveLimit": 5000
}
Re-publish all metadata from controller to MQTT
Accepts the following message:
Reboot the controller
Accepts the following message:
List of all devices on controller
Accepts the following message:
[
{
"id": 1,
"name": "Electricity meter",
"typeId": 2033,
"type": {
"id": 1,
"categoryId": 1,
"category": {
"id": 1,
"name": "Electricity meter",
"enumeration": "ELECTRICITY_METER",
"config": {
"hide": true
}
},
"name": "Iskraemeco WM3x6",
"enumeration": "ELECTRICITY_METER"
},
"energyLocationId": 1,
"energyLocation": {
"id": 1,
"name": "Main",
"enumeration": "MAIN"
},
"energyDirectionId": 3,
"energyDirection": {
"id": 3,
"name": "Consumption and production",
"enumeration": "CONSUMPTION_AND_PRODUCTION"
},
"pollingDelayRead": 1000,
"pollingDelayWrite": 1000,
"persistSchedule": "*/5 * * * *",
"timeoutDevice": 5000,
"timeoutPacket": 5000,
"importExportInvert": false,
"categories": [
{
"id": 1,
"name": "Electricity meter",
"enumeration": "ELECTRICITY_METER"
}
],
"categoryIds": [
1
],
"categoryId": 1,
"category": {
"id": 1,
"name": "Electricity meter",
"enumeration": "ELECTRICITY_METER"
},
"dataTypes": [
{
"id": 0,
"name": "Current L1",
"unit": "A",
"valueType": "FLOAT",
"measurementType": "PERIODIC",
"extType": "NORMAL",
"aggregationType": "NONE",
"enumeration": "CURRENT_L1",
"parameter": false
}
]
}
]
Information about device on controller
Accepts the following message:
{
"id": 1,
"name": "Electricity meter",
"typeId": 2033,
"type": {
"id": 1,
"categoryId": 1,
"category": {
"id": 1,
"name": "Electricity meter",
"enumeration": "ELECTRICITY_METER",
"config": {
"hide": true
}
},
"name": "Iskraemeco WM3x6",
"enumeration": "ELECTRICITY_METER"
},
"energyLocationId": 1,
"energyLocation": {
"id": 1,
"name": "Main",
"enumeration": "MAIN"
},
"energyDirectionId": 3,
"energyDirection": {
"id": 3,
"name": "Consumption and production",
"enumeration": "CONSUMPTION_AND_PRODUCTION"
},
"pollingDelayRead": 1000,
"pollingDelayWrite": 1000,
"persistSchedule": "*/5 * * * *",
"timeoutDevice": 5000,
"timeoutPacket": 5000,
"importExportInvert": false,
"categories": [
{
"id": 1,
"name": "Electricity meter",
"enumeration": "ELECTRICITY_METER"
}
],
"categoryIds": [
1
],
"categoryId": 1,
"category": {
"id": 1,
"name": "Electricity meter",
"enumeration": "ELECTRICITY_METER"
},
"dataTypes": [
{
"id": 0,
"name": "Current L1",
"unit": "A",
"valueType": "FLOAT",
"measurementType": "PERIODIC",
"extType": "NORMAL",
"aggregationType": "NONE",
"enumeration": "CURRENT_L1",
"parameter": false
}
]
}
Readout of measurements from device
Accepts the following message:
{
"time": "1674129782728",
"values": [
{
"deviceId": 0,
"dataTypeId": 0,
"dataTypeEnum": "IMPORT_ENERGY_ACTIVE",
"time": "1674129782728",
"value": 0
}
]
}
Setpoints for device
Accepts the following message:
{
"values": [
{
"action": "SET",
"type": "POWER_ACTIVE",
"location": "DEFAULT",
"target": "MIN",
"phaseType": "L1",
"value": 1000,
"priority": 0,
"validForTime": 0
}
]
}
Set setpoints for device
Accepts the following message:
{
"values": [
{
"action": "SET",
"type": "POWER_ACTIVE",
"location": "DEFAULT",
"target": "MIN",
"phaseType": "L1",
"value": 1000,
"priority": 0,
"validForTime": 0
}
]
}
List of all strategies on controller
Accepts the following message:
[
{
"id": 1,
"typeId": 1,
"type": {
"id": 1,
"name": "Solar power plant production management",
"enumeration": "UMBRELLA"
},
"name": "Limit solar power plant grid export",
"persistSchedule": "*/5 * * * *",
"priority": 100,
"active": true,
"isDefault": true,
"dataTypes": [
{
"id": 0,
"name": "Solar plant - export active power",
"unit": "W",
"valueType": "FLOAT",
"measurementType": "PERIODIC",
"extType": "NORMAL",
"enumeration": "CURRENT_L1",
"parameter": false
}
],
"devices": [
{
"id": 1,
"deviceId": 1,
"categoryId": 1,
"energyLocationId": 1
}
]
}
]
Information about strategies on controller
Accepts the following message:
{
"id": 1,
"typeId": 1,
"type": {
"id": 1,
"name": "Solar power plant production management",
"enumeration": "UMBRELLA"
},
"name": "Limit solar power plant grid export",
"persistSchedule": "*/5 * * * *",
"priority": 100,
"active": true,
"isDefault": true,
"dataTypes": [
{
"id": 0,
"name": "Solar plant - export active power",
"unit": "W",
"valueType": "FLOAT",
"measurementType": "PERIODIC",
"extType": "NORMAL",
"enumeration": "CURRENT_L1",
"parameter": false
}
],
"devices": [
{
"id": 1,
"deviceId": 1,
"categoryId": 1,
"energyLocationId": 1
}
]
}
Readout of measurements from strategy
Accepts the following message:
{
"time": "1674129782728",
"values": [
{
"strategyId": 0,
"dataTypeId": 0,
"dataTypeEnum": "MAIN_CURRENT_L1",
"time": "1674129782728",
"value": 0
}
]
}
Parameters for strategy
Accepts the following message:
Set value for strategy parameter
Accepts the following message:
Parameters for strategy
Accepts the following message:
{
"id": 0,
"name": "Solar plant - export active power",
"unit": "W",
"valueType": "FLOAT",
"measurementType": "PERIODIC",
"extType": "NORMAL",
"enumeration": "CURRENT_L1",
"parameter": false
}
Status of strategy (active/inactive)
Accepts the following message:
true
false
Status of strategy (active/inactive)
Accepts the following message:
true
false
External EMS settings
Accepts the following message:
{
"schedule": [
{
"start": "1674129782728",
"end": "1674129782728",
"value": "1000 for 1 kW charge power active setpoint, -1000 for 1 kW discharge power active setpoint, OFF/REDUCE_1/ON/BOOST_1 for HVAC setpoint"
}
]
}
Refresh external EMS settings
Accepts the following message:
Set external EMS settings
Accepts the following message:
{
"schedule": [
{
"start": "1674129782728",
"end": "1674129782728",
"value": "1000 for 1 kW charge power active setpoint, -1000 for 1 kW discharge power active setpoint, OFF/REDUCE_1/ON/BOOST_1 for HVAC setpoint"
}
]
}
Unix timestamp in milliseconds
Device category: 1 - Electricity meter 2 - Solar power plant 3 - EV charger 4 - Battery 5 - HVAC/Heat pump 6 - Other 7 - Hybrid inverter 8 - Emulator
Strategy type enumeration: UNKNOWN - Unknown type LIMIT_DYNAMIC - Dynamic limit LIMIT_STATIC - Static limit LIMIT_SOLAR - Solar limit BATTERY - Battery DISCRETE_POWER - Discrete power DISCRETE_CURRENT_PHASE_1 - Discrete current phase 1 DISCRETE_CURRENT_PHASE_3 - Discrete current phase 3 UMBRELLA - Umbrella