Publish
Optionally configure the active limits to be published to an external system.
REST API/OpenAPI
The active limits (and other metrics and configurations) can be accessed from the http://<host>:3000/coordinator/status "coordinator status" REST API.
You can access the API documentation/OpenAPI schema at http://<host>:3000/docs. The server port can be configured in the .env SERVER_PORT.
MQTT
Write active limits and CSIP-AUS data to MQTT topics. Published MQTT messages are not retained. Each update is published even if the payload has not changed.
To configure a MQTT output, add the following property to config.json
{
"publish": {
"mqtt": {
"host": "mqtt://192.168.1.2", // (string) required: the MQTT broker host
"username": "user", // (string) optional: the MQTT broker username
"password": "password", // (string) optional: the MQTT broker password
"topic": "limits", // (string) required: the MQTT topic to write active limits to
"csipAus": "limits/csipAus" // (string) optional: the MQTT base topic to write CSIP-AUS data to
}
}
...
}The active limits MQTT topic will contain a JSON message that meets the following schema
{
// Active inverter control limits currently in effect.
//
// Each field is either:
// - undefined (no active control / not currently applied), OR
// - an object { value: <boolean|number>, source: <InverterControlTypes> }
//
// InverterControlTypes:
// "fixed" | "mqtt" | "csipAus" | "twoWayTariff" | "negativeFeedIn" | "batteryChargeBuffer"
// Energize / enable inverter operation.
"opModEnergize": {
"value": true,
"source": "csipAus",
},
// Connect/disconnect inverter to/from grid (or enable grid connection mode).
"opModConnect": {
"value": true,
"source": "fixed",
},
// Generation limit in watts (W).
"opModGenLimW": {
"value": 5000,
"source": "twoWayTariff",
},
// Export limit in watts (W).
"opModExpLimW": {
"value": 0,
"source": "negativeFeedIn",
},
// Import limit in watts (W).
"opModImpLimW": undefined,
// Load limit in watts (W).
"opModLoadLimW": {
"value": 3000,
"source": "batteryChargeBuffer",
},
}The CSIP-AUS base topic defaults to <topic>/csipAus. It contains a JSON message with the current CSIP-AUS inverter control limit, DERSettings setGradW value, and latest scheduled controls:
{
"limit": {
"source": "csipAus",
"opModEnergize": true,
"opModConnect": true,
"opModGenLimW": 5000,
"opModExpLimW": 5000,
"opModImpLimW": undefined,
"opModLoadLimW": undefined,
},
// DERSettings setGradW in hundredths of a percent per second.
// 28 means a 0.28% per second active power ramp rate.
"setGradW": 28,
"schedules": {
"opModExpLimW": [
{
"startInclusive": "2026-01-01T00:00:00.000Z",
"endExclusive": "2026-01-01T01:00:00.000Z",
"effectiveStartInclusive": "2026-01-01T00:00:00.000Z",
"effectiveEndExclusive": "2026-01-01T01:00:00.000Z",
"randomizeStart": undefined,
"randomizeDuration": undefined,
"mRID": "control-1",
"derControlBase": {
"opModExpLimW": {
"value": 5000,
"multiplier": 0,
},
},
"responseRequired": "00",
"replyToHref": "/edev/1/rsps",
},
],
"opModGenLimW": [],
"opModImpLimW": [],
"opModLoadLimW": [],
"opModEnergize": [],
"opModConnect": [],
},
}