Skip to main content

Heat pump

Endpoint group client.heat_pump (HeatPumpEndpoints).

API Endpoints to send and retrieve the heat pump data.

Example

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

get_name​

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

Get the heat pump name.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • str: Heat pump name

get_state​

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

Get the heat pump state.

Parameters

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

Returns

  • int | str: (0) STANDBY / (1) FLOW / (2) AUTO_HEAT / (3) DEFROST / (4) AUTO_COOL / (5) INFLOW / (6) PUMP_DOWN / (7) SHUTDOWN / (8) ERROR

get_substate​

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

Get the heat pump substate.

Parameters

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

Returns

  • int | str: (0) NONE / (1) OIL_PREHEATING / (2, 3) PUMP_PRE_RUN / (4) RANDOM_DELAY / (5, 21, 22) PRESSURE_EQUALIZATION / (6) DEFROST_PRE_FLOW / (7) DEFROST_MONITORING / (8) SNOW_DETECTION / (9) FLUSHING / (10) DEFROST_INITIALIZATION / (11) PREHEAT_FLOW / (12) DEFROST / (13, 25) DRIP / (14) DEFROST_END / (15, 16) OPEN / (17) COMPRESSOR_POST_RUN / (18) PUMP_POST_RUN / (19) LUBRICATION_PULSE / (20, 26) REDUCED_SPEED / (23) COMPRESSOR_DELAY / (24) DEFROST_VENTING / (27) SWITCH_HEATING_COOLING / (28, 33) WAIT_FOR_COMPRESSOR / (29) COMPRESSOR_STOP / (30) BIVALENT_LOCK / (31) LOCKED / (32) RETURN_FLOW_OFF / (34) MIXER_OPEN / (35) ZONE_VALVE / (36) ELECTRIC_DEFROST / (37) COUNTERFLOW_VALVE

get_operating_mode​

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

Get the operating mode from the heat pump.

Parameters

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

Returns

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

set_operating_mode​

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

Set the operating mode from the heat pump.

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 heat pump, starting at 1

get_compressor_use_night_speed​

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

Get the compressor use night speed state.

Parameters

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

Returns

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

set_compressor_use_night_speed​

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

Set the compressor use night speed.

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 heat pump, starting at 1

get_compressor_night_speed​

async def get_compressor_night_speed(position: int = 1, *, human_readable: bool = True) -> float

Get the compressor night speed.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1
  • human_readable bool (default: True): Has no effect, kept for backwards compatibility

Returns

  • float: Compressor night speed as a fraction from 0 to 1 (1 = 100 %)

set_compressor_night_speed​

async def set_compressor_night_speed(speed: float, position: int = 1) -> None

Set the compressor night speed.

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

  • speed float: Speed as a fraction from 0 to 1 (1 = 100 %), e.g. 0.95
  • position int (default: 1): Position of the heat pump, starting at 1

get_min_compressor_night_speed​

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

Get the minimum compressor night speed.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Minimum compressor night speed as a fraction from 0 to 1 (1 = 100 %)

get_max_compressor_night_speed​

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

Get the maximum compressor night speed.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Maximum compressor night speed as a fraction from 0 to 1 (1 = 100 %)

get_circulation_pump_speed​

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

Get the circulation pump speed.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Circulation pump speed as a fraction from 0 to 1 (1 = 100 %)

get_source_pump_speed​

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

Get the source pump speed.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Source pump speed as a fraction from 0 to 1 (1 = 100 %)

get_flow_temperature​

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

Get the flow temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_return_flow_temperature​

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

Get the return flow temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_source_input_temperature​

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

Get the source input temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_source_output_temperature​

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

Get the source output temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_compressor_input_temperature​

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

Get the compressor input temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_compressor_output_temperature​

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

Get the compressor output temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_compressor_speed​

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

Get the compressor speed from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Compressor speed as a fraction from 0 to 1 (1 = 100 %)

get_condenser_temperature​

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

Get the condenser temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_vaporizer_temperature​

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

Get the vaporizer temperature from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_target_overheating​

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

Get the target overheating from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_current_overheating​

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

Get the current overheating from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Temperature in °C

get_expansion_valve_position​

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

Get the expansion valve position from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Step position

get_high_pressure​

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

Get the high pressure from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: High pressure in bar

get_low_pressure​

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

Get the low pressure from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Low pressure in bar

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 pump.

Parameters

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

Returns

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

get_consuming_excess_energy​

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

Get the consuming excess energy from the heat pump.

Parameters

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

Returns

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

get_excess_energy_operating_time​

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

Get the excess energy operating time from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Operating time in seconds

get_excess_energy_max_runtime​

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

Get the excess energy maximum runtime from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Excess energy maximum runtime in seconds

get_excess_energy_activation_counter​

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

Get the activation counter from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Number of excess energy activation

get_compressor_power​

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

Get the compressor power from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Compressor power in W

get_heating_power​

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

Get the heating power from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Heating power in W

get_hot_water_power​

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

Get the hot water power from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Hot water power in W

get_cop​

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

Get the COP from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: COP

get_heating_energy​

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

Get the heating energy from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Heating energy in J

get_heating_energy_consumption​

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

Get the energy consumption for heating from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Energy consumption for heating in kWh

get_heating_spf​

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

Get the heating SPF from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Heating SPF

get_cooling_energy​

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

Get the cooling energy from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Cooling energy in J

get_cooling_energy_consumption​

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

Get the cooling energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Cooling energy consumption in kWh

get_cooling_spf​

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

Get the cooling SPF from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Cooling SPF

get_hot_water_energy​

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

Get the hot water energy from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Hot water energy in J

get_hot_water_energy_consumption​

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

Get the hot water energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Hot water energy consumption in kWh

get_hot_water_spf​

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

Get the hot water SPF from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Hot water SPF

get_total_thermal_energy​

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

Get the total thermal energy from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Total thermal energy in J

get_total_energy_consumption​

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

Get the total energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Total energy consumption in kWh

get_excess_energy_consumption​

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

Get the excess energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Excess energy consumption in kWh

get_heating_excess_energy_consumption​

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

Get the heating excess energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Heating excess energy consumption in kWh

get_cooling_excess_energy_consumption​

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

Get the cooling excess energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Cooling excess energy consumption in kWh

get_hot_water_excess_energy_consumption​

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

Get the hot water excess energy consumption from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: Hot water excess energy consumption in kWh

get_total_spf​

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

Get the SPF from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • float: SPF

has_active_cooling​

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

Check if active cooling for the heat pump is available.

Parameters

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

Returns

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

has_passive_cooling​

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

Check if passive cooling for the heat pump is available.

Parameters

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

Returns

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

get_operating_time​

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

Get the operating time from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Operating time in seconds

get_max_runtime​

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

Get the maximum runtime from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Maximum runtime in seconds

get_activation_counter​

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

Get the activation counter from the heat pump.

Parameters

  • position int (default: 1): Position of the heat pump, starting at 1

Returns

  • int: Number of heat pump activations

has_compressor_failure​

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

Check if the heat pump has a compressor failure.

Parameters

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

Returns

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

has_source_failure​

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

Check if the heat pump has a source failure.

Parameters

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

Returns

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

has_source_actuator_failure​

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

Check if the heat pump has a source actuator failure.

Parameters

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

Returns

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

has_three_phase_failure​

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

Check if the heat pump has a three-phase failure.

Parameters

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

Returns

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

has_source_pressure_failure​

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

Check if the heat pump has a source pressure failure.

Parameters

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

Returns

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

has_vfd_failure​

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

Check if the heat pump has a source pressure variable frequency drive (VFD) failure.

Parameters

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

Returns

  • int | str: 0 (OFF) / 1 (ON)
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