From f52726128aae489a014aae17630eb89653f6a252 Mon Sep 17 00:00:00 2001 From: jbr7rr <> Date: Sat, 1 Jul 2023 12:28:01 +0200 Subject: [PATCH] Minor fixes; Allow set of fake TBR when 0 temp is already running, Automatically force deactivation when patch is in error state --- .../java/info/nightscout/pump/medtrum/MedtrumPump.kt | 2 +- .../pump/medtrum/ui/viewmodel/MedtrumViewModel.kt | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/MedtrumPump.kt b/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/MedtrumPump.kt index cfd5293f22..369a55ded3 100644 --- a/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/MedtrumPump.kt +++ b/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/MedtrumPump.kt @@ -443,7 +443,7 @@ class MedtrumPump @Inject constructor( fun setFakeTBRIfNeeded() { val expectedTemporaryBasal = pumpSync.expectedPumpState().temporaryBasal - if (expectedTemporaryBasal?.rate != 0.0 && expectedTemporaryBasal?.duration != T.mins(FAKE_TBR_LENGTH).msecs()) { + if (expectedTemporaryBasal?.duration != T.mins(FAKE_TBR_LENGTH).msecs()) { setFakeTBR() } } diff --git a/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/ui/viewmodel/MedtrumViewModel.kt b/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/ui/viewmodel/MedtrumViewModel.kt index 5a520f330c..ab492749d0 100644 --- a/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/ui/viewmodel/MedtrumViewModel.kt +++ b/pump/medtrum/src/main/java/info/nightscout/pump/medtrum/ui/viewmodel/MedtrumViewModel.kt @@ -243,7 +243,14 @@ class MedtrumViewModel @Inject constructor( if (this.result.success) { // Do nothing, state change will handle this } else { - updateSetupStep(SetupStep.ERROR) + if (medtrumPump.pumpState >= MedtrumPumpState.OCCLUSION && medtrumPump.pumpState <= MedtrumPumpState.NO_CALIBRATION) { + // We are in a fault state, we need to force deactivation + aapsLogger.info(LTag.PUMP, "deactivatePatch: force deactivation") + medtrumPump.pumpState = MedtrumPumpState.STOPPED + } else { + aapsLogger.info(LTag.PUMP, "deactivatePatch: failure!") + updateSetupStep(SetupStep.ERROR) + } } } })