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..2e729d4fe13 100644 --- a/docs/faqs/omnipod-faqs.md +++ b/docs/faqs/omnipod-faqs.md @@ -1,3 +1,65 @@ +## 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 initiating a Bluetooth connection 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 and it could take seconds to minutes for nominal communication to begin + * If you read the PR, you may see language about the system getting "wedged" where the iOS and Pod states were not communicating and suffered from a very-long timeout before trying again + * 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 the user can still notice a slight delay compared to the *keep-connected* method, but faster than with *ble-heartbeat* method + + +### 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..558d6e552b0 100644 --- a/docs/version/development.md +++ b/docs/version/development.md @@ -85,9 +85,9 @@ The table below lists active branches. |:--|:--|:--|:--| | main | 3.14.2 | 6 June 2026 | release | | 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)| +| update_dev_to_3.14.4 | 3.14.4 | 31 July 2026 | work in progress for the next version
See [PR 469](https://github.com/LoopKit/LoopWorkspace/pull/469) | +| `feat/all-managers`
- SHA `7a35cf6` | 3.14.4 | 31 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.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