13#ifndef M5_UNIT_RF433_CODEC_M5_CODEC_HPP
14#define M5_UNIT_RF433_CODEC_M5_CODEC_HPP
17#include <m5_utility/crc.hpp>
52 bool decode(
const gpio::m5_rmt_item_t* items, uint32_t num, uint8_t* work_buf, uint16_t work_buf_size,
87 uint8_t _send_count{};
M5Unit-RF433 original protocol codec.
Definition m5_codec.hpp:29
uint8_t overhead() const override
Get protocol overhead in bytes.
Definition m5_codec.hpp:59
void setCommunicationIdentifier(communication_identifier_t id)
Set the communication identifier.
Definition m5_codec.hpp:79
communication_identifier_t communicationIdentifier() const
Get the communication identifier.
Definition m5_codec.hpp:71
bool decode(const gpio::m5_rmt_item_t *items, uint32_t num, uint8_t *work_buf, uint16_t work_buf_size, DecodeResult &result) override
Decode RMT items into payload data.
Definition m5_codec.cpp:77
item_container_type encode(const uint8_t *payload, uint32_t payload_len) override
Encode payload into RMT items with M5 protocol framing.
Definition m5_codec.cpp:36
Abstract base class for RF433 protocol encoding/decoding.
Definition protocol_codec.hpp:49
Top level namespace of M5Stack.
Protocol codec base class for RF433.
uint8_t communication_identifier_t
Communication identifier (0-255)
Definition rmt_item_types.hpp:29
std::vector< gpio::m5_rmt_item_t > item_container_type
Item container.
Definition rmt_item_types.hpp:28
Result of decoding a received frame.
Definition protocol_codec.hpp:23