-
Notifications
You must be signed in to change notification settings - Fork 46
Command 1F Cancel Request
Command $1F
is the Cancel command. It has the following format:
OFF 1 2 3 4 5 6
1f 05 NNNNNNNN AX
-
1f
(1 byte): Mtype value of $1f specifies a cancel command -
05
(1 byte): The cancel command always has a fixed length of05
-
NNNNNNNN
(4 bytes): Nonce, the 32-bit validator (random looking numbers) -
AX
(1 byte): Command byte of the formaaaa0bcd
:- The
aaaa
(A
) nibble in the range of (0..8) is a beep type value from 0 (silent) to 8 as given in Beep types. Values ofA
larger than 8 are out of range and can fault the Pod.- 0 - No Sound
- 1 - BeepBeepBeepBeep
- 2 - BipBeep BipBeep BipBeep BipBeep
- 3 - BipBip
- 4 - Beep
- 5 - BeepBeepBeep
- 6 - Beeeeeep
- 7 - BipBipBip BipBipBip
- 8 - BeeepBeeep
- The
b
($04) bit being set will cancel any ongoing bolus and will turn off theRR
reminder variables set from the $17 Bolus Extra command. - The
c
($02) bit being set will cancel any ongoing temporary basal and will turn off theRR
reminder variables set from the $16 Temp Basal command. - The
d
($01) bit being set will cancel the basal program and will turn off theRR
reminder variables set from the $13 Basal Schedule command.
- The
The Pod responds to the $1F
cancel command with a $1D
status message.
At least one insulin delivery type bits of b
, c
or d
must be specified.
If more than one of the b
, c
and d
bits are specified
with a non zero (i.e., non silent) value for A
,
then the specified beep sequence will play for each insulin delivery type being cancelled.
(e.g., an AX
value of $67
will emit a type 6 beep three times,
an AX
value of $43
will emit a type 4 beep two times, etc).
An important use of the $1F
cancel command for closed loop use is to cancel a temporary basal rate.
An example from Temp Basal Packets:
1f 05 NNNNNNNN AX
1f 05 d88df895 62
The AX
value of $62
has an aaaa
nibble value of 6
which will cause the Pod to emit a a single longer beep.
The c
($02) bit being set cancels the in-progress temporary basal
and clears any associated completion beep and Program Reminders.
An example cancel temporary basal sequence:
2017-10-04T14:37:14.307150 ID1:1f0b3555 PTYPE:PDM SEQ:23 ID2:1f0b3555 B9:08 BLEN:7 BODY:1f05156b93e8620028 CRC:35
2017-10-04T14:37:14.377525 ID1:1f0b3555 PTYPE:POD SEQ:24 ID2:1f0b3555 B9:0c BLEN:10 BODY:1d1800251000000063ff82bb CRC:91
2017-10-04T14:37:14.378063 ID1:1f0b3555 PTYPE:ACK SEQ:25 ID2:1f0b3555 CRC:f0
A cancel is also done as part of a Deactivate Pod.
1f 05 NNNNNNNN AX
1f 05 e1f78752 07
The AX
value of $07
will cancel any ongoing
bolus, temporary basal, and basal program in effect
and clears any associated completion beep and Program Reminders.
The $1F
command is also used as part of a "Suspend"
in conjunction with a $19
command.
Consider this example Suspend for 0.5 hours taken from
Temp basal with suspend cancel.
1f 05 NNNNNNNN AX 19 LL NNNNNNNN IVXX YYYY 0J0K IVXX YYYY 0J0K
1f 05 b15898b0 03 19 10 b15898b0 580f 000f 0604 6800 001e 0302
In this example,
the Cancel Command AX
value of $03
won't sound a beep with an
A
nibble value of 0
while the c
($02) and d
($01) bits being set will cancel
the current temporary basal and basal programs
and clears any associated completion beeps and Program Reminders.
The subsequent Command 19 Configure Alerts then sets the Suspend related beeps.
Yet, another $1F
command variation is to
cancel a bolus operation before it is finished.
The PDM reports the partially delivered amount.
2017-11-17T15:07:17.702593 ID1:1f068f54 PTYPE:PDM SEQ:17 ID2:1f068f54 B9:08 BLEN:7 BODY:1f053b9a70286401c0 CRC:2c
2017-11-17T15:07:17.737905 ID1:1f068f54 PTYPE:POD SEQ:18 ID2:1f068f54 B9:0c BLEN:10 BODY:1d1800d610010007dfff803b CRC:87
2017-11-17T15:07:18.143485 ID1:1f068f54 PTYPE:ACK SEQ:19 ID2:1f068f54 CRC:33
2017-11-17T15:07:22.162888 ID1:1f068f54 PTYPE:PDM SEQ:20 ID2:1f068f54 B9:10 BLEN:3 BODY:0e01000110 CRC:f7
2017-11-17T15:07:22.236193 ID1:1f068f54 PTYPE:POD SEQ:21 ID2:1f068f54 B9:14 BLEN:10 BODY:1d1800d610010007dfff02b5 CRC:d3
1f 05 NNNNNNNN AX
1f 05 3b9a7028 64
In this cancel bolus example,
the $1F
command AX
value is 64
.
The aaaa
nibble value will generate one longer beep
and the b
($04) bit being set specifies to cancel the bolus
and clears any associated completion beep and Program Reminders.
This command can only be used when the current Pod Progress State is between 8 and 12.