Code size analysis#
pw_hdlc: Simple, robust, and efficient serial communication
pw_hdlc currently optimizes for robustness and flexibility instead of
binary size or performance.
The HDLC encode and decode size report shows the cost of everything needed
to use pw_hdlc, including the dependencies on common modules like CRC32
from pw_checksum and variable-length integer handling from
pw_varint.
The HDLC encode and decode, ignoring CRC and varint size report shows the
cost of pw_hdlc if your application is already linking CRC32 and
variable-length integer handling. pw_varint is commonly used since it’s
necessary for protocol buffer handling, so it’s often already present.
Label |
Segment |
Delta |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
HDLC encode and decode |
FLASH
|
+2,544 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HDLC encode and decode, ignoring CRC and varint |
FLASH
|
+1,280 |
More pw_hdlc docs#
How to set up and use pw_hdlc
Reference details about the pw_hdlc API
Design details about pw_hdlc
The code size impact of pw_hdlc
A step-by-step example of sending RPCs over HDLC
An experimental asynchronous HDLC router using pw_channel