ProtoCore v0.0.1
Deterministic, zero-heap network stack for embedded targets
Loading...
Searching...
No Matches
enocean.h File Reference

EnOcean ESP3 serial codec (PC_ENABLE_ENOCEAN) - energy-harvesting 868 MHz. More...

#include "protocore_config.h"

Go to the source code of this file.

Detailed Description

EnOcean ESP3 serial codec (PC_ENABLE_ENOCEAN) - energy-harvesting 868 MHz.

A UART telegram codec for EnOcean Serial Protocol 3 (ESP3), the framing every USB / serial EnOcean gateway (TCM 310 / USB 300) speaks. A telegram is:

0x55 | data-len (2, big-endian) | opt-len (1) | packet-type (1) | CRC8H | data[data-len] | opt[opt-len] | CRC8D

where CRC8H protects the 4 header bytes and CRC8D protects the data + optional data (both CRC-8, polynomial 0x07, init 0). pc_esp3_parse() frames one telegram out of a byte stream, resynchronizing on a bad sync / CRC, and pc_esp3_build() assembles one. This is the radio- plugin codec for the gateway: an inbound RADIO_ERP1 telegram carries a sender id (its source address) and payload; bridge it northbound with pc_gateway_uplink(). Pure - you feed it the UART bytes - so it is fully host-testable. See example EnOceanGateway.

Author
Douglas Quigg (dstroy0)
Date
2026

Definition in file enocean.h.