ESPHome 2025.9.0-dev
Loading...
Searching...
No Matches
xiaomi_miscale.h
Go to the documentation of this file.
1#pragma once
2
6
7#include <vector>
8
9#ifdef USE_ESP32
10
11namespace esphome {
12namespace xiaomi_miscale {
13
19
21 public:
22 void set_address(uint64_t address) { address_ = address; };
23
24 bool parse_device(const esp32_ble_tracker::ESPBTDevice &device) override;
25 void dump_config() override;
26 void set_weight(sensor::Sensor *weight) { weight_ = weight; }
27 void set_impedance(sensor::Sensor *impedance) { impedance_ = impedance; }
28 void set_clear_impedance(bool clear_impedance) { clear_impedance_ = clear_impedance; }
29
30 protected:
31 uint64_t address_;
34 bool clear_impedance_{false};
35
37 bool parse_message_(const std::vector<uint8_t> &message, ParseResult &result);
38 bool parse_message_v1_(const std::vector<uint8_t> &message, ParseResult &result);
39 bool parse_message_v2_(const std::vector<uint8_t> &message, ParseResult &result);
40 bool report_results_(const optional<ParseResult> &result, const std::string &address);
41};
42
43} // namespace xiaomi_miscale
44} // namespace esphome
45
46#endif
uint8_t address
Definition bl0906.h:4
Base-class for all sensors.
Definition sensor.h:59
void set_clear_impedance(bool clear_impedance)
bool parse_message_v1_(const std::vector< uint8_t > &message, ParseResult &result)
bool parse_device(const esp32_ble_tracker::ESPBTDevice &device) override
bool parse_message_(const std::vector< uint8_t > &message, ParseResult &result)
void set_weight(sensor::Sensor *weight)
bool report_results_(const optional< ParseResult > &result, const std::string &address)
void set_impedance(sensor::Sensor *impedance)
optional< ParseResult > parse_header_(const esp32_ble_tracker::ServiceData &service_data)
bool parse_message_v2_(const std::vector< uint8_t > &message, ParseResult &result)
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7