ESPHome  2024.10.2
Data Structures | Enumerations | Functions
esphome::opentherm Namespace Reference

Data Structures

class  OpenTherm
 Opentherm static class that supports either listening or sending Opentherm data packets in the same time. More...
 
struct  OpenthermData
 Structure to hold Opentherm data packet content. More...
 
struct  OpenThermError
 
class  OpenthermHub
 

Enumerations

enum  OperationMode {
  IDLE = 0, LISTEN = 1, READ = 2, RECEIVED = 3,
  WRITE = 4, SENT = 5, ERROR_PROTOCOL = 8, ERROR_TIMEOUT = 9
}
 
enum  ProtocolErrorType {
  NO_ERROR = 0, NO_TRANSITION = 1, INVALID_STOP_BIT = 2, PARITY_ERROR = 3,
  NO_CHANGE_TOO_LONG = 4
}
 
enum  MessageType {
  READ_DATA = 0, READ_ACK = 4, WRITE_DATA = 1, WRITE_ACK = 5,
  INVALID_DATA = 2, DATA_INVALID = 6, UNKNOWN_DATAID = 7
}
 
enum  MessageId {
  STATUS = 0, CH_SETPOINT = 1, CONTROLLER_CONFIG = 2, DEVICE_CONFIG = 3,
  COMMAND_CODE = 4, FAULT_FLAGS = 5, REMOTE = 6, COOLING_CONTROL = 7,
  CH2_SETPOINT = 8, CH_SETPOINT_OVERRIDE = 9, TSP_COUNT = 10, TSP_COMMAND = 11,
  FHB_SIZE = 12, FHB_COMMAND = 13, MAX_MODULATION_LEVEL = 14, MAX_BOILER_CAPACITY = 15,
  ROOM_SETPOINT = 16, MODULATION_LEVEL = 17, CH_WATER_PRESSURE = 18, DHW_FLOW_RATE = 19,
  DAY_TIME = 20, DATE = 21, YEAR = 22, ROOM_SETPOINT_CH2 = 23,
  ROOM_TEMP = 24, FEED_TEMP = 25, DHW_TEMP = 26, OUTSIDE_TEMP = 27,
  RETURN_WATER_TEMP = 28, SOLAR_STORE_TEMP = 29, SOLAR_COLLECT_TEMP = 30, FEED_TEMP_CH2 = 31,
  DHW2_TEMP = 32, EXHAUST_TEMP = 33, FAN_SPEED = 35, FLAME_CURRENT = 36,
  DHW_BOUNDS = 48, CH_BOUNDS = 49, OTC_CURVE_BOUNDS = 50, DHW_SETPOINT = 56,
  MAX_CH_SETPOINT = 57, OTC_CURVE_RATIO = 58, HVAC_STATUS = 70, REL_VENT_SETPOINT = 71,
  DEVICE_VENT = 74, REL_VENTILATION = 77, REL_HUMID_EXHAUST = 78, SUPPLY_INLET_TEMP = 80,
  SUPPLY_OUTLET_TEMP = 81, EXHAUST_INLET_TEMP = 82, EXHAUST_OUTLET_TEMP = 83, NOM_REL_VENTILATION = 87,
  OVERRIDE_FUNC = 100, OEM_DIAGNOSTIC = 115, BURNER_STARTS = 116, CH_PUMP_STARTS = 117,
  DHW_PUMP_STARTS = 118, DHW_BURNER_STARTS = 119, BURNER_HOURS = 120, CH_PUMP_HOURS = 121,
  DHW_PUMP_HOURS = 122, DHW_BURNER_HOURS = 123, OT_VERSION_CONTROLLER = 124, OT_VERSION_DEVICE = 125,
  VERSION_CONTROLLER = 126, VERSION_DEVICE = 127
}
 
enum  BitPositions { STOP_BIT = 33 }
 

Functions

template<class T >
constexpr T read_bit (T value, uint8_t bit)
 
template<class T >
constexpr T set_bit (T value, uint8_t bit)
 
template<class T >
constexpr T clear_bit (T value, uint8_t bit)
 
template<class T >
constexpr T write_bit (T value, uint8_t bit, uint8_t bit_value)
 

Enumeration Type Documentation

◆ BitPositions

Enumerator
STOP_BIT 

Definition at line 138 of file opentherm.h.

◆ MessageId

Enumerator
STATUS 
CH_SETPOINT 
CONTROLLER_CONFIG 
DEVICE_CONFIG 
COMMAND_CODE 
FAULT_FLAGS 
REMOTE 
COOLING_CONTROL 
CH2_SETPOINT 
CH_SETPOINT_OVERRIDE 
TSP_COUNT 
TSP_COMMAND 
FHB_SIZE 
FHB_COMMAND 
MAX_MODULATION_LEVEL 
MAX_BOILER_CAPACITY 
ROOM_SETPOINT 
MODULATION_LEVEL 
CH_WATER_PRESSURE 
DHW_FLOW_RATE 
DAY_TIME 
DATE 
YEAR 
ROOM_SETPOINT_CH2 
ROOM_TEMP 
FEED_TEMP 
DHW_TEMP 
OUTSIDE_TEMP 
RETURN_WATER_TEMP 
SOLAR_STORE_TEMP 
SOLAR_COLLECT_TEMP 
FEED_TEMP_CH2 
DHW2_TEMP 
EXHAUST_TEMP 
FAN_SPEED 
FLAME_CURRENT 
DHW_BOUNDS 
CH_BOUNDS 
OTC_CURVE_BOUNDS 
DHW_SETPOINT 
MAX_CH_SETPOINT 
OTC_CURVE_RATIO 
HVAC_STATUS 
REL_VENT_SETPOINT 
DEVICE_VENT 
REL_VENTILATION 
REL_HUMID_EXHAUST 
SUPPLY_INLET_TEMP 
SUPPLY_OUTLET_TEMP 
EXHAUST_INLET_TEMP 
EXHAUST_OUTLET_TEMP 
NOM_REL_VENTILATION 
OVERRIDE_FUNC 
OEM_DIAGNOSTIC 
BURNER_STARTS 
CH_PUMP_STARTS 
DHW_PUMP_STARTS 
DHW_BURNER_STARTS 
BURNER_HOURS 
CH_PUMP_HOURS 
DHW_PUMP_HOURS 
DHW_BURNER_HOURS 
OT_VERSION_CONTROLLER 
OT_VERSION_DEVICE 
VERSION_CONTROLLER 
VERSION_DEVICE 

Definition at line 66 of file opentherm.h.

◆ MessageType

Enumerator
READ_DATA 
READ_ACK 
WRITE_DATA 
WRITE_ACK 
INVALID_DATA 
DATA_INVALID 
UNKNOWN_DATAID 

Definition at line 56 of file opentherm.h.

◆ OperationMode

Enumerator
IDLE 
LISTEN 
READ 
RECEIVED 
WRITE 
SENT 
ERROR_PROTOCOL 
ERROR_TIMEOUT 

Definition at line 34 of file opentherm.h.

◆ ProtocolErrorType

Enumerator
NO_ERROR 
NO_TRANSITION 
INVALID_STOP_BIT 
PARITY_ERROR 
NO_CHANGE_TOO_LONG 

Definition at line 48 of file opentherm.h.

Function Documentation

◆ clear_bit()

template<class T >
constexpr T esphome::opentherm::clear_bit ( value,
uint8_t  bit 
)

Definition at line 28 of file opentherm.h.

◆ read_bit()

template<class T >
constexpr T esphome::opentherm::read_bit ( value,
uint8_t  bit 
)

Definition at line 24 of file opentherm.h.

◆ set_bit()

template<class T >
constexpr T esphome::opentherm::set_bit ( value,
uint8_t  bit 
)

Definition at line 26 of file opentherm.h.

◆ write_bit()

template<class T >
constexpr T esphome::opentherm::write_bit ( value,
uint8_t  bit,
uint8_t  bit_value 
)

Definition at line 30 of file opentherm.h.