Skip to content

✏️ Fix Broken URLs to Custom Browser Build #896

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 13 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 11 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions docs/browser/custom-browser.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ Please read the documentation for these on the [Loop and Learn: Customization Se

* [List of Customizations Available](https://www.loopandlearn.org/custom-code#custom-list){: target="_blank" }
* When building using a browser you will be modifying one of the special files that enable the *GitHub* action to build the *Loop* app. This file is called the build_loop.yml file and can be located at your `fork` of your `LoopWorkspace` repository. There are several sections you need to review on the *Loop and Learn* page:
* [Overview](https://www.loopandlearn.org/custom-code/#github-intro){: target="_blank" } of how to modify the build_loop.yml file
* You will copy a template that you paste into that file and then edit it to keep just the customizations you want
* [Template for `main`](https://www.loopandlearn.org/custom-code#template){: target="_blank" }
* [Template for `dev`](https://www.loopandlearn.org/custom-code#template-dev){: target="_blank" }
- [Overview](https://www.loopandlearn.org/custom-code-browser-build/){: target="_blank" } of how to modify the build_loop.yml file
- [Template for `main`](https://www.loopandlearn.org/custom-code-browser-build/#template-main){: target="_blank" }
- [Template for `dev`](https://www.loopandlearn.org/custom-code-browser-build/#template-dev){: target="_blank" }

## Personal Customizations

Expand Down
2 changes: 1 addition & 1 deletion docs/build/custom-mac.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ The *Loop and Learn* team is committed to maintaining these prepared customizati
Please read the documentation for these on the [Loop and Learn: Customization Select Page](https://www.loopandlearn.org/custom-code){: target="_blank" }:

* [List of Customizations Available](https://www.loopandlearn.org/custom-code/#custom-list){: target="_blank" }
* [Customization Select Script](https://www.loopandlearn.org/custom-code/#customization-select){: target="_blank" }
* [Customization Select Script](https://www.loopandlearn.org/custom-code-mac-xcode-build/#script){: target="_blank" }

## Personal Customizations

Expand Down
12 changes: 6 additions & 6 deletions docs/faqs/cgm-faqs.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,27 +101,27 @@ sequenceDiagram

### Troubleshoot Connections

The "normal" *Libre* 2 sensors have a firmware configuration that makes them slow to reconnect when they loose the connection to iOS (both iOS and the sensors are to blame for this). What usually helps is to make sure your app is open and in the foreground and that your phone is unlocked. iOS seems to be better at reconnecting Bluetooth devices under such conditions (i.e. it gives more Bluetooth priority to the foreground app). If you need to modify how quickly your phone locks, this is found under iOS settings, Display & Brightness, Auto-Lock.
The "normal" *Libre* 2 sensors have a firmware configuration that makes them slow to reconnect when they lose the connection to iOS (both iOS and the sensors are to blame for this). What usually helps is to make sure your app is open and in the foreground and that your phone is unlocked. iOS seems to be better at reconnecting Bluetooth devices under such conditions (i.e. it gives more Bluetooth priority to the foreground app). If you need to modify how quickly your phone locks, this is found under iOS settings, Display & Brightness, Auto-Lock.

If you try to pair a sensor in the app multiple times in a short period (let's say within a couple of minutes), you may need to just stop and wait.

* A "pairing" sends a lot more (16 times the normal amount) of data between the app and sensor than a normal NFC scan to retrieve glucose data
* Multiple pairing attempts may make the sensor temporarily unable to function
* If this matches your use case, shut off your phone and let it stay shut down for up to five minutes

Optionally: you can use miaomiao or bubble third party transmitters attached on top of your normal *Libre* 2 sensors . Although the setup is a bit more bulky, it works and does not have connection problems. LibreTransmitter supports bubble and miaomiao on top of *Libre* 1 sensors, but it also works with *Libre* 2 sensors.
Optionally: you can use miaomiao or bubble third-party transmitters attached on top of your normal *Libre* 2 sensors. Although the setup is a bit more bulky, it works and does not have connection problems. LibreTransmitter supports bubble and miaomiao on top of *Libre* 1 sensors, but it also works with *Libre* 2 sensors.

### Can I use *Libre* sensors with a reader like Miao Miao?

Loop 3.4.x and later enables the use of those *Libre* sensors supported by [LibreTransmitter](https://github.com/dabear/LibreTransmitter#libretransmitter-for-loop){: target="_blank" }.
Loop 3.4.x and later enables the use of those *Libre* sensors supported by [LibreTransmitter](https://github.com/LoopKit/LibreTransmitter/#libretransmitter-for-loop){: target="_blank" }.

### What about other *Libre* sensors?

There are a number of *Libre* sensors in which the only option for digital access to the CGM readings is to use the app provided by the vendor: [*LibreLinkUp*](https://librelinkup.com/){: target="_blank" }. This enables you to upload your data to the *LibreLinkUp* servers and then access the data from there.

**The use of *LibreLinkUp* requires internet access via WiFi or Cell service.**

If this is your only option for CGM, evaluate whether you want to add xDrip4iOS as a CGM option. Instructions for this customization are found at [Loop and Learn: Add CGM to Loop](https://www.loopandlearn.org/custom-code/#add-cgm){: target="_blank" }. The reason to recommend this option is that xDrip4iOS can sense when the *Libre* transmits glucose readings to your phone, although it cannot read the glucose value. Shortly thereafter, it will request the CGM reading from *LibreLinkUp*.
If this is your only option for CGM, evaluate whether you want to add xDrip4iOS as a CGM option. Instructions for this customization are found at [Loop and Learn: Add CGM to Loop](https://www.loopandlearn.org/custom-code/#add-cgm-client){: target="_blank" }. The reason to recommend this option is that xDrip4iOS can sense when the *Libre* transmits glucose readings to your phone, although it cannot read the glucose value. Shortly thereafter, it will request the CGM reading from *LibreLinkUp*.

If you prefer not to customize Loop, then you can configure [Nightscout](https://nightscout.github.io/uploader/uploaders/#abbott-freestyle-*Libre*){: target="_blank" } to access data from *LibreLinkUp* and then use Nightscout as a CGM.

Expand All @@ -144,9 +144,9 @@ If you can connect your CGM directly to *Loop* that is preferred. You can custom

If possible, it is recommended that *Libre* users take advantage of [LibreTransmitter](https://github.com/LoopKit/LibreTransmitter/blob/main/readme.md){: target="_blank" } which is incorporated into the *Loop* app for version 3.4 and later. However, some *Libre* sensors have encryption that limits ability to get data through open-source code and instead requires using the *LibreLinkUp* server.

You can add *xDrip4iOS* as a CGM option to the *Loop* app by applying a [code customization](https://www.loopandlearn.org/custom-code){: target="_blank" }. This uses the shared AppGroup feature to transfer data from the CGM app to Loop. This is not the preferred approach if you have another choice. For *Libre* users with a sensor that is not handled by LibreTransmitter, this is your only option for closed-loop.
You can add *xDrip4iOS* as a CGM option to the *Loop* app by applying a [code customization](https://www.loopandlearn.org/custom-code/#add-cgm-client){: target="_blank" }. This uses the shared AppGroup feature to transfer data from the CGM app to Loop. This is not the preferred approach if you have another choice. For *Libre* users with a sensor that is not handled by LibreTransmitter, this is your only option for closed-loop.

* xDrip4iOS can sense when the *Libre* are providing updates over Bluetooth but cannot interpret the readings because of the encryption for some sensor models
* xDrip4iOS can sense when the *Libre* is providing updates over Bluetooth but cannot interpret the readings because of the encryption for some sensor models
* xDrip4iOS waits a few seconds after the new reading and then queries *LibreLinkUp* using your login credentials
* Be aware this makes your ability for closed-loop dependent on having internet access

Expand Down
34 changes: 20 additions & 14 deletions docs/loop-3/add-cgm.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,11 @@ To use the Dexcom G5, G6 or ONE:

#### Where to get the Transmitter ID for Dexcom G6?

You can find the **transmitter ID** in your Dexcom G6 app or on the back of the transmitter box (please refer to the below screenshots).
You can find the **transmitter ID** in your Dexcom G6 app or on the back of the transmitter box (see screenshots below).

* In your Dexcom G6 app
* Tap "⚙️ Settings"
* The **transmitter ID** is located under section "CGM" where it says "Transmitter" with a the 6-digit string.
* The **transmitter ID** is located under the section "CGM" where it says "Transmitter" with a 6-digit string.
* Alternatively, while in Settings, tap on the <kbd>></kbd> in the "Transmitter" row: your **transmitter ID** is the 6-digit identifier next to "SN" (short for serial number).

![dexcom app settings to retrieve transmitter id](img/dexcom-g6-transmitter-id.svg){width="550"}
Expand All @@ -92,11 +92,11 @@ It is suggested that you enable [Remote Upload from Loop](#remote-upload-from-lo

#### Change Dexcom Sensor

When you change a Dexcom G5, G6 or ONE sensor, you do this in the Dexcom app. When the sensor completes warmup and CGM values are once again reported in the Dexcom app, Loop picks these values up because you are using the same Dexcom Transmitter.
When you change a Dexcom G5, G6, or ONE sensor, you do this in the Dexcom app. When the sensor completes warmup and CGM values are once again reported in the Dexcom app, Loop picks these values up because you are using the same Dexcom Transmitter.

#### Change Dexcom Transmitter

When you change the Dexcom G5, G6 or ONE Transmitter, you need to delete your CGM selection from Loop and then add it back after you complete the pairing with the transmitter in your Dexcom app.
When you change the Dexcom G5, G6, or ONE Transmitter, you need to delete your CGM selection from Loop and then add it back after you complete the pairing with the transmitter in your Dexcom app.

??? info "FYI: When You Change Dexcom Transmitters (click to open)"

Expand Down Expand Up @@ -124,27 +124,27 @@ It is suggested that you enable [Remote Upload from Loop](#remote-upload-from-lo
{align="center"}

!!! tip "Don't forget Health Permissions"
For those switching from *Dexcom G6* to *Dexcom G7*, you might forget to add permission for the *G7* app to write to *Apple Health*. If you want long-term history of those CGM readings to persist in *Apple Health*, turn on the permission for the *Dexcom* app to write glucose to *Health*.
For those switching from *Dexcom G6* to *Dexcom G7*, you might forget to add permission for the *G7* app to write to *Apple Health*. If you want the long-term history of those CGM readings to persist in *Apple Health*, turn on the permission for the *Dexcom* app to write glucose to *Health*.

If either the G6 or the G7 has permission to write to *Apple Health*, then *Loop* will delete the *Loop* glucose data in *Apple Health* that are older than 3 hours and newer than 1 week. The *Dexcom* app will write its glucose values to Health when each value is 3 hours old.

### Libre

The Libre plugin for Loop, [LibreTransmitter](https://github.com/LoopKit/LibreTransmitter/), connects directly via Near Field Communication (NFC) during pairing (for some sensors) and via Bluetooth (direct to sensor or direct to a transmitter attached to the sensor) for regular readings. No other app is needed.

* Libre 1 are supported but must use a third-party transmitter (miaomiao and bubble transmitters are supported)
* Libre 1 is supported but must use a third-party transmitter (miaomiao and bubble transmitters are supported)
* European Libre 2 can be used directly or via transmitter
* American Libre 2 is not supported
* Libre 3 is not supported

!!! tip "Connecting to Libre"
First reading for a new sensor will often take 2-4 minutes. This is due to some technicalities on how the Libre sensor announces its presence via bluetooth.
The first reading for a new sensor will often take 2-4 minutes. This is due to some technicalities on how the Libre sensor announces its presence via Bluetooth.

There are solutions for some Libre 3 but they cannot reside on an iPhone. The Android solution can be uploaded to Nightscout, with Loop using Nightscout as a Remote CGM; but this requires internet access to continue closed-loop performance.

Part of the problem with Libre sensors is that there are differences in region, type and "security generations" which makes it hard to account for all variants. For example, the Libre 2 US has a different "security generation" than European Libre 2 sensors (different encryption in the data transmitted over bluetooth).
Part of the problem with Libre sensors is that there are differences in region, type, and "security generations" which makes it hard to account for all variants. For example, the Libre 2 US has a different "security generation" than European Libre 2 sensors (different encryption in the data transmitted over Bluetooth).

Libre 3 sensors have started appearing as well, but are unsupported. Other Libre sensors that are unsupported: Libre Pro, Libre H, Libre Sense Glucose Sport Biosensors.
Libre 3 sensors have started appearing as well, but are unsupported. Other Libre sensors that are unsupported: are Libre Pro, Libre H, and Libre Sense Glucose Sport Biosensors.

### Medtronic Enlite CGM

Expand All @@ -158,7 +158,7 @@ The Medtronic Enlite CGM is only available if you have connected it to your comp

!!! warning "If you need to use *Dexcom Share*"

If the dexcom is on another phone, you can use Share if internet / cell coverage is good.
If the Dexcom is on another phone, you can use *Dexcom Share* if Internet/cell coverage is good.

*Dexcom Share* is not available for Dexcom ONE CGM.

Expand All @@ -183,9 +183,9 @@ In addition to the risks of missing data, if the internet is not reliable, you m

_Sensors that can be added to Nightscout via other apps include Dexcom, some Libre, and some Medtronic sensors. Please refer to [Nightscout Docs: Configure your Uploader](https://nightscout.github.io/uploader/setup/){: target="_blank" }._

There are third-party apps that bring Libre data to your Loop phone. Cuustomization instructions are provided at the `Loop and Learn` website: [Libre Support for Loop 3.2.x](https://www.loopandlearn.org/custom-code/#add-cgm-browser){: target="_blank" } that explain how to modify Loop 3 to use one of those apps for Browser Build. The Mac instructions are found on the same page. Please use these steps to get a version of Loop that does not rely on internet access to work.
There are third-party apps that bring Libre data to your Loop phone. Customization instructions are provided at the `Loop and Learn` website: [Libre Support for Loop 3.4.x](https://www.loopandlearn.org/custom-code/#add-cgm-client){: target="_blank" } that explain how to modify Loop 3 to use one of those apps for Browser Build. The Mac instructions are found on the same page. Please use these steps to get a version of Loop that does not rely on internet access to work.

It is suggested that you use Open Loop during warmup until the new sensor begins to provide reasonable data. This is especially important with European Libre 2 using a direct Bluetooth connection.
It is suggested that you use Open Loop during warmup until the new sensor begins to provide reasonable data. This is especially important with European Libre 2, using a direct Bluetooth connection.

The xDrip4iOS app (which can also be found in the app store under the name Shuggah) may have a problem during the warmup of a new sensor (European Libre 2 using a direct Bluetooth connection). There were two instances of crazy high values being reported and picked up by Loop 3. One Shuggah user and one xDrip4iOS user who connected via Nighscout as a CGM with Loop 3 had a serious overdose of insulin because of bad readings with a new sensor. The developers of xDrip4iOS fixed their application - so make sure you have the latest version. Those developers have no control over what is provided by Shuggah.

Expand All @@ -194,7 +194,13 @@ In addition to the risks of missing data, if the internet is not reliable, you m
{align="center"}


The user must enter both the URL and API_SECRET for their site to ensure the security of the data. The URL must start with `https://` and cannot have any extra spaces in the line.
The user must enter both the **`URL`** and **`API_SECRET`** for their Nightscout site to ensure the security of the data.

!!! important "Format of the Nightscout URL"

The *Nightscout* URL must start with `https://`.
It cannot have any extra spaces in the line.
The `s` character is required after `http` and before `://`.

![Nightscout Remote CGM entry screen](img/nightscout-cgm-entry.svg){width="350"}
{align="center"}
Expand All @@ -220,7 +226,7 @@ Scroll to the bottom of the screen and select `Delete CGM`.

### Dexcom G5, G6 and One (not G7)

For older Dexcom sensors, the transmitter is replaced separately about once every three months. In order to enter a new transmitter number, you must first delete the CGM and then add the CGM.
For older Dexcom sensors, the transmitter is replaced separately about once every three months. To enter a new transmitter number, you must first delete the CGM and then add the CGM.

Detailed instructions are found at [CGM FAQs: What do I do when I switch Dexcom transmitters?](../faqs/cgm-faqs.md#what-do-i-do-when-i-switch-dexcom-transmitters).

Expand Down
Loading