ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
hon_parser.h File Reference

Go to the source code of this file.

Data Structures

class  esphome::haier_water_heater::water_heater_protocol::FrameParser
 
struct  esphome::haier_water_heater::water_heater_protocol::Status
 
struct  esphome::haier_water_heater::water_heater_protocol::Command
 

Namespaces

namespace  esphome
 
namespace  esphome::haier_water_heater
 
namespace  esphome::haier_water_heater::water_heater_protocol
 

Enumerations

enum class  esphome::haier_water_heater::water_heater_protocol::FrameType : uint8_t {
  esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_CONTROL = 0x01 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_STATUS = 0x02 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_INVALID = 0x03 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_CONFIRM = 0x05 ,
  esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_REPORT = 0x06 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_GET_VERSION = 0x61 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_VERSION = 0x62 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_GET_DEVICE_ID = 0x70 ,
  esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_DEVICE_ID = 0x71 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_GET_NETWORK_STATUS = 0xF0 , esphome::haier_water_heater::water_heater_protocol::FRAME_TYPE_NETWORK_STATUS = 0xF7
}
 
enum class  esphome::haier_water_heater::water_heater_protocol::HonMode : uint8_t { esphome::haier_water_heater::water_heater_protocol::HON_MODE_UNKNOWN , esphome::haier_water_heater::water_heater_protocol::HON_MODE_NORMAL , esphome::haier_water_heater::water_heater_protocol::HON_MODE_ECO , esphome::haier_water_heater::water_heater_protocol::HON_MODE_BPS }
 
enum class  esphome::haier_water_heater::water_heater_protocol::Parameter : uint8_t { esphome::haier_water_heater::water_heater_protocol::PARAMETER_POWER = 0x01 , esphome::haier_water_heater::water_heater_protocol::PARAMETER_TARGET_TEMPERATURE = 0x02 , esphome::haier_water_heater::water_heater_protocol::PARAMETER_ECO = 0x05 , esphome::haier_water_heater::water_heater_protocol::PARAMETER_BPS = 0x17 }
 

Functions

size_t esphome::haier_water_heater::water_heater_protocol::encode_frame (FrameType type, const uint8_t *payload, size_t size, uint8_t *wire)
 Writes a clear-text frame with up to MAX_PAYLOAD bytes of payload into wire, which must hold MAX_WIRE_FRAME bytes.
 
HonMode esphome::haier_water_heater::water_heater_protocol::decode_mode (const uint8_t *payload)
 
bool esphome::haier_water_heater::water_heater_protocol::decode_status (const uint8_t *frame, size_t size, Status &status)
 Decodes a status report or a polled status; false for any other frame or an implausible one.
 
void esphome::haier_water_heater::water_heater_protocol::encode_control (const Command &command, uint8_t *payload)
 Fills the four-byte control payload for a command.
 
bool esphome::haier_water_heater::water_heater_protocol::command_confirmed (const Command &command, const Status &status)
 True when a status shows that the command took effect.