M5Unit-INFRARED 0.2.0 git rev:76ad9e1
Loading...
Searching...
No Matches
ir_codec.hpp File Reference

IR protocol codec base class and types. More...

#include <M5UnitComponent.hpp>
#include <cstdint>
#include <vector>

Go to the source code of this file.

Classes

struct  m5::unit::ir::DecodeResult
 Result of decoding a received IR frame. More...
 
class  m5::unit::ir::IRCodec
 Abstract base class for IR protocol encoding/decoding. More...
 

Namespaces

namespace  m5
 Top level namespace of M5Stack.
 

Typedefs

using m5::unit::ir::item_container_type = std::vector<m5::unit::gpio::m5_rmt_item_t>
 RMT item container.
 

Enumerations

enum class  m5::unit::ir::CodecType : uint8_t {
  NEC = 0 , SIRC , RC5 , RC6 ,
  Panasonic , Mitsubishi , Raw , Unknown = 254 ,
  Custom = 255
}
 Identifies the IR protocol codec implementation. More...
 

Detailed Description

IR protocol codec base class and types.

Enumeration Type Documentation

◆ CodecType

enum class m5::unit::ir::CodecType : uint8_t
strong

Identifies the IR protocol codec implementation.

Note
Additional protocols (e.g., Samsung, LG, JVC, Sharp, AEHA) may be added in future versions. Values up to 253 are reserved for built-in protocols. Use Custom (255) for user-defined protocols.
Enumerator
NEC 

NEC / Extended NEC.

SIRC 

Sony SIRC (12/15/20-bit)

RC5 

Philips RC5 / RC5X.

RC6 

Philips RC6 Mode 0.

Panasonic 

Panasonic / Kaseikyo (48-bit, customer code + data)

Mitsubishi 

Mitsubishi (16-bit, no leader, sent twice)

Raw 

Raw mark/space (no protocol)

Unknown 

Unknown protocol.

Custom 

User-defined custom protocol.