Do-it-Youself (DIY) AID Systems
A Do-it-Yourself Automated Insulin Delivery Pump (DIY AID pump) can also be known as off-label pump, hacked pump, Loop, OpenAPS, APS-Android, iAPS and others. It may be cheaper and may offer different features.The user “builds and maintains” the system using a pump + CGM approved by Health Canada and computer code that is not approved. The code is created by the public (open source) and available on websites, with instructions. AID pumps (previously hybrid closed loop) systems use glucose sensors and algorithms to automatically adjust insulin up, down, off, on or to provide automated correction insulin. DIY AID usage may also be referred to as "looping".
Diabetes Canada in their position statement note the effectiveness of DIY AID pumps and additionally, “To be clear, we [Diabetes Canada] recommend that PWD [people with diabetes] take responsibility for the technical hardware and computer coding …there is no helpline to call when there are technical failures with DIY AID and when there are questions about system features the online community is where answers will be found.”
- Role of Educators in Off-Label Pump Programming
- Key Similarities & Differences between HCL Systems (on and off label)
- Types of off-label "Looping"
- Loop specific elements that users can adjust
- Resources for Off-Label Hybrid Closed Loop (HCL)
- It is important to still review the basics of diabetes control in pump therapy, especially safety and DKA prevention. As of April 2021 these off-label apps still require basal rates programmed by the user. Rates that are not appropriate for the user are likely to pose problems with glycemic control.
- Although DIY AID pumping can be complex, much of the analysis of data is similar e.g. focus on problem areas first (lows, then highs). Solutions to those problems may be similar or unique compared to normal pumping or to other algorithms. Most patients who loop are savvy in how to address most of their concerns and are safe on the system. If you feel they are not safe and cannot troubleshoot to stay safe, please consider discussions with the patient and endocrinologist to return to normal pumping (or as an alternate “open the loop”) for a time. This gives patients time to refer to their algorithm’s extensive documentation to become better informed, talk with their key looping resources and give other clinicians time to seek guidance if available.
- Patients returning to "normal" pumping (e.g. stopping the AID or looping altogether) need to know their TDD at a minimum, but ideally their basal rates, ISF, ICR and insulin action time. Patients can provide clinicians their TDD according to the history in their Apple Health App if using "Loop" app, or their profile report in Nightscout (settings > reports > profile).
- Educators can learn from patients. Avoid generalizing what patients tell you, as versions and types of algorithms differ and regularly change. Ask for explanations when you hear information that is unknown to you or sounds contrary to your knowledge.
- In an ideal world, clinicians would be just as informed of these algorithms as are savvy users. However, numerous pragmatics prevent this. Resources for learning about algorithms are below for clinicians, with the repeated caveat that algorithms can be updated at any time with different features and tweaks that are not Health Canada approved.
- For adjustments, focus first on patterns of problem areas (lows & highs) that are not addressed by the HCL system.
- Require CGM & usually carbohydrate counting
- System toggles basal off, on or up or may also use microboluses in response to CGM and algortihm
- Have different algorithms which determine when to toggle basal/microboluses
- Have varying features that may or may not be adjustable while loop is closed
- Subtract IOB from bolus calcuator result if the BG, IOB and algorithm determine it is required for safety.
- Can "open the loop" (turn off automated insulin adjustments)
- Have different glucose target(s) for use e.g. to address exercise
- Algorithms vary. How DIY AID sysems make decisions about automatic insulin dosing varies greatly.
- Bolusing varies.Some require minimal input whereas other might require more (e.g. amount of carb, suspected duration for that carb to be absorbed)
- Insulin on Board (IOB )calculations vary. Some may count all insulin (basal included); others may count only meal and correction boluses.
- Overrides vary. "temp" basal may not be the terminology used. Over-rides may impact any and all boluses, not just basal rates.
- Other features vary.
Many DIY AID systems are commonly referred to as “looping” but have different set ups and use different algorithms. Generally speaking, there are two major types of algorithms
“Loop” based algorithms:
“Loop.” This is its formal name. The algorithm lives in an off-label iPhone app (in Canada). Communications from pump to app may occur using a small radio device (RileyLink, OrangeLink etc) or may be made directly with the pump. Versions differ. A common programming feature is the need to include the suspected duration of carbohyrate when inputting those grams of carb. Some of the Loop’s capabilities are listed in the heading further down this page. However, again, upgrades can change quickly.
OpenAPS algorithms using Oref 0 and Oref 1:
Historically the algorithm lived in a "rig" (separate tiny computer). However, it can now "live" in a smart phone app in many cases.
- Android APS is a branch of OpenAPS, and runs the algorithm in an app on Android phone. Communications between pump and app may occur via a radio link.
- iAPS (previously FreeAPSX -note the X) runs the algorithm in an app on iPhone only. Communications between pump and app may occur via a radio link
This is for "Loop" and may not apply to Open APS (oref) systems.The following options can be adjusted by the user in the Master Version of Loop App as of now (April 13, 2021, tomorrow may be different.). This means, any of the following can be adjusted by the user to address glycemic control. Sorry for any ommissions!
- Basal rates
- Glucose targets for any time(s) of day can be preset and of course, changed on the fly (see Overrides below)
- Any units that are suggested for meal bolus or correction can be overriden with the units preferred by the user.
- Duration of Insulin Action (Settings >Insulin Model > Walsh)
- Overrides. These can be preset options or programmed on the fly. These can change glucose target and/or insulin dosing for any duration from 15 minutes up to indefinite. Note: 110% override of insulin means that all basal, and manual boluses and corrections will be increased by 10% while that override is on.
- Add Carbs Button and Absorption Time.
- Absorption time: For each addition of carb the person must choose an absorption time from 30 minutes to max 8 hours (although the dial offers 24 hours, it will roll back to 8 hr max). In other words, every food bolus is an extended bolus of some fashion. In this Master Branch, you cannot give all the food bolus at 0 minutes when entering the insulin through the "Add Carb Entry" button. Instead, 30 minutes is the lowest option, but most of the bolus is given at the time of manually programming, with the rest given as increased basal over the 30-minute period if that is the absorption period chosen. Pre bolusing is important for many people. Less important for those on very low carb diets. There are different options/methods for bolus delivery in the AB and FreeAPS branches of Loop (see below under Resources for URLs).
- People can input the meal in sections with different absorption times eg 20 g CHO @ 30 minutes plus 40g CHO @ 4 hours absorption. They can do as many of these as they wish (versus normal pumps that usually only allow for one extended bolus).
- Backwards adjustments to grams of carb eaten and duration of absorption are possible. e.g. The user can program in 30 g carb with suspected absorption over 2 hr. At 1 hour pc they are trending towards a low and realize they didn’t eat it all. They can go back and edit that they ate only 20 g. The algorithm will reduce the basal to adjust. They could also go backwards in time to change the absorption time to 1 hr.
- Any CHO entered can be "Saved without Bolusing." The system will interpret this to mean the user ate the carb and didn't bolus. The system will attempt to increase the basal over time to address the carb eaten for the absorption duration chosen...although it will still modulate basal according to glucose readings, so may not give all the insulin a user expected. This is not perfect. It can still over-deliver and result in hypoglycemia or under-deliver and result in hyperglyemia. Carbs saved without bolusing that weren’t actually eaten require the user to view the history, swipe left and delete, elsewise the current Master algorithm will still give insulin for it as per above.
- For any CHO entered, the user can look at the progress of the CHO eaten and bolus delivered. e.g. 30 g CHO programmed for 3 hr absorption and currently 16 g has been absorbed with a system-estimated 4 hr 15 min time for full absorption of the 30 grams.
- Many users will be surprised to go back through their day's meals to learn how much "estimated" CHO was truly absorbed. e.g. more CHO absorbed than what they ate. In other words, many users may find it beneficial to bolus for protein and fat according to whatever method they prefer or works for them.
- Again, these algorithms are tweaked regularly so the above items many not be accurate at the time you are viewing this. Please see the resources below for more up to date documents.
Please note that any off-label hybrid closed loop algorithm may be updated and revised at any time, eg. tweaks, new features etc.
- Looping information at https://loopkit.github.io/loopdocs/ "LoopDocs"
- Loop and Learn website and Loop and Learn YouTube Channel. The 9 minute video "Bolusing for Challenging Meals" nicely represents bolusing options available in loop. In another video, they wallk viewers through the LoopDocs via video.
- Looping basal and ISF . https://www.youtube.com/watch?v=AgSZp7juPc4&list=PLfnu6D6qjfHsXnqCqpnlZTBDryaj2m-gk&index=7
- RileyLink or OrangeLink or EmaLink (one is needed to create communications betwee pump and iPhone Loop app) GetRileyLink Order Site - GetRileyLink or Step 5 Order a RileyLink - LoopDocs (loopkit.github.io).
- Note, there 3 algorithms commonly available for Loop as of April 15, 2021, and endless "developer" versions. All of these can be changed, tweaked at any point in time and be available for patients to use.
- Loop Master on s://loopkit.github.io/loopdocs/
- Loop AB (automated boluses) on s://loopkit.github.io/loopdocs/
- FreeAPS on https://www.loopnlearn.org/freeaps/ and https://www.loopnlearn.org/freeapsdoc/ according to our understanding is no longer updated as of late April 2021 (not to be confused with FreeAPSX under OpenAPS)
- At https://openaps.org/
- #openaps and #WeAreNotWaiting on Twitter
- YouTube Dana Lewis and Open APS
- A "Rig" or "Edison" or sometimes even a Link (Riley etc) could be used. These are all "boxes" that faciliate communications between pump and off-label looping apps.
- FreeAPS X is a new (end April, 2021) looping system for iOS based on OpenAPS algorithms. FreeAPS X (the X is the critical part to distinguish from an earlier FreeAPS based on loop code) is not a branch or fork of DIY Loop. The iPhone and radio-link will take the place of the "rig" and entering information into Nightscout. This may still be in Beta testing as of May 2021.
Report Generating Software
- Nightscout is a URL website setup by the person with diabetes .
- Tidepool...see the Tidepool in 2 minutes video on the page
- Apple Health app (pull down on iPhone screen, search Health) shows daily, weekly, monthly insulin use for those using "Loop" app.