Skip to content

OmniXXX Pump Manager does not properly handle a Discard event #2382

@marionbarker

Description

@marionbarker

Describe the bug

For Omnipod based pump managers.

  • when a pod must be discarded because communication cannot be resumed, the pump manager should report a Suspend at the time of discard and estimate what the current status is for dosing based on what it knows
  • this won't be perfect
  • but right now no event is reported in response to a discard

Attach an Issue Report
N/A

To Reproduce
Steps to reproduce the behavior

  1. Attach a rPi DASH simulator to Loop
  2. Complete the steps to Deactivate and Pair New/Insert a new pod
    • ✅ In this case there is a Suspend at the time of the deactivate and a Resume at the time of cannula insertion
  3. Interrupt the rPi DASH simulator, attempt to Deactivate - Discard instead, resume rPi DASH simulator and Pair New/Insert a new pod
    • In this case there is a Resume at the time of cannula insertion but no Suspend is visible
    • 🧰 I expect to see a Suspend at the time the pod is discarded
  4. Use the front end to cause a fault and view the fault with the Loop interface, then Interrupt the rPi DASH simulator, attempt to Deactivate - Discard instead, resume rPi DASH simulator and Pair New/Insert a new pod
    • No Suspend was seen at the time of the Discard statement
    • The Resume and Pod Change was seen at the time of the cannula insertion
    • 🧰 I expect to see a Suspend at the time the fault is detected by Loop
  5. Repeat step 4, but do not interrupt the rPi DASH simulator
    • final result shows Suspend at time of fault with a ResumeandPod Change` at time of cannula insertion
    • ✅ With the updated pod code, the results are as expected

Screenshots
If applicable, add screenshots to help explain your problem.

Phone

  • Hardware: SE 3rd gen
  • OS Version: iOS 26.1

Loop Version

  • Version Number: dev branch, version 3.9.3
  • Repo: LoopKit

CGM

  • Device: N/A

Pump

  • OmniBLE pump manager with rPi DASH simulator

Deleted or edited comments

EDITED TO ADD: @itsmojo reports that the odd Resume instead of Suspend behavior mentioned in the original comments were because the rPi DASH simulator was not reporting a fault in the same way that a pod will.

The rPi DASH simulator was subsequently updated with LoopKit/pod PR 15: return suspend when pod fault is detected

Comments that were due to the issue with the DASH pod simulator have been removed.
They are copied here (in strikeout font) for historical reasons.
The issue description above was edited to be correct for a "real" pod.

  • when a pod fault is detected, the pump should report a Suspend event - not a resume event.

pod fault and discard

  • In this case there are two instances of a Resume but no Suspend is visible
    • the first Resume is at the time the fault was detected by Loop - but NOTE this only appears in the pump event log after the pod was discarded in a later step
    • the second Resume is at the time of cannula insertion

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions