Skip to content

Commit

Permalink
Merge branch 'main' into bb_reorg
Browse files Browse the repository at this point in the history
  • Loading branch information
marionbarker committed Jul 31, 2024
2 parents 2c21149 + 9ebb1af commit 4ad3cc8
Show file tree
Hide file tree
Showing 6 changed files with 94 additions and 89 deletions.
1 change: 1 addition & 0 deletions docs/browser/bb-errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ If you are still unsuccessful, then post your request for help along with the li
* [https://github.com/loopdocs-tester/LoopWorkspace](https://github.com/loopdocs-tester/LoopWorkspace){: target="_blank" }

Mentors can go to your public&nbsp;_<span translate="no">GitHub repository</span>_, make sure your code is up to date, examine your customizations (if any), then click on the Action tab and view your log files directly.

* Do not copy from the log file and post the words
* Do not take a screenshot of what you think is an error

Expand Down
4 changes: 3 additions & 1 deletion docs/faqs/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ When Google Translate is selected:

**<span translate="no">dynos</span>**&nbsp; (dynos): used to reboot a Nightscout Site

**<span translate="no">dynamic carb absorption</span>**&nbsp; (dynamic carb absorption): Loop models the expected glucose change based on carbs entered, absorption time and your settings; and adjusts based on measured glucose

**<span translate="no">EmaLink</span>**&nbsp; (EmaLink): radio-frequency device Loop uses to control Eros pods (aka. Gen 3) and older Medtronic pumps

**<span translate="no">EGP</span>**&nbsp; (EGP): Endogenous Glucose Production: glucose produced by the body from its reserves (mainly glycogen in the liver)
Expand Down Expand Up @@ -114,7 +116,7 @@ When Google Translate is selected:

**<span translate="no">HUD</span>**&nbsp; (HUD): Heads-Up Display at top of Loop main screen, phone in portrait mode

**<span translate="no">ICE</span>**&nbsp; (ICE): Insulin Counteraction Effect - Loop models the expected glucose change based on carbs entered, absorption time and your settings; and adjusts based on measured glucose
**<span translate="no">ICE</span>**&nbsp; (ICE): Insulin Counteraction Effect - Refers to the difference between observed change in blood glucose and the change in blood glucose that Loop models based on the effects of insulin.

**<span translate="no">Identifiers</span>**&nbsp; (Identifiers): names of modules found on your Apple Developer Identifiers page that are required for GitHub build method

Expand Down
119 changes: 56 additions & 63 deletions docs/nightscout/remote-errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* This is a&nbsp;_<span translate="no">Loop</span>_&nbsp;and/or *Nightscout* issue, not related to remote configuration
* Review the [LoopDocs: *Nightscout* with&nbsp;_<span translate="no">Loop</span>_](update-user.md) page
* Check out links on the [LoopDocs: *Nightscout* Troubleshooting](troubleshoot.md) page
* Make sure Looper's phone is connected to the internet so it can upload to *Nightscout*
* Make sure the Looper's phone is connected to the internet so it can upload to *Nightscout*

## Remote Commands Stopped Working

Expand All @@ -18,9 +18,9 @@ If you are using LoopCaregiver, try the remote command directly from Nightscout

### *Nightscout* Config and *Loop* Build Method

Ensure your *Nightscout* version is at least version 14.2.6.
Ensure your *Nightscout* version is at least 14.2.6.

Verify that you performed all the [Remote Configuration](remote-config.md) steps for the *Nightscout* site including sending an override from the&nbsp;_<span translate="no">Loop</span>_&nbsp;phone to *Nightscout*.
Verify that you performed all the [Remote Configuration](remote-config.md) steps for the *Nightscout* site, including sending an override from the&nbsp;_<span translate="no">Loop</span>_&nbsp;phone to *Nightscout*.

#### BadDeviceToken

Expand All @@ -35,7 +35,7 @@ If you attempt to issue a command from *Nightscout* Careportal; after you hit su
Error: APNs delivery failed: BadDeviceToken
```

If you attempt to issue a command using *Loop Caregiver* ; after you authenticate the command, you will see the error message listed below and shown in the screenshot.
If you attempt to issue a command using *Loop Caregiver*; after you authenticate the command, you will see the error message listed below and shown in the screenshot.

```
HTTP Error
Expand All @@ -54,19 +54,19 @@ If you added this Build-Time Flag: `REMOTE_OVERRIDES_DISABLED`

You will not see any errors, but nothing will happen when you issue any kind of remote command.

**Solution**: Remove `REMOTE_OVERRIDES_DISABLED` from `LoopConfigOverride.xcconfig` file and rebuild the&nbsp;_<span translate="no">Loop</span>_&nbsp;app.
**Solution**: Remove `REMOTE_OVERRIDES_DISABLED` from `LoopConfigOverride.xcconfig` file and rebuild the&nbsp;_<span translate="no">Loop</span>_&nbsp;app.

### Incorrect Password (OTP) Error

The references to Caregiver below is the person sending the commands. There are specific *Loop Caregiver* app insructions that you modify for your authenticator. You must have the&nbsp;_<span translate="no">Loop</span>_&nbsp;phone with you to troubleshoot this problem.
The references to ‘caregiver’ below refer to the person sending the commands. You must have the&nbsp;_<span translate="no">Loop</span>_&nbsp;phone with you to troubleshoot this problem.

* The Apple clock should be set to automatic on both the Looper's phone and Caregiver’s device.
* The Apple clock should be set to automatic on both the Looper's phone and the caregiver’s device.
* If the clock is incorrect, even slightly, remote commands will fail.
* Check if One-Time Passwords (OTP) align between Caregiver and&nbsp;_<span translate="no">Loop</span>_.
* Check if One-Time Passwords (OTP) align between *Loop Caregiver* and&nbsp;_<span translate="no">Loop</span>_.
* In&nbsp;_<span translate="no">Loop</span>_: Settings -> Services -> *Nightscout*
* In *Loop Caregiver* : Settings -> Tap on Loopers Name
* In *Loop Caregiver* : Settings -> Tap on Looper's Name
* Observe the 6-digit OTP as they change
* If the OTP don't match, you can reset it:
* If the OTPs don't match, you can reset it:
* **Warning**: If there are multiple devices (or people) sending remote commands, this procedure **resets the OTP for all**
* _<span translate="no">Loop</span>_: Settings -> Services -> *Nightscout* -> One-Time Password -> Tap Reload button
* The QR code is different as soon as you hit `Reload`
Expand All @@ -77,71 +77,64 @@ The references to Caregiver below is the person sending the commands. There are

## Undelivered or Expired Commands

Apple Push Notifications will often not make it to an app, either due to your settings or intentional limitations by Apple. This error can appear in various forms:

* Push notification banner never shows on Looper’s device.
* Push notification banner shows but nothing happens in&nbsp;_<span translate="no">Loop</span>_ (no error or success message afterwards)
* Error message shows that Password (OTP) is expired

While&nbsp;_<span translate="no">Loop</span>_&nbsp;does not have control over Push Notification timely delivery, there are things that can be done to mitigate these issues. Note that rebuilding&nbsp;_<span translate="no">Loop</span>_, *Loop Caregiver* or *Nightscout* is generally not going to help.

Check these settings on the Looper’s device, not the Caregivers. Several of these are related to Apple suppressing notifications.

* Notifications
* Settings -> Notifications ->&nbsp;_<span translate="no">Loop</span>_
* Turn on “Allow Notifications”
* Turn on “Time Sensitive Notifications”
* Focus Modes
* For all focus modes (ex: Do Not Disturb, Sleep), make sure&nbsp;_<span translate="no">Loop</span>_&nbsp;is listed as an app allowing Notifications.
* To Adjust
* Settings -> Focus
* Select the focus mode (ex: Do Not Disturb, Sleep)
* Under “Allow Notifications, tap “Apps”
* Add “&nbsp;_<span translate="no">Loop</span>_&nbsp;” to the list.
* Turn on “Time Sensitive Notifications”.
* Background App Refresh
* Settings -> General -> Background App Refresh
* Select “On” up top
* Activate&nbsp;_<span translate="no">Loop</span>_&nbsp;toggle in list
* Lower Power Mode
* Turn off if able

Some other things to try on the Looper’s phone:

* Reboot phone
* This sometimes resets Apple’s push notification limit.
* Try wifi instead of cellular, if able
* Apple may not deliver notifications on cellular as often as wifi.
* Charge the phone
* If the battery is low, iOS may not deliver notifications to save battery life.
* Limit the number of&nbsp;_<span translate="no">Loop</span>_&nbsp;commands you send in a short period. Apple may throttle notifications if too many are received. (i.e. no more than 1 or 2 per hour may help).
* Consider disabling “spammy” notifications from other apps. This is only a theory, but it is possible that other apps can cause the system to throttle all notifications, including&nbsp;_<span translate="no">Loop</span>_.
* Wait 24 hours or so as it often just takes time for the push notification limits to “reset”.
* iOS 15.3.x: Note there are reports of Remote notifications not being received to the Loopers device for iOS version 15.3 and 15.3.1. This is fixed in iOS version 15.4.
Apple push notifications may not always reach your app due to various settings or Apple's intentional limitations. This issue can manifest in several ways:

* The push notification banner never appears on the Looper’s device.
* The push notification banner appears, but nothing happens in&nbsp;_<span translate="no">Loop</span>_&nbsp;(no error or success message afterward).
* An error message in *Nightscout* or *Loop Caregiver* indicates the Password (OTP) is expired.

While&nbsp;_<span translate="no">Loop</span>_&nbsp;cannot control the timely delivery of push notifications, there are several steps you can take to mitigate these issues. Note that rebuilding&nbsp;_<span translate="no">Loop</span>_&nbsp;or *Loop Caregiver* generally will not resolve the problem.

Check these items on the Looper’s phone, not the caregiver's.

1. Reboot the phone.
1. Wait 24 hours as it often takes time for the push notification limits to reset.
1. Limit the number of&nbsp;_<span translate="no">Loop</span>_&nbsp;commands you send in a short period.
* Apple may throttle notifications if too many are received.
* Sending no more than 1 or 2 per hour may help.
1. Disable notifications from other apps.
* It is possible that other apps can cause the system to throttle all notifications, including&nbsp;_<span translate="no">Loop</span>_.
1. Enable Time Sensitive Notifications:
* Apple Settings -> Notifications ->&nbsp;_<span translate="no">Loop</span>_.
* Turn on “Allow Notifications”.
* Turn on “Time Sensitive Notifications”.
1. Upgrade *Nightscout*:
* *Nightscout* version 15.0 (released late 2023) and greater supports time sensitive notifications.
* This can help iOS to deliver remote notifications faster.
1. Adjust Focus Modes:
* For all focus modes, make sure&nbsp;_<span translate="no">Loop</span>_&nbsp;is listed as an app allowing Notifications.
* Apple Settings -> Focus
* Select the focus mode (e.g., Do Not Disturb, Sleep).
* Under “Allow Notifications,” tap “Choose Apps”.
* Add&nbsp;_<span translate="no">Loop</span>_&nbsp;to the list.
1. Turn on Background App Refresh:
* Apple Settings -> General -> Background App Refresh
* Select “On” at the top.
* Activate the&nbsp;_<span translate="no">Loop</span>_&nbsp;toggle in the list.
1. Try using Wi-Fi instead of cellular if possible:
* Apple may not deliver notifications on cellular as often as on Wi-Fi.
1. Charge the phone:
* If the battery is low, iOS may not deliver notifications to save battery life (e.g., while on Low Power mode).

## How to Ask for Help

This is helpful information to share when requested by helpers. If you are not using *Loop Caregiver*, review the response seen on the *Nightscout* site.

1. Activate an override _from within&nbsp;_<span translate="no">Loop</span>_ _. Does *Nightscout* show the active override?
1. Activate an override _from *Nightscout* _. Does it change the active override in&nbsp;_<span translate="no">Loop</span>_?
1. Activate an override from within&nbsp;_<span translate="no">Loop</span>_. Does *Nightscout* show the active override?
1. Activate an override from *Nightscout*. Does it change the active override in&nbsp;_<span translate="no">Loop</span>_?
1. Do errors show in *Loop Caregiver* or *Nightscout* Careportal when you send a remote command?
* Share screenshots of error if any
1. Do errors show in iOS Notifications on the Looper’s device?
* Check their Notification history in iOS by swiping down
* Share screenshots of errors if any
* In both *Nightscout* and *Caregiver*, you can tap on an error to read specific error details.
* Share screenshots of errors
1. What&nbsp;_<span translate="no">Loop</span>_&nbsp;version are you using? Released (main) or development (dev)? Approximately when did you update last?
* The minimum version that support remote bolus and carbs is&nbsp;_<span translate="no">Loop</span>_&nbsp;3
* The minimum version that supports remote bolus and carbs is&nbsp;_<span translate="no">Loop</span>_.
1. What iOS version is being used on the Looper’s device?
* Note that iOS 15.3.x had notification issues
* Update to a newer version
1. How did you build&nbsp;_<span translate="no">Loop</span>_?
* Build with Xcode to device (typical)?
* Using AppCenter or Diawai? A special environment variable must be set LOOP_PUSH_SERVER_ENVIRONMENT=production
* Web browser using GitHub Actions?
* Xcode?
* AppCenter or Diawi? A special environment variable must be set: `LOOP_PUSH_SERVER_ENVIRONMENT=production`

Mention which troubleshooting steps you have completed so we know whether to ask about these again.


## Other Errors

Once you've set up remote commands, you may encounter errors when trying to run them via *Nightscout* or iOS Shortcuts. Below are the most common and typical solutions.
Expand Down
Loading

0 comments on commit 4ad3cc8

Please sign in to comment.