DeterministicESPAsyncWebServer v6.27.1
Zero-allocation, bounded-execution async HTTP server for ESP32
Loading...
Searching...
No Matches
enip.h File Reference

EtherNet/IP encapsulation codec (DETWS_ENABLE_ENIP) - zero-heap builder + parser for the ODVA EtherNet/IP encapsulation layer (TCP/UDP 44818), the transport that carries CIP. The reusable base for CIP / EtherNet/IP explicit messaging. More...

#include "ServerConfig.h"

Go to the source code of this file.

Detailed Description

EtherNet/IP encapsulation codec (DETWS_ENABLE_ENIP) - zero-heap builder + parser for the ODVA EtherNet/IP encapsulation layer (TCP/UDP 44818), the transport that carries CIP. The reusable base for CIP / EtherNet/IP explicit messaging.

The 24-octet encapsulation header (all fields LITTLE-endian):

Command(2) Length(2) SessionHandle(4) Status(4) SenderContext(8) Options(4) <data>

Length is the octet count of the command-specific data that follows the header.

  • RegisterSession (0x0065): data = protocol version(2)=1 + options flags(2)=0; the reply carries the assigned session handle.
  • SendRRData (0x006F): data = interface handle(4)=0 + timeout(2) + a Common Packet Format block: item count(2), then items (Type ID(2), Length(2), data). Unconnected explicit messaging uses a Null Address item (0x0000) then an Unconnected Data item (0x00B2) carrying the CIP request/response.

Commands + CPF item types verified against the Wireshark ENIP dissector. This codec frames the encapsulation; the CIP message inside the Unconnected Data item is the application's.

Author
Douglas Quigg (dstroy0)
Date
2026

Definition in file enip.h.