Use slider instead of button to Deactivate Pod#15
Conversation
|
So we already have all instances of deactivate pod behind two taps. You have tap on "Replace Pod", and then the big red "Deactivate Pod". Is there still inadvertent deactivation going on somehow? If so, please describe the context and how it happened. |
|
I have seen instances on Facebook where inexperienced caregivers managed to deactivate a pod. I believe there were also kids who did this by mistake. I got a lot of thumbs up from parents of children who thought this was a good idea. I'll see if I can get a real-life story posted here. I think it adds symmetry to the user experience when both insertion and deactivation have the same look and feel. And as an adult, it is the deactivate pod that always makes me think twice. |
|
Tina Hammer (parent of a T1D and Loop and Learn moderator) asked me to copy her comment her: I accidentally deactivated a couple months ago. It made me 👹! |
|
We don't make design decisions by the number of people who think it's a good idea, and the number of people who say they had a problem helps understand the scale of the problem, but doesn't shed much light on the nature of the problem itself. So far I've just gotten input on the former two things, and not anything that describes how this problem happens. I assume the user went to pod settings for some normal reason (check status, suspend/ etc), scrolled down so that the red "Replace Pod” button was onscreen, accidentally tapped it, and then also accidentally tapped the big red button at the bottom? Seems pretty unlikely, but possible. It’s the unlikeliness of it that makes me want to understand it; maybe we have another issue somewhere. Are people often accidentally navigating to the “Deactivate Pod” screen for some reason? I'm not actually opposed to this change, just wanting to understand the issue before making the decision. |
|
To deactivate a pod during a delivery uncertainty situation takes three steps. The first screen says that Loop can't communicate, and it will keep trying to or you can "Learn More" about other options. When you press that button, then you go to a page explaining why Loop cannot display information in this state, with a spinner, a message saying "Attempting to re-establish communication", and a button saying "Deactivate Pod". You have to press "Deactivate Pod", then you're taken to another screen, with the big red button that says "Deactivate Pod" again (this is the standard deactivate pod screen you see after you tap "replace pod" in the scenario above). As has been discussed in other tickets, this UI is difficult for users. It often happens when users are needing to do something, so they are in a mode of "click though all the dialogs" so they can get to the action they want to do (like bolus, or enter carbs). Each page only offers a single option which is a step towards deactivation. Users are not understanding that the primary action they need to take is to restore communication. If they are already tapping through three different buttons, and three pages of info about what they are doing, I think it's unlikely that a slider will stop them either. The delivery uncertainty UX should be reviewed with the goal of helping users take action for restoring communication. Perhaps by having a button that attempts comms and has a slower timeout before reporting an error. The button doesn't really change what Loop is doing, as it's already trying to re-establish comms, but it would give the user a better understanding that this is the situation, by involving them in it. |
|
Would argue the restore communication having deactivate pod is a broken logic loop, if the pod can't connect then how can you deactivate it? If this is some FDA thing then have the button to press "Enter pod menu" or something, not deactivate pod. Some kid is going to button mash that and kill their good pod. I have removed all those UI pop ups as they are error prone and add no value. Dash pods as a rule maintain near perfect comms and there seems no real reason to warn the user of that until perhaps 5-10 min of comm loss. Deactivating pods should really only be issued by the UI by entering the pod menu. That's the way I'm trying to patch it to prevent accidental pod kills. |
|
@culdeus Sounds like the uncertain delivery state is still not being understood; I'll take responsibility for that not being communicated well in the dialog. But it's not just a normal case of comms loss, and only happens when we're trying to make a delivery adjustment. Let me try to clarify by using the case of Loop trying to auto-bolus 2U: Normal situation without any comms issues:
Normal comms-loss situation:
Uncertain delivery situation:
We do need to update the dialog to be better about suggesting action, and guiding the user. But this situation is real, and we can't just drop the state, and pretend everything is ok. We don't alert the user about it with a notification, as most of the times it resolves on its own. But when the user goes to use the UI, they do need to know that all of Loop's understanding of current dosing is severely impacted. |
|
I am mostly echoing Maggie Yoder's comment, and I am working to remove this as code customization in advance of winter where gloves are risky to kill a pod simply to make the button not do anything at all. |
|
I think it's fine to make the "forget pod" action (it's not really deactivate, as we can't deactivate w/o comms) somewhat harder; it's currently three taps, but it is the default action on each page, and to guide the user more to actions that might help Loop recover, in the case of uncertain comms. |
|
I modified the name to "Use slider instead of button to Deactivate Pod". I believe the comments on how you get here when having a communications failure belongs with a different PR. Because these changes have to be made in both OmniBLE and OmniKit, I started with just OmniBLE for this other PR. |
|
Please hold on this PR until Loop Issue 2105 is resolved. |
…ages" This reverts commit f85752c.
|
LoopKit/Loop#2105 is merged. Let me know when this is ready to merge. Thanks! |
|
@ps2: Do you want a test on an Eros pod? We just got some donated so I have pods I can burn. Otherwise, I'll test just the DASH version and rely on code review for this one. |
|
Other than white space and file names, this PR contains the same changes as OmniBLE PR 102 which was confirmed to work as expected using an rPi DASH. |


Edited to says - updated now that PR #13 was merged.
I started with @dabear InsertCannulaViewImprovementsOmniKit branch for PR #13.
I merged main into my branch (InsertCannula_Deactivate_ViewImprovements) and then added the same modifications as were used for OmniBLE but to the OmniKit files.
I tested this with an Eros pod on my desktop. Insert Cannula and Deactivate pod both present a slider instead of a button.
Graphics are the same as for OmniBLE PR 102.
Both the insert slide and deactivate slider worked as expected.