diff --git a/docs/build/cgm.md b/docs/build/cgm.md index 377dcefc27a..0b55e5aedbc 100644 --- a/docs/build/cgm.md +++ b/docs/build/cgm.md @@ -68,10 +68,6 @@ Both the Eversense E3 (90 days & 180 days) and the Eversense 365 (full year) tra Eversense E3 and 365 are implantable continuous glucose monitoring (CGM) systems with a sensor inserted under the skin and a removable on-body transmitter that sends real-time glucose data and alerts to the *Loop* app. Unlike traditional CGMs that require frequent sensor changes, Eversense reduces insertion frequency but requires weekly fingerstick calibrations. -## *Medtronic* CGM -![img/enlite.png](img/enlite.png){width="150"} - -The Minimed Enlite CGM, available with the *Medtronic* 522/722, 523/723, and 554/754, wirelessly sends glucose readings to the pump. The *Loop* app can read the *Medtronic* CGM data directly from the pump using a RileyLink compatible device. ## Offline Use diff --git a/docs/faqs/cgm-faqs.md b/docs/faqs/cgm-faqs.md index 30ade54c141..ba9a2ca16f8 100644 --- a/docs/faqs/cgm-faqs.md +++ b/docs/faqs/cgm-faqs.md @@ -6,7 +6,6 @@ The following CGM are supported by some or all versions of Loop: * This includes 15-day G7 CGM * *EU Libre 2/2+* CGM (Loop 3.4 and later), *Libre 3/3+* CGM (via an experimental testing branch, [next-dev branch](../version/development.md#updates-in-dev)) * Eversense E3 and 365 (included with *Loop* v3.14.2 and newer) -* Medtronic Enlite CGM when used with a compatible pump * Remote CGM (requires internet access) * *Dexcom* Share * Nightscout as CGM diff --git a/docs/faqs/omnipod-faqs.md b/docs/faqs/omnipod-faqs.md index fa8f1bbc88b..3b444538366 100644 --- a/docs/faqs/omnipod-faqs.md +++ b/docs/faqs/omnipod-faqs.md @@ -1,3 +1,64 @@ +## Why are there so many Omnipod Pump Manager versions? + +The code used to control Pods is undergoing a lot of modifications in the summer of 2026. + +You can skip ahead to the [Table of OmnipodKit Versions](#table-of-omnipodkit-versions), or keep reading for more details. + +### OS-AID Omnipod History + +For Loop versions 3.14.2 and newer, all Omnipod pump manager control code is found in a single repository: **OmnipodKit**. + +Before that, there were two repositories with a lot of common code; often requiring updates for each repository to provide a single improved feature. + +To make development easier moving forward and to facilitate adding Omnipod 5 Pod support, the OmnipodKit repository was created to replace the two older submodules, which are now removed from Loop. + +#### OmniKit + +OmniKit was used to communicate with Classic (also known as Eros or Generation 3) Pods using a RileyLink + +* This is now replaced with **OmnipodKit** + +#### OmniBLE + +OmniBLE was used to communicate with DASH Pods with direct Bluetooth connection + +* This is now replaced with **OmnipodKit** +* The method developed for DASH pods originally used a *keep-connected* method +* Three minutes after the last message exchange between the phone and Pod, the Pod would initiate a disconnect from the Bluetooth channel (a characteristic of those Pods) +* The 3-minute disconnect could be detected and an immediate reconnect be initiatied by iOS giving a 3-minute heartbeat for these pods +* We now believe that keeping the DASH Pods connected may lead to heavier battery load with potentially more Faults + * This began to be critical when the new version of DASH Pods, using Atlas cards, began to be delivered in spring of 2025, see: [Increase in DASH Faults](#increase-in-dash-faults) +* Furthermore, several iPhone models, iPhone 16/17e, were very slow to make connection with Atlas DASH pods: [Keep Alive: Atlas or InPlay DASH Pods](#keep-alive-atlas-or-inplay-dash-pods) + + +#### OmnipodKit + +OmnipodKit replaces the need for OmniKit and OmniBLE submodules and provides support for Classic, DASH and Omnipod 5 Pods + +* The intial version with Omnipod 5 support used the Bluetooth *keep-connected* method; but this did not provide a heartbeat for Omnipod 5 Pods +* When developing a new method, connect on demand for the iOS/Pod pair, not only was a heartbeat developed for Omnipod 5 Pods, but this new technique appears to greatly reduce the 203 Fault frequency for Atlas DASH Pods + * This new version: nicknamed *ble-heartbeat* was a move in the right direction + * Because the Bluetooth connection is only opened when the app wants to communicate with the Pod, the interaction appears slower to the user: only a few seconds, but noticeable +* The next version, nicknamed *eager-connect*, arose from analysis of what is going wrong with iPhone 16/17e models when connecting to Atlas Pods + * There are a lot of technical details but the short version is that with iPhone 16/17e the Bluetooth connection could get stuck (also referred to as "wedged" where the iOS and Pod states were not commnunicating) and it could take seconds to minutes for nominal communication to begin + * The *eager-connect* method, senses if the connection is taking too long and restarts the process + * With iPhone 16/17e, the connection is much faster: a few seconds instead of seconds to minutes + * For all other phones, the *eager-connection* is ready to communicate with the pod in a few seconds, so still can be noticeable but faster than with *ble-heartbeat* + + +### Table of OmnipodKit Versions + +For details about the different Bluetooth connection methods nicknamed *keep-connected*, *ble-heartbeat* and *eager-connect*, please read [OS-AID Omnipod History](#os-aid-omnipod-history). Some of the Loop versions listed below are works-in-progress suitable only for expert testers. + +| Loop | Status |Pod Pump Manager | BLE Method | Supports | +|:--|:--|:--|:--|:--| +| before Loop 3.14.2 | released | OmniKit
OmniBLE | *keep-connected*| Classic, DASH | +| Loop 3.14.2 | released | OmnipodKit | *keep-connected* | Classic, DASH | +| Loop 3.14.3 | dev | OmnipodKit | *keep-connected* | Classic, DASH, Omnipod 5 | +| Loop 3.14.4 | update_dev_to_3.14.4 | OmnipodKit | *ble-heartbeat* | Classic, DASH, Omnipod 5 | +| Loop 3.15.2 | next-dev | OmnipodKit | *eager-connect* | Classic, DASH, Omnipod 5 | + + ## Is Omnipod 5 available for open-beta testing? Yes it is. diff --git a/docs/loop-3/add-cgm.md b/docs/loop-3/add-cgm.md index 9ccc063e26e..ef59d4c451b 100644 --- a/docs/loop-3/add-cgm.md +++ b/docs/loop-3/add-cgm.md @@ -17,10 +17,6 @@ Loop can be connected to the following CGMs: * Only some Libre sensors are supported; some have encryption that limits DIY use * Coming soon *Libre* 3/3+ support is available in [next-dev branch](../version/development.md#updates-in-dev){: target="_blank"} for experienced users * [Eversense E3/365](#eversense-e3365) **v3.14.2 or newer** - * [Minimed Enlite CGM](#medtronic-enlite-cgm) - * Medtronic Pump only - * **You must [add the Medtronic pump](add-pump.md) first** - * If Enlite is connected to Medtronic pump and that pump is connected to Loop, then an option for Enlite shows up when choosing a CGM, _not visible in graphic below_ * CGMs that require active internet (WiFi or Cell) * [*Dexcom Share*](#dexcom-share-as-a-cgm) * [Nightscout Remote CGM](#nightscout-remote-cgm) @@ -209,14 +205,6 @@ If you are having trouble with connecting to the Eversense, try these steps. * In the *Loop* app, go to Settings, CGM and delete CGM * In the official app, go to Connections and tap on the Transmitter and select Connect -### Medtronic Enlite CGM - -The Medtronic Enlite CGM is only available if you have connected it to your compatible Medtronic Pump. - -* Make sure your pump reports the Enlite CGM results -* Go through the [Add Pump](add-pump.md) to Loop steps with that Medtronic pump -* Then do the [Add CGM](add-cgm.md) steps and the sensor should be presented as an option - ### *Dexcom Share* as a CGM !!! warning "If you need to use *Dexcom Share*" diff --git a/docs/loop-3/add-pump.md b/docs/loop-3/add-pump.md index 6a0045d8422..03bb6e74129 100644 --- a/docs/loop-3/add-pump.md +++ b/docs/loop-3/add-pump.md @@ -120,6 +120,11 @@ At this point - you can pair your pod or hit `Cancel` (upper right of screen). Y **Medtrum is available in released code with v3.14.2 or newer.** +!!! important "Do not use the EasyPatch App when running an OS-AID" + The **Medtrum** pump can be controlled by the vendor's EasyPatch App or by the OS-AID app but not by both. + + If you have EasyPatch on your phone - make sure you have forgotten the pump base serial number in the EasyPatch app before attempting to connect a Medtrum Patch to your OS-AID app using that same pump base. + ### Confirm Patch and Pump Base are Compatible !!! info "All versions are supported!" @@ -135,7 +140,12 @@ At this point - you can pair your pod or hit `Cancel` (upper right of screen). Y ### Add Medtrum Nano Pump + +!!! important "" + If you previously used the Medtrum EasyPatch app, be sure to disconnect the pump base from the EasyPatch app before adding it as your new pump + You can only add the Medtrum patch pump when no pump is selected. + If you already have a pump selected, you must first delete the pump as detailed in [Change Pump Type](#change-pump-type). 1. Select [Insulin Type](#insulin-type) @@ -249,7 +259,6 @@ If you are adding a Medtronic pump, skip ahead to [Medtronic](#medtronic). - Set your pump's `Temp Basal Type` to `Insulin Rate (U/hr)`. - Set Remote Devices to `ON` and enter any random ID (010101 will work - avoid using all zeros). This setting is found in the pump's Utilities menu (for x23 continue to Connect Devices, Remotes) and turn `ON` the Remote Options. - Cancel any currently running extended or dual wave boluses. Loop cannot loop with those running. -- If you are using an Enlite CGM through your Medtronic pump, make sure that is configured properly before adding your pump to Loop ### Connect Pump to Loop diff --git a/docs/loop-3/onboarding.md b/docs/loop-3/onboarding.md index a21ed513b20..6d18af57f8f 100644 --- a/docs/loop-3/onboarding.md +++ b/docs/loop-3/onboarding.md @@ -295,11 +295,7 @@ For new Loopers, it is now time to add a CGM and a pump. Follow these links for * Add a [CGM](add-cgm.md) * Add a [Pump](add-pump.md) -!!! info "Medtronic CGM" - - If you plan to use a Medtronic Enlite sensor for your CGM, you must first add that pump to Loop before the sensor will be shown as an option. - -If you built Loop 3 over an existing app, your CGM and pump selections should have carried over. +If you built a new version of Loop over an existing app, your CGM and pump selections should have carried over, so long as the app was built with the same *Apple* developer ID. ## Experienced Loopers diff --git a/docs/version/development.md b/docs/version/development.md index f49e65dcc48..34e29afccaa 100644 --- a/docs/version/development.md +++ b/docs/version/development.md @@ -87,7 +87,7 @@ The table below lists active branches. | dev | 3.14.3 | 2 July 2026 | adds support for Omnipod 5
Please read [Status for Open Beta for Omnipod 5](#status-for-open-beta-for-omnipod-5)
See [PR 459](https://github.com/LoopKit/LoopWorkspace/pull/459) | | update_dev_to_3.14.4 | 3.14.4 | 20 July 2026 | work in progress for the next version
See [PR 469](https://github.com/LoopKit/LoopWorkspace/pull/469) | | `feat/all-managers`
- SHA `2f6b61e` | 3.14.4 | 20 July 2026| This branch contains all the managers and is primarily for developers to use for testing
It also provides `DanaKit @ c544c42` support
**Please read** [Status for Dana Support](#status-for-dana-support)
**Please read** [Feature Branch: feat/all-managers](#feature-branch-featall-managers) | -| `next-dev` | 3.15.1 | subject to rapid change | [Status for `next-dev` Branch](#status-for-next-dev-branch)| +| `next-dev` | 3.15.2 | subject to rapid change | [Status for `next-dev` Branch](#status-for-next-dev-branch)| ??? question "What is SHA? (Click to Open/Close)" SHA-1 means Secure Hash Algorithm 1. This is used to generate an alphanumeric code to identify which version of a repository is used. @@ -120,6 +120,18 @@ Use the page linked above to add the desired branch name (from the table above) For Mac Xcode build, the lines you need to copy and paste into a Terminal window are explicitly provided below: +``` { .bash .copy title="Download and build the update_dev_to_3.14.4 branch" } +/bin/bash -c "$(curl -fsSL \ + https://raw.githubusercontent.com/loopandlearn/lnl-scripts/main/BuildLoop.sh)" \ + - update_dev_to_3.14.4 +``` + +``` { .bash .copy title="Download and build the next-dev branch" } +/bin/bash -c "$(curl -fsSL \ + https://raw.githubusercontent.com/loopandlearn/lnl-scripts/main/BuildLoop.sh)" \ + - next-dev +``` + ``` { .bash .copy title="Download and build the feat/all-managers branch" } /bin/bash -c "$(curl -fsSL \ https://raw.githubusercontent.com/loopandlearn/lnl-scripts/main/BuildLoop.sh)" \ @@ -150,7 +162,7 @@ The document linked above does not include more recent updates which you find di !!! important "For Expert Testers" If you are willing to test using the `next-dev` branch of LoopWorkspace, this implementation provides a heartbeat from the Pod if the CGM does not have one. - It also operates the BLE Pods (DASH and Omnipod 5) in disconnected mode instead of always connected as was done earlier. + It also operates the BLE Pods (DASH and Omnipod 5) in disconnected mode instead of always connected as was done earlier; and with the updates found in interim version 3.15.2, it uses the *eager-connect* method. See [Table of OmnipodKit Versions](../faqs/omnipod-faqs.md#table-of-omnipodkit-versions){: target="_blank"} for more information. This new BLE management method needs people to test it and report if they find any issues. @@ -180,14 +192,17 @@ The next-dev branch will eventually be released as *Loop* version 4. The preset * The implementation found the the `dev` branch does not provide a heartbeat at this time * This means you rely on your CGM to wake up the app when it is in the background or the phone is locked * If your CGM does not supply a heartbeat, the app with stop automatically running when it is not open - * The implementation found in the `next-dev` branch does provide a heartbeat - * Read [Status for `next-dev` Branch](#status-for-next-dev-branch) + * These two branches are available which do provide a heartbeat for Omnipod 5 but are only for expert testers + * The `update_dev_to_3.14.4` branch uses the *ble-heartbeat* Bluetooth connection method + * The `next-dev` branch uses the *eager-connect* Bluetooth connection method + * See [Table of OmnipodKit Versions](../faqs/omnipod-faqs.md#table-of-omnipodkit-versions){: target="_blank"} for more information about Bluetooth connection methods + Please read the open beta [Omnipod 5 FAQS](../faqs/omnipod-faqs.md#is-omnipod-5-available-for-open-beta-testing){: target="_blank" }. Support for Omnipod 5 is available in development branches. Please report any issues you have in the zulipchat channel for [Loop Open Beta for Omnipod 5](https://loop.zulipchat.com/#narrow/channel/144182-development/topic/Loop.20Open.20Beta.20for.20Omnipod.205/with/607418710) topic in zulipchat. -* Include whether you are using the `dev` branch or `next-dev` branch of Loop +* Include the branch of Loop you are using * If the problem you are having is not associated with Omnipod 5, please use the appropriate channel * [Loop-dev status](https://loop.zulipchat.com/#narrow/channel/144182-development/topic/Loop-dev.20Status/with/600775735) * [Loop next-dev status](https://loop.zulipchat.com/#narrow/channel/144182-development/topic/Loop.20next-dev.20Status/with/604885611). @@ -198,6 +213,10 @@ You can also create an [Issue](https://github.com/loopandlearn/OmnipodKit/issues For those using iPhone 16 or 17e with Atlas DASH Pods, the keep alive support is available in the released code, `main`, v3.14.0 or later. +For experts, the new Bluetooth connection method, nicknamed *eager-connect*, is currently available for use with the `next-dev` branch, with interim version number 3.15.2 or higher. This needs testing by individuals who use an iPhone 16 or 17e with Atlas DASH pods. + +* If you test with `next-dev`, please try it without Pod Keep Alive and share your Loop Reports in zulipchat + - - - ### Status for Medtrum Support