PV Excess Charging Configuration
power_manager/config
Power Manager configuration
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
curl http://$HOST/power_manager/config -d '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
With MQTT on $PREFIX/power_manager/config_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/config_update -m '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
| Name | Description |
|---|---|
enabledbool | Obsolete. Indicates whether the Power Manager is enabled. This value is automatically overwritten depending on whether PV excess charging or dynamic load management is enabled. |
default_modeint | The charge mode used after a Power Manager restart
|
excess_charging_enablebool | If enabled, the Power Manager controls the consumers it manages based on the excess of an existing photovoltaic system. If disabled, the maximum power is allowed while complying with the maximum current capacity of the supply lines. |
phase_switching_modeint |
|
target_power_from_gridint (W) | Target grid power for excess control. Specifies the desired grid consumption (positive values) or grid feed-in (negative values) in PV charging mode. This can also influence the priority relative to a battery storage system. |
guaranteed_powerint (W) | Minimum charging power used for Min + PV charging mode. This power is (partially) drawn from the grid when PV excess is insufficient. |
cloud_filter_modeint | Cloud filter mode to avoid overreactions to short-term changes in cloud cover in PV charging mode.
|
meter_slot_grid_powerint | Specifies which electricity meter is considered the grid connection meter for control. |
meter_slot_battery_powerint | Specifies which electricity meter is considered the battery storage meter for control. |
battery_modeint | Storage priority relative to chargers
|
battery_invertedbool | Inverts the sign of storage power for battery storage systems that report negative power values when charging and positive values when discharging. |
battery_deadzoneint | Grid consumption and feed-in tolerance at the grid connection while storage is active. For battery storage systems that allow a certain amount of consumption and feed-in during discharging or charging. The tolerance should be set to 1.5 times the expected consumption and feed-in. |
power_manager/dynamic_load_config
Dynamic load management configuration
| Name | Description |
|---|---|
enabledbool | Enables dynamic load management. |
meter_slot_grid_currentsint | Specifies which electricity meter is considered the grid connection meter for control. |
current_limitint | Maximum desired current at the grid connection in milliamperes. This is typically the rated value of the fuse. |
largest_consumer_currentint | Current demand of the largest individual consumer per phase in milliamperes, excluding controlled chargers. |
safety_margin_pctint | Additional safety margin in percent, relative to the maximum current at the grid connection. |
power_manager/state
Power Manager state
| Name | Description |
|---|---|
config_error_flagsint | Active configuration errors of the Power Manager. This is a bitmask, so any combination of configuration errors can occur.
|
external_controlint | Status of external control for phase switching.
|
power_manager/low_level_state
The internal state of the Power Manager. Used for displaying debug information. Changes to this object are not considered an API breaking change!
{
"power_at_meter": -4067.817383,
"power_at_meter_filtered": -4909,
"power_available": 3680,
"power_available_filtered": 3680,
"overall_min_power": 1380,
"threshold_3to1": 3795,
"threshold_1to3": 4025,
"charge_manager_available_current": 16000,
"charge_manager_allocated_current": 16000,
"max_current_limited": 16000,
"uptime_past_hysteresis": true,
"is_3phase": false,
"wants_3phase": false,
"wants_3phase_last": false,
"is_on_last": true,
"wants_on_last": true,
"phase_state_change_blocked": false,
"phase_state_change_delay": 0,
"on_state_change_blocked": true,
"on_state_change_delay": 194264,
"charging_blocked": 0,
"switching_state": 0
}
power_manager/charge_mode
Currently used charge mode.
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/power_manager/charge_mode
{ "mode": 2 }
Write
curl http://$HOST/power_manager/charge_mode -d '{ "mode": 2 }'
or abbreviated:
curl http://$HOST/power_manager/charge_mode -d '2'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/charge_mode
{ "mode": 2 }
Write
With MQTT on $PREFIX/power_manager/charge_mode_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '{ "mode": 2 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '2'
| Name | Description |
|---|---|
modeint |
|
power_manager/external_control
Phase request for external control. Can be written when external_control in power_manager/state is 0.
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/power_manager/external_control
{ "phases_wanted": 1 }
Write
curl http://$HOST/power_manager/external_control -d '{ "phases_wanted": 1 }'
or abbreviated:
curl http://$HOST/power_manager/external_control -d '1'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/external_control
{ "phases_wanted": 1 }
Write
With MQTT on $PREFIX/power_manager/external_control_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '{ "phases_wanted": 1 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '1'
| Name | Description |
|---|---|
phases_wantedint |
|
power_manager/config
Power Manager configuration
# $HOST e.g. warp2-AbCd
Read
curl http://$HOST/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
curl http://$HOST/power_manager/config -d '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
With MQTT on $PREFIX/power_manager/config_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/config_update -m '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
| Name | Description |
|---|---|
enabledbool | Obsolete. Indicates whether the Power Manager is enabled. This value is automatically overwritten depending on whether PV excess charging or dynamic load management is enabled. |
default_modeint | The charge mode used after a Power Manager restart
|
excess_charging_enablebool | If enabled, the Power Manager controls the consumers it manages based on the excess of an existing photovoltaic system. If disabled, the maximum power is allowed while complying with the maximum current capacity of the supply lines. |
phase_switching_modeint |
|
target_power_from_gridint (W) | Target grid power for excess control. Specifies the desired grid consumption (positive values) or grid feed-in (negative values) in PV charging mode. This can also influence the priority relative to a battery storage system. |
guaranteed_powerint (W) | Minimum charging power used for Min + PV charging mode. This power is (partially) drawn from the grid when PV excess is insufficient. |
cloud_filter_modeint | Cloud filter mode to avoid overreactions to short-term changes in cloud cover in PV charging mode.
|
meter_slot_grid_powerint | Specifies which electricity meter is considered the grid connection meter for control. |
meter_slot_battery_powerint | Specifies which electricity meter is considered the battery storage meter for control. |
battery_modeint | Storage priority relative to chargers
|
battery_invertedbool | Inverts the sign of storage power for battery storage systems that report negative power values when charging and positive values when discharging. |
battery_deadzoneint | Grid consumption and feed-in tolerance at the grid connection while storage is active. For battery storage systems that allow a certain amount of consumption and feed-in during discharging or charging. The tolerance should be set to 1.5 times the expected consumption and feed-in. |
power_manager/dynamic_load_config
Dynamic load management configuration
| Name | Description |
|---|---|
enabledbool | Enables dynamic load management. |
meter_slot_grid_currentsint | Specifies which electricity meter is considered the grid connection meter for control. |
current_limitint | Maximum desired current at the grid connection in milliamperes. This is typically the rated value of the fuse. |
largest_consumer_currentint | Current demand of the largest individual consumer per phase in milliamperes, excluding controlled chargers. |
safety_margin_pctint | Additional safety margin in percent, relative to the maximum current at the grid connection. |
power_manager/state
Power Manager state
| Name | Description |
|---|---|
config_error_flagsint | Active configuration errors of the Power Manager. This is a bitmask, so any combination of configuration errors can occur.
|
external_controlint | Status of external control for phase switching.
|
power_manager/low_level_state
The internal state of the Power Manager. Used for displaying debug information. Changes to this object are not considered an API breaking change!
{
"power_at_meter": -4067.817383,
"power_at_meter_filtered": -4909,
"power_available": 3680,
"power_available_filtered": 3680,
"overall_min_power": 1380,
"threshold_3to1": 3795,
"threshold_1to3": 4025,
"charge_manager_available_current": 16000,
"charge_manager_allocated_current": 16000,
"max_current_limited": 16000,
"uptime_past_hysteresis": true,
"is_3phase": false,
"wants_3phase": false,
"wants_3phase_last": false,
"is_on_last": true,
"wants_on_last": true,
"phase_state_change_blocked": false,
"phase_state_change_delay": 0,
"on_state_change_blocked": true,
"on_state_change_delay": 194264,
"charging_blocked": 0,
"switching_state": 0
}
power_manager/charge_mode
Currently used charge mode.
# $HOST e.g. warp2-AbCd
Read
curl http://$HOST/power_manager/charge_mode
{ "mode": 2 }
Write
curl http://$HOST/power_manager/charge_mode -d '{ "mode": 2 }'
or abbreviated:
curl http://$HOST/power_manager/charge_mode -d '2'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/charge_mode
{ "mode": 2 }
Write
With MQTT on $PREFIX/power_manager/charge_mode_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '{ "mode": 2 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '2'
| Name | Description |
|---|---|
modeint |
|
power_manager/external_control
Phase request for external control. Can be written when external_control in power_manager/state is 0.
# $HOST e.g. warp2-AbCd
Read
curl http://$HOST/power_manager/external_control
{ "phases_wanted": 1 }
Write
curl http://$HOST/power_manager/external_control -d '{ "phases_wanted": 1 }'
or abbreviated:
curl http://$HOST/power_manager/external_control -d '1'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/external_control
{ "phases_wanted": 1 }
Write
With MQTT on $PREFIX/power_manager/external_control_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '{ "phases_wanted": 1 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '1'
| Name | Description |
|---|---|
phases_wantedint |
|
power_manager/config
Power Manager configuration
# $HOST e.g. warp3-AbCd
Read
curl http://$HOST/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
curl http://$HOST/power_manager/config -d '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp3/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
With MQTT on $PREFIX/power_manager/config_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/config_update -m '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
| Name | Description |
|---|---|
enabledbool | Obsolete. Indicates whether the Power Manager is enabled. This value is automatically overwritten depending on whether PV excess charging or dynamic load management is enabled. |
default_modeint | The charge mode used after a Power Manager restart
|
excess_charging_enablebool | If enabled, the Power Manager controls the consumers it manages based on the excess of an existing photovoltaic system. If disabled, the maximum power is allowed while complying with the maximum current capacity of the supply lines. |
phase_switching_modeint |
|
target_power_from_gridint (W) | Target grid power for excess control. Specifies the desired grid consumption (positive values) or grid feed-in (negative values) in PV charging mode. This can also influence the priority relative to a battery storage system. |
guaranteed_powerint (W) | Minimum charging power used for Min + PV charging mode. This power is (partially) drawn from the grid when PV excess is insufficient. |
cloud_filter_modeint | Cloud filter mode to avoid overreactions to short-term changes in cloud cover in PV charging mode.
|
meter_slot_grid_powerint | Specifies which electricity meter is considered the grid connection meter for control. |
meter_slot_battery_powerint | Specifies which electricity meter is considered the battery storage meter for control. |
battery_modeint | Storage priority relative to chargers
|
battery_invertedbool | Inverts the sign of storage power for battery storage systems that report negative power values when charging and positive values when discharging. |
battery_deadzoneint | Grid consumption and feed-in tolerance at the grid connection while storage is active. For battery storage systems that allow a certain amount of consumption and feed-in during discharging or charging. The tolerance should be set to 1.5 times the expected consumption and feed-in. |
power_manager/dynamic_load_config
Dynamic load management configuration
| Name | Description |
|---|---|
enabledbool | Enables dynamic load management. |
meter_slot_grid_currentsint | Specifies which electricity meter is considered the grid connection meter for control. |
current_limitint | Maximum desired current at the grid connection in milliamperes. This is typically the rated value of the fuse. |
largest_consumer_currentint | Current demand of the largest individual consumer per phase in milliamperes, excluding controlled chargers. |
safety_margin_pctint | Additional safety margin in percent, relative to the maximum current at the grid connection. |
power_manager/state
Power Manager state
| Name | Description |
|---|---|
config_error_flagsint | Active configuration errors of the Power Manager. This is a bitmask, so any combination of configuration errors can occur.
|
external_controlint | Status of external control for phase switching.
|
power_manager/low_level_state
The internal state of the Power Manager. Used for displaying debug information. Changes to this object are not considered an API breaking change!
{
"power_at_meter": -4067.817383,
"power_at_meter_filtered": -4909,
"power_available": 3680,
"power_available_filtered": 3680,
"overall_min_power": 1380,
"threshold_3to1": 3795,
"threshold_1to3": 4025,
"charge_manager_available_current": 16000,
"charge_manager_allocated_current": 16000,
"max_current_limited": 16000,
"uptime_past_hysteresis": true,
"is_3phase": false,
"wants_3phase": false,
"wants_3phase_last": false,
"is_on_last": true,
"wants_on_last": true,
"phase_state_change_blocked": false,
"phase_state_change_delay": 0,
"on_state_change_blocked": true,
"on_state_change_delay": 194264,
"charging_blocked": 0,
"switching_state": 0
}
power_manager/charge_mode
Currently used charge mode.
# $HOST e.g. warp3-AbCd
Read
curl http://$HOST/power_manager/charge_mode
{ "mode": 2 }
Write
curl http://$HOST/power_manager/charge_mode -d '{ "mode": 2 }'
or abbreviated:
curl http://$HOST/power_manager/charge_mode -d '2'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp3/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/charge_mode
{ "mode": 2 }
Write
With MQTT on $PREFIX/power_manager/charge_mode_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '{ "mode": 2 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '2'
| Name | Description |
|---|---|
modeint |
|
power_manager/external_control
Phase request for external control. Can be written when external_control in power_manager/state is 0.
# $HOST e.g. warp3-AbCd
Read
curl http://$HOST/power_manager/external_control
{ "phases_wanted": 1 }
Write
curl http://$HOST/power_manager/external_control -d '{ "phases_wanted": 1 }'
or abbreviated:
curl http://$HOST/power_manager/external_control -d '1'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp3/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/external_control
{ "phases_wanted": 1 }
Write
With MQTT on $PREFIX/power_manager/external_control_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '{ "phases_wanted": 1 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '1'
| Name | Description |
|---|---|
phases_wantedint |
|
power_manager/config
Power Manager configuration
# $HOST e.g. wem-AbCd
Read
curl http://$HOST/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
curl http://$HOST/power_manager/config -d '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
With MQTT on $PREFIX/power_manager/config_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/config_update -m '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
| Name | Description |
|---|---|
enabledbool | Obsolete. Indicates whether the Power Manager is enabled. This value is automatically overwritten depending on whether PV excess charging or dynamic load management is enabled. |
default_modeint | The charge mode used after a Power Manager restart
|
excess_charging_enablebool | If enabled, the Power Manager controls the consumers it manages based on the excess of an existing photovoltaic system. If disabled, the maximum power is allowed while complying with the maximum current capacity of the supply lines. |
phase_switching_modeint |
|
target_power_from_gridint (W) | Target grid power for excess control. Specifies the desired grid consumption (positive values) or grid feed-in (negative values) in PV charging mode. This can also influence the priority relative to a battery storage system. |
guaranteed_powerint (W) | Minimum charging power used for Min + PV charging mode. This power is (partially) drawn from the grid when PV excess is insufficient. |
cloud_filter_modeint | Cloud filter mode to avoid overreactions to short-term changes in cloud cover in PV charging mode.
|
meter_slot_grid_powerint | Specifies which electricity meter is considered the grid connection meter for control. |
meter_slot_battery_powerint | Specifies which electricity meter is considered the battery storage meter for control. |
battery_modeint | Storage priority relative to chargers
|
battery_invertedbool | Inverts the sign of storage power for battery storage systems that report negative power values when charging and positive values when discharging. |
battery_deadzoneint | Grid consumption and feed-in tolerance at the grid connection while storage is active. For battery storage systems that allow a certain amount of consumption and feed-in during discharging or charging. The tolerance should be set to 1.5 times the expected consumption and feed-in. |
power_manager/dynamic_load_config
Dynamic load management configuration
| Name | Description |
|---|---|
enabledbool | Enables dynamic load management. |
meter_slot_grid_currentsint | Specifies which electricity meter is considered the grid connection meter for control. |
current_limitint | Maximum desired current at the grid connection in milliamperes. This is typically the rated value of the fuse. |
largest_consumer_currentint | Current demand of the largest individual consumer per phase in milliamperes, excluding controlled chargers. |
safety_margin_pctint | Additional safety margin in percent, relative to the maximum current at the grid connection. |
power_manager/state
Power Manager state
| Name | Description |
|---|---|
config_error_flagsint | Active configuration errors of the Power Manager. This is a bitmask, so any combination of configuration errors can occur.
|
external_controlint | Status of external control for phase switching.
|
power_manager/low_level_state
The internal state of the Power Manager. Used for displaying debug information. Changes to this object are not considered an API breaking change!
{
"power_at_meter": -4067.817383,
"power_at_meter_filtered": -4909,
"power_available": 3680,
"power_available_filtered": 3680,
"overall_min_power": 1380,
"threshold_3to1": 3795,
"threshold_1to3": 4025,
"charge_manager_available_current": 16000,
"charge_manager_allocated_current": 16000,
"max_current_limited": 16000,
"uptime_past_hysteresis": true,
"is_3phase": false,
"wants_3phase": false,
"wants_3phase_last": false,
"is_on_last": true,
"wants_on_last": true,
"phase_state_change_blocked": false,
"phase_state_change_delay": 0,
"on_state_change_blocked": true,
"on_state_change_delay": 194264,
"charging_blocked": 0,
"switching_state": 0
}
power_manager/charge_mode
Currently used charge mode.
# $HOST e.g. wem-AbCd
Read
curl http://$HOST/power_manager/charge_mode
{ "mode": 2 }
Write
curl http://$HOST/power_manager/charge_mode -d '{ "mode": 2 }'
or abbreviated:
curl http://$HOST/power_manager/charge_mode -d '2'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/charge_mode
{ "mode": 2 }
Write
With MQTT on $PREFIX/power_manager/charge_mode_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '{ "mode": 2 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '2'
| Name | Description |
|---|---|
modeint |
|
power_manager/external_control
Phase request for external control. Can be written when external_control in power_manager/state is 0.
# $HOST e.g. wem-AbCd
Read
curl http://$HOST/power_manager/external_control
{ "phases_wanted": 1 }
Write
curl http://$HOST/power_manager/external_control -d '{ "phases_wanted": 1 }'
or abbreviated:
curl http://$HOST/power_manager/external_control -d '1'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/external_control
{ "phases_wanted": 1 }
Write
With MQTT on $PREFIX/power_manager/external_control_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '{ "phases_wanted": 1 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '1'
| Name | Description |
|---|---|
phases_wantedint |
|
power_manager/config
Power Manager configuration
# $HOST e.g. wem2-AbCd
Read
curl http://$HOST/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
curl http://$HOST/power_manager/config -d '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
With MQTT on $PREFIX/power_manager/config_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/config_update -m '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
| Name | Description |
|---|---|
enabledbool | Obsolete. Indicates whether the Power Manager is enabled. This value is automatically overwritten depending on whether PV excess charging or dynamic load management is enabled. |
default_modeint | The charge mode used after a Power Manager restart
|
excess_charging_enablebool | If enabled, the Power Manager controls the consumers it manages based on the excess of an existing photovoltaic system. If disabled, the maximum power is allowed while complying with the maximum current capacity of the supply lines. |
phase_switching_modeint |
|
target_power_from_gridint (W) | Target grid power for excess control. Specifies the desired grid consumption (positive values) or grid feed-in (negative values) in PV charging mode. This can also influence the priority relative to a battery storage system. |
guaranteed_powerint (W) | Minimum charging power used for Min + PV charging mode. This power is (partially) drawn from the grid when PV excess is insufficient. |
cloud_filter_modeint | Cloud filter mode to avoid overreactions to short-term changes in cloud cover in PV charging mode.
|
meter_slot_grid_powerint | Specifies which electricity meter is considered the grid connection meter for control. |
meter_slot_battery_powerint | Specifies which electricity meter is considered the battery storage meter for control. |
battery_modeint | Storage priority relative to chargers
|
battery_invertedbool | Inverts the sign of storage power for battery storage systems that report negative power values when charging and positive values when discharging. |
battery_deadzoneint | Grid consumption and feed-in tolerance at the grid connection while storage is active. For battery storage systems that allow a certain amount of consumption and feed-in during discharging or charging. The tolerance should be set to 1.5 times the expected consumption and feed-in. |
power_manager/dynamic_load_config
Dynamic load management configuration
| Name | Description |
|---|---|
enabledbool | Enables dynamic load management. |
meter_slot_grid_currentsint | Specifies which electricity meter is considered the grid connection meter for control. |
current_limitint | Maximum desired current at the grid connection in milliamperes. This is typically the rated value of the fuse. |
largest_consumer_currentint | Current demand of the largest individual consumer per phase in milliamperes, excluding controlled chargers. |
safety_margin_pctint | Additional safety margin in percent, relative to the maximum current at the grid connection. |
power_manager/state
Power Manager state
| Name | Description |
|---|---|
config_error_flagsint | Active configuration errors of the Power Manager. This is a bitmask, so any combination of configuration errors can occur.
|
external_controlint | Status of external control for phase switching.
|
power_manager/low_level_state
The internal state of the Power Manager. Used for displaying debug information. Changes to this object are not considered an API breaking change!
{
"power_at_meter": -4067.817383,
"power_at_meter_filtered": -4909,
"power_available": 3680,
"power_available_filtered": 3680,
"overall_min_power": 1380,
"threshold_3to1": 3795,
"threshold_1to3": 4025,
"charge_manager_available_current": 16000,
"charge_manager_allocated_current": 16000,
"max_current_limited": 16000,
"uptime_past_hysteresis": true,
"is_3phase": false,
"wants_3phase": false,
"wants_3phase_last": false,
"is_on_last": true,
"wants_on_last": true,
"phase_state_change_blocked": false,
"phase_state_change_delay": 0,
"on_state_change_blocked": true,
"on_state_change_delay": 194264,
"charging_blocked": 0,
"switching_state": 0
}
power_manager/charge_mode
Currently used charge mode.
# $HOST e.g. wem2-AbCd
Read
curl http://$HOST/power_manager/charge_mode
{ "mode": 2 }
Write
curl http://$HOST/power_manager/charge_mode -d '{ "mode": 2 }'
or abbreviated:
curl http://$HOST/power_manager/charge_mode -d '2'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/charge_mode
{ "mode": 2 }
Write
With MQTT on $PREFIX/power_manager/charge_mode_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '{ "mode": 2 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '2'
| Name | Description |
|---|---|
modeint |
|
power_manager/external_control
Phase request for external control. Can be written when external_control in power_manager/state is 0.
# $HOST e.g. wem2-AbCd
Read
curl http://$HOST/power_manager/external_control
{ "phases_wanted": 1 }
Write
curl http://$HOST/power_manager/external_control -d '{ "phases_wanted": 1 }'
or abbreviated:
curl http://$HOST/power_manager/external_control -d '1'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/external_control
{ "phases_wanted": 1 }
Write
With MQTT on $PREFIX/power_manager/external_control_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '{ "phases_wanted": 1 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '1'
| Name | Description |
|---|---|
phases_wantedint |
|
power_manager/config
Power Manager configuration
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
curl http://$HOST/power_manager/config -d '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/config
{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}
Write
With MQTT on $PREFIX/power_manager/config_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/config_update -m '{
"enabled": true,
"phase_switching_mode": 1,
"excess_charging_enable": true,
"default_mode": 0,
"meter_slot_grid_power": 3,
"target_power_from_grid": 0,
"guaranteed_power": 1380,
"cloud_filter_mode": 2
}'
| Name | Description |
|---|---|
enabledbool | Obsolete. Indicates whether the Power Manager is enabled. This value is automatically overwritten depending on whether PV excess charging or dynamic load management is enabled. |
default_modeint | The charge mode used after a Power Manager restart
|
excess_charging_enablebool | If enabled, the Power Manager controls the consumers it manages based on the excess of an existing photovoltaic system. If disabled, the maximum power is allowed while complying with the maximum current capacity of the supply lines. |
phase_switching_modeint |
|
target_power_from_gridint (W) | Target grid power for excess control. Specifies the desired grid consumption (positive values) or grid feed-in (negative values) in PV charging mode. This can also influence the priority relative to a battery storage system. |
guaranteed_powerint (W) | Minimum charging power used for Min + PV charging mode. This power is (partially) drawn from the grid when PV excess is insufficient. |
cloud_filter_modeint | Cloud filter mode to avoid overreactions to short-term changes in cloud cover in PV charging mode.
|
meter_slot_grid_powerint | Specifies which electricity meter is considered the grid connection meter for control. |
meter_slot_battery_powerint | Specifies which electricity meter is considered the battery storage meter for control. |
battery_modeint | Storage priority relative to chargers
|
battery_invertedbool | Inverts the sign of storage power for battery storage systems that report negative power values when charging and positive values when discharging. |
battery_deadzoneint | Grid consumption and feed-in tolerance at the grid connection while storage is active. For battery storage systems that allow a certain amount of consumption and feed-in during discharging or charging. The tolerance should be set to 1.5 times the expected consumption and feed-in. |
power_manager/dynamic_load_config
Dynamic load management configuration
| Name | Description |
|---|---|
enabledbool | Enables dynamic load management. |
meter_slot_grid_currentsint | Specifies which electricity meter is considered the grid connection meter for control. |
current_limitint | Maximum desired current at the grid connection in milliamperes. This is typically the rated value of the fuse. |
largest_consumer_currentint | Current demand of the largest individual consumer per phase in milliamperes, excluding controlled chargers. |
safety_margin_pctint | Additional safety margin in percent, relative to the maximum current at the grid connection. |
power_manager/state
Power Manager state
| Name | Description |
|---|---|
config_error_flagsint | Active configuration errors of the Power Manager. This is a bitmask, so any combination of configuration errors can occur.
|
external_controlint | Status of external control for phase switching.
|
power_manager/low_level_state
The internal state of the Power Manager. Used for displaying debug information. Changes to this object are not considered an API breaking change!
{
"power_at_meter": -4067.817383,
"power_at_meter_filtered": -4909,
"power_available": 3680,
"power_available_filtered": 3680,
"overall_min_power": 1380,
"threshold_3to1": 3795,
"threshold_1to3": 4025,
"charge_manager_available_current": 16000,
"charge_manager_allocated_current": 16000,
"max_current_limited": 16000,
"uptime_past_hysteresis": true,
"is_3phase": false,
"wants_3phase": false,
"wants_3phase_last": false,
"is_on_last": true,
"wants_on_last": true,
"phase_state_change_blocked": false,
"phase_state_change_delay": 0,
"on_state_change_blocked": true,
"on_state_change_delay": 194264,
"charging_blocked": 0,
"switching_state": 0
}
power_manager/charge_mode
Currently used charge mode.
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/power_manager/charge_mode
{ "mode": 2 }
Write
curl http://$HOST/power_manager/charge_mode -d '{ "mode": 2 }'
or abbreviated:
curl http://$HOST/power_manager/charge_mode -d '2'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/charge_mode
{ "mode": 2 }
Write
With MQTT on $PREFIX/power_manager/charge_mode_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '{ "mode": 2 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/charge_mode_update -m '2'
| Name | Description |
|---|---|
modeint |
|
power_manager/external_control
Phase request for external control. Can be written when external_control in power_manager/state is 0.
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/power_manager/external_control
{ "phases_wanted": 1 }
Write
curl http://$HOST/power_manager/external_control -d '{ "phases_wanted": 1 }'
or abbreviated:
curl http://$HOST/power_manager/external_control -d '1'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/power_manager/external_control
{ "phases_wanted": 1 }
Write
With MQTT on $PREFIX/power_manager/external_control_update
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '{ "phases_wanted": 1 }'
or abbreviated:
mosquitto_pub -h $BROKER -t $PREFIX/power_manager/external_control_update -m '1'
| Name | Description |
|---|---|
phases_wantedint |
|