Skip to main content

Heat circuit

Endpoint group client.heat_circuit (HeatCircuitEndpoints).

API Endpoints to send and retrieve the heat circuit data.

Example

client = KebaKeEnergyAPI(
host="ap4400.local",
username="test",
password="test",
ssl=True,
skip_ssl_verification=True
)
await client.heat_circuit.get_name()

get_name​

async def get_name(position: int = 1) -> str

Get the heat circuit name.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • str: Heat circuit name

get_mode​

async def get_mode(position: int = 1, *, human_readable: bool = True) -> int | str

Get the mode from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (HEATING) / 1 (COOLING) / 2 (HEATING_AND_COOLING) / 3 (HEATING_AND_ACTIVE_COOLING)

has_room_temperature​

async def has_room_temperature(position: int = 1, *, human_readable: bool = True) -> int | str

Check if room temperature from the heat circuit is available.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_room_temperature​

async def get_room_temperature(position: int = 1) -> float

Get the room temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

has_room_humidity​

async def has_room_humidity(position: int = 1, *, human_readable: bool = True) -> int | str

Check if room humidity from the heat circuit is available.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_room_humidity​

async def get_room_humidity(position: int = 1) -> float

Get the room humidity from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Humidity in percent

get_dew_point​

async def get_dew_point(position: int = 1) -> float

Get the dew point from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

get_flow_temperature_setpoint​

async def get_flow_temperature_setpoint(position: int = 1) -> float

Get the flow temperature setpoint from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

has_mixer​

async def has_mixer(position: int = 1, *, human_readable: bool = True) -> int | str

Check if heating circuit mixer is available.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_mixer_flow_temperature​

async def get_mixer_flow_temperature(position: int = 1) -> float

Get the mixer flow temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

get_mixer_return_flow_temperature​

async def get_mixer_return_flow_temperature(position: int = 1) -> float

Get the mixer return flow temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

get_mixer_position​

async def get_mixer_position(position: int = 1, *, human_readable: bool = True) -> int | str

Get the mixer position.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: -1 (CLOSED) / 0 (OFF) / 1 (OPEN)

get_pump_state​

async def get_pump_state(position: int = 1, *, human_readable: bool = True) -> int | str

Get the pump state.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

has_return_flow_temperature​

async def has_return_flow_temperature(
position: int = 1,
*,
human_readable: bool = True,
) -> int | str

Check if the return flow temperature sensor is available.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_return_flow_temperature​

async def get_return_flow_temperature(position: int = 1) -> float

Get the return flow temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

get_target_temperature​

async def get_target_temperature(position: int = 1) -> float

Get the target temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

get_use_excess_energy​

async def get_use_excess_energy(position: int = 1, *, human_readable: bool = True) -> int | str

Get the use excess energy state.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: (0) OFF / (1) ON

set_use_excess_energy​

async def set_use_excess_energy(mode: int | str, position: int = 1) -> None

Set the use excess energy.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • mode int | str: Set the mode as integer or string (human-readable) e.g. 0 or OFF
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_mode​

async def get_excess_energy_mode(position: int = 1, *, human_readable: bool = True) -> int | str

Get the excess energy mode.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: (0) OFF / (1) HEATING / (2) COOLING

get_excess_energy_target_temperature​

async def get_excess_energy_target_temperature(position: int = 1) -> float

Get the excess energy target temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_target_temperature​

async def set_excess_energy_target_temperature(temperature: float, position: int = 1) -> None

Set the excess energy target temperature from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy target temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_target_temperature_hysteresis​

async def get_excess_energy_target_temperature_hysteresis(position: int = 1) -> float

Get the excess energy target temperature hysteresis from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_target_temperature_hysteresis​

async def set_excess_energy_target_temperature_hysteresis(
temperature: float,
position: int = 1,
) -> None

Set the excess energy target temperature hysteresis from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy target temperature in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_target_cooling_temperature​

async def get_excess_energy_target_cooling_temperature(position: int = 1) -> float

Get the excess energy target cooling temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_target_cooling_temperature​

async def set_excess_energy_target_cooling_temperature(
temperature: float,
position: int = 1,
) -> None

Set the excess energy target cooling temperature from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy target cooling temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_target_cooling_temperature_hysteresis​

async def get_excess_energy_target_cooling_temperature_hysteresis(position: int = 1) -> float

Get the excess energy target cooling temperature hysteresis from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_target_cooling_temperature_hysteresis​

async def set_excess_energy_target_cooling_temperature_hysteresis(
temperature: float,
position: int = 1,
) -> None

Set the excess energy target cooling temperature hysteresis from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy target cooling temperature in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_selected_target_temperature​

async def get_selected_target_temperature(position: int = 1) -> float

Get the selected target temperature from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

get_target_temperature_day​

async def get_target_temperature_day(position: int = 1) -> float

Get the target temperature for the day from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_target_temperature_day​

async def set_target_temperature_day(temperature: float, position: int = 1) -> None

Set the target temperature for the day from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The target temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_target_cooling_temperature_day​

async def get_target_cooling_temperature_day(position: int = 1) -> float

Get the target cooling temperature for the day from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_target_cooling_temperature_day​

async def set_target_cooling_temperature_day(temperature: float, position: int = 1) -> None

Set the target cooling temperature for the day from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The target cooling temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heating_limit_day​

async def get_heating_limit_day(position: int = 1) -> float

Get the heating limit for the day from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_heating_limit_day​

async def set_heating_limit_day(temperature: float, position: int = 1) -> None

Set the heating limit for the day from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The heating limit temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_cooling_limit_day​

async def get_cooling_limit_day(position: int = 1) -> float

Get the cooling limit for the day from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_cooling_limit_day​

async def set_cooling_limit_day(temperature: float, position: int = 1) -> None

Set the cooling limit for the day from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The cooling limit temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_heating_limit_day​

async def get_excess_energy_heating_limit_day(position: int = 1) -> float

Get the excess energy heating limit for the day from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_heating_limit_day​

async def set_excess_energy_heating_limit_day(temperature: float, position: int = 1) -> None

Set the excess energy heating limit for the day from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy heating limit temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_cooling_limit_day​

async def get_excess_energy_cooling_limit_day(position: int = 1) -> float

Get the excess energy cooling limit for the day from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_cooling_limit_day​

async def set_excess_energy_cooling_limit_day(temperature: float, position: int = 1) -> None

Set the excess energy cooling limit for the day from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy cooling limit temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_target_temperature_night​

async def get_target_temperature_night(position: int = 1) -> float

Get the target temperature for the night from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_target_temperature_night​

async def set_target_temperature_night(temperature: float, position: int = 1) -> None

Set the target temperature for the night from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The target temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_target_cooling_temperature_night​

async def get_target_cooling_temperature_night(position: int = 1) -> float

Get the target cooling temperature for the night from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_target_cooling_temperature_night​

async def set_target_cooling_temperature_night(temperature: float, position: int = 1) -> None

Set the target cooling temperature for the night from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The target cooling temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heating_limit_night​

async def get_heating_limit_night(position: int = 1) -> float

Get the heating limit for the night from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_heating_limit_night​

async def set_heating_limit_night(temperature: float, position: int = 1) -> None

Set the heating limit for the night from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The heating limit temperature for the night in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_cooling_limit_night​

async def get_cooling_limit_night(position: int = 1) -> float

Get the cooling limit for the night from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_cooling_limit_night​

async def set_cooling_limit_night(temperature: float, position: int = 1) -> None

Set the cooling limit for the night from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The cooling limit temperature for the night in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_heating_limit_night​

async def get_excess_energy_heating_limit_night(position: int = 1) -> float

Get the excess energy heating limit for the night from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_heating_limit_night​

async def set_excess_energy_heating_limit_night(temperature: float, position: int = 1) -> None

Set the excess energy heating limit for the night from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy heating limit temperature for the night in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_excess_energy_cooling_limit_night​

async def get_excess_energy_cooling_limit_night(position: int = 1) -> float

Get the excess energy cooling limit for the night from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_excess_energy_cooling_limit_night​

async def set_excess_energy_cooling_limit_night(temperature: float, position: int = 1) -> None

Set the excess energy cooling limit for the night from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The excess energy cooling limit temperature for the night in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_target_temperature_away​

async def get_target_temperature_away(position: int = 1) -> float

Get the target temperature when away for the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_target_temperature_away​

async def set_target_temperature_away(temperature: float, position: int = 1) -> None

Set the target temperature when away for the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • temperature float: The target temperature for the day in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_target_temperature_offset​

async def get_target_temperature_offset(position: int = 1) -> float

Get the target temperature offset from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Temperature in °C

set_target_temperature_offset​

async def set_target_temperature_offset(offset: float, position: int = 1) -> None

Set the target temperature offset for the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • offset float: The target temperature offset
  • position int (default: 1): Position of the heating circuit, starting at 1

get_operating_mode​

async def get_operating_mode(position: int = 1, *, human_readable: bool = True) -> int | str

Get the operating mode from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (AUTO) / (2) DAY / (3) NIGHT / (4) HOLIDAY / (5) PARTY / (8) EXTERNAL / (9) ROOM_CONTROL

set_operating_mode​

async def set_operating_mode(mode: int | str, position: int = 1) -> None

Set the operating mode from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • mode int | str: Set the mode as integer or string (human-readable) e.g. 0 or OFF
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heat_request​

async def get_heat_request(position: int = 1, *, human_readable: bool = True) -> int | str

Get the heat request state from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_cool_request​

async def get_cool_request(position: int = 1, *, human_readable: bool = True) -> int | str

Get the cool request state from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_away_start_date​

async def get_away_start_date(position: int = 1) -> int

Get the away start date from the heating circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • int: Start date as unix timestamp

set_away_start_date​

async def set_away_start_date(timestamp: int, position: int = 1) -> None

Set the away start date from the heating circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • timestamp int: Start date as unix timestamp
  • position int (default: 1): Position of the heating circuit, starting at 1

get_away_end_date​

async def get_away_end_date(position: int = 1) -> int

Get the away end date from the heating circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • int: End date as unix timestamp

set_away_end_date​

async def set_away_end_date(timestamp: int, position: int = 1) -> None

Set the away end date from the heating circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • timestamp int: End date as unix timestamp
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heating_curve_offset​

async def get_heating_curve_offset(position: int = 1) -> float

Get the heating curve offset from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Offset in °C

set_heating_curve_offset​

async def set_heating_curve_offset(offset: float, position: int = 1) -> None

Set the heating curve offset from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • offset float: The offset in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_cooling_curve_offset​

async def get_cooling_curve_offset(position: int = 1) -> float

Get the cooling curve offset from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Offset in °C

set_cooling_curve_offset​

async def set_cooling_curve_offset(offset: float, position: int = 1) -> None

Set the cooling curve offset from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • offset float: The offset in °C
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heating_curve_slope​

async def get_heating_curve_slope(position: int = 1) -> float

Get the heating curve slope from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Slope

set_heating_curve_slope​

async def set_heating_curve_slope(slope: float, position: int = 1) -> None

Set the heating curve slope from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • slope float: The slope
  • position int (default: 1): Position of the heating circuit, starting at 1

get_cooling_curve_slope​

async def get_cooling_curve_slope(position: int = 1) -> float

Get the cooling curve slope from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Slope

set_cooling_curve_slope​

async def set_cooling_curve_slope(slope: float, position: int = 1) -> None

Set the cooling curve slope from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • slope float: The slope
  • position int (default: 1): Position of the heating circuit, starting at 1

get_use_heating_curve​

async def get_use_heating_curve(position: int = 1, *, human_readable: bool = True) -> int | str

Get the use heating curve from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: (0) OFF / (1) ON

set_use_heating_curve​

async def set_use_heating_curve(mode: int | str, position: int = 1) -> None

Set the use heating curve.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • mode int | str: Set the mode as integer or string (human-readable) e.g. 0 or OFF
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heating_curve​

async def get_heating_curve(position: int = 1) -> str

Get the heating curve from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • str: Name of the heating curve, e.g. HC1

set_heating_curve​

async def set_heating_curve(heating_curve: str, position: int = 1) -> None

Set the heating curve from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • heating_curve str: The heating curve name, e.g. HC1
  • position int (default: 1): Position of the heating circuit, starting at 1

get_cooling_curve​

async def get_cooling_curve(position: int = 1) -> str

Get the cooling curve from the heat circuit.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • str: Name of the cooling curve, e.g. HC1

set_cooling_curve​

async def set_cooling_curve(cooling_curve: str, position: int = 1) -> None

Set the cooling curve from the heat circuit.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • cooling_curve str: The cooling curve name, e.g. HC2
  • position int (default: 1): Position of the heating circuit, starting at 1

get_heating_curve_points​

async def get_heating_curve_points(heating_curve: str | None = None) -> HeatingCurves

Get the heating curve points.

Parameters

  • heating_curve str | None (default: None): The heating curve name

Returns

  • HeatingCurves: One or more heating curves and the points

set_heating_curve_points​

async def set_heating_curve_points(heating_curve: str, points: HeatingCurvePoints) -> None

Set the heating curve points.

Attention

Writing values should remain within normal limits, as is the case with typical use of the Web HMI. Permanent and very frequent writing of values reduces the lifetime of the built-in flash memory.

Parameters

  • heating_curve str: The heating curve name
  • points HeatingCurvePoints: Heating curve points

Raises

  • APIError: The heating curve is invalid.

get_available_heating_curves​

async def get_available_heating_curves() -> tuple[tuple[int, str], ...]

Get available heating curves.

Returns

  • tuple[tuple[int, str], ...]: Index and heating curve name pairs

has_pump​

async def has_pump(position: int = 1, *, human_readable: bool = True) -> int | str

Check if the heating circuit pump is available.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

has_var_speed_pump​

async def has_var_speed_pump(position: int = 1, *, human_readable: bool = True) -> int | str

Check if the heating circuit pump has a variable speed.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1
  • human_readable bool (default: True): Return a human-readable string

Returns

  • int | str: 0 (OFF) / 1 (ON)

get_pump_speed​

async def get_pump_speed(position: int = 1) -> float

Get pump speed.

Parameters

  • position int (default: 1): Position of the heating circuit, starting at 1

Returns

  • float: Pump speed as a fraction from 0 to 1 (1 = 100 %)
KEBAKEBALatest version on PyPI

An asynchronous Python client for the KEBA KeEnergy Web HMI, used by the Home Assistant integration.

A community project, not affiliated with or endorsed by KEBA. KEBA is a registered trademark of its owner.

Requires Python 3.11 or newer.

View source on GitHub
View known issues
Request a feature
View on PyPI
Changelog

Maintainer

@mh-superbox

On this page