-
Notifications
You must be signed in to change notification settings - Fork 46
Message Structure
Messages are assembled from one or more packets. Here's an example of a series of packets that make up a temp basal being issued.
First packet from PDM to POD: 1f07b1eeb91f07b1ee30201a0ebee0a2d001007d01384000020002160e40000015051be550
is decoded as ID1:1f07b1ee PTYPE:PDM SEQ:25 ID2:1f07b1ee B9:30 BLEN:32 MTYPE:1a0e BODY:bee0a2d001007d01384000020002160e40000015051be5 CRC:50
Then the POD acks with: 1f07b1ee5a1f07b1ee30
Second packet from PDM to POD is a CON packet 1f07b1ee9b6d0015051be56d8137f3
, which is decoded as ID1:1f07b1ee PTYPE:CON SEQ:27 CON:6d0015051be56d8137 CRC:f3
The final message is 1f07b1ee30321a0ebee0a2d001007d01384000020002160e40000015051be56d0015051be56d8137
.
Let's break the above message down into parts, in order:
- Pod ID (4 bytes):
1f07b1ee
- B9 (1 byte):
30
- BLEN (1 byte):
32
- Message Type (2 bytes):
1a0e
- Body (variable, up to 201 bytes):
bee0a2d001007d01384000020002160e40000015051be56d0015051be56d
- CRC16 (2 bytes):
8137
The length of the message type + body above is 0x20 bytes, matching the BLEN.
- PDM (0e01) (Status Request)
- POD (1d18) (Status Response)
- ACK
- PDM (0e01) (Status Request)
- POD (1d18) (Status Response)
- ACK
- PDM (1a0e) (Bolus Request)
- ACK
- CON
- POD (1d**) (Delivery Confirmation??)
- CON
- PDM (0e01) (Status Request)
- POD (1d18) (Status Response)
- ACK
- PDM (1a0e) (Basal Change Request)
- ACK
- CON
- POD (1d**) (Basal Confirmation)
- ACK