Just a summary post to address a lot of the questions that I’ve gotten about Control-IQ, and also specifically about how it differs from Loop. This is not a QUALITATIVE kind of post…meaning I’m trying my best to not make pros/cons judgements in this post. Certainly I have opinions about the pros/cons, but this is more just meant to be straight dry info.
Also: Just to be clear, I have no affiliation with Tandem. I have not been provided any compensation, either in money or gear. We were out-of-warranty on our old original pod system and knew that system was not what Anna could go back to using (her insulin needs are too high and she gets more cannula leaks on pods than she wants to deal with). We paid for the t:slim x2 system and supplies through my insurance (regular co-pays and deductibles). Hopefully the reason for our trying out the Control-IQ system was well-explained in my previous post, check that out if you are wondering why.
Control-IQ has three different sets of target ranges. The standard range is 112.5-160 mg/dL. There are two “activity” modes that will change the target range…sleep mode is 112.5-120 mg/dL and exercise mode 140-160 mg/dL. You can schedule sleep based on days of week so that the system automatically switches to the sleep targets at those times/days. Sleep targets can also be turned off/on manually at anytime by the user. Exercise targets cannot be scheduled, but instead must be manually turned off/on by the user specifically. The target ranges work as the triggers for when Control-IQ will maintain your profile basal* (up to 3.0 U/hr…see discussion below on system-initiated changes to settings) or when it will increase/decrease basals. For when exercise or normal modes are active, the predicted 180mg/dL within 30 minutes threshold also will trigger an automatic correction bolus. In normal and sleep modes, your basal insulin delivery will be suspended if predicted BG in 30 minutes is below 70 mg/dL. In exercise mode that basal suspend is raised to 80 mg/dL.
[Note: recent investor call with Tandem reportedly included the information that users would be able to specify targets in an update to Control-IQ. I have no specifics on that info. It’s possible it could be something like exercise mode could be 150-180 for some people…or that normal mode could be 112.5-140…or something entirely different. It’s too soon to know, but interesting for sure.]
Loop allows you to set your own target range between minimum of 60 mg/dL and maximum of 180 mg/dL. Loop will also let you save target ranges differently based on time of day.
Kinds of Insulin Adjustments
Control-IQ uses temporary basal adjustments. If you are in normal targets mode or exercise mode, you will also have access to an automatic bolus correction if you are predicted to go above 180 mg/dL within 30 minutes. An automatic bolus aims to give 60% of the insulin needed to achieve 110 mg/dL in normal mode, 140 mg/dL in exercise mode. Automatic bolus corrections are not available in sleep mode. Automatic boluses are also only available if there hasn’t been a bolus within the previous 60 minutes…doesn’t matter if it was a food bolus or a correction bolus…any bolus within previous 60 minutes will prevent an automatic bolus.
Loop uses temporary basal adjustments. *If you build an experimental branch of Loop, you can try a version that uses automatic boluses instead of temporary basal adjustments, for correcting high blood sugars. If using automatic boluses, you will not get any increased basal rates for correcting high BGs…all corrections are in the form of boluses.
Prediction Timeframes for Adjustments
Control-IQ basal adjustments (and automatic boluses) are based on the BG value predicted in 30 minutes time. The user will not see the value of the 30-min predicted BG, but you can see whether the basal is being raised, lowered, stopped, or kept at the user’s profile. A few clicks on the pump screen will also show you the exact active basal rate if you wanted to know. (Note: I hear that Tandem will be soon be releasing a mobile app that will allow the user to see all that info on your mobile device without needing to pull pump out.)
Loop uses a 6-hour predicted BG curve to make insulin adjustment decisions. The full prediction curve is shown on Loop’s main screen. If any part of the 6-hour prediction goes below the user’s suspend threshold, Loop will suspend basals. And, Loop will not add additional insulin, even if you are above targets, if your BG is predicted to be in range within 6 hours. In fact, if you are above target and predicted to go below targets within 6 hours, Loop will start to decrease basals. That full 6-hour window is often difficult for new users to be “in agreement with” and probably is the most common FAQ in Looped group. You can read more about the details for when Loop increases/decreases basals here.
USER-initiated settings changes
The ability to let a closed loop system know about a change from “standard operating conditions” is an important design point. For example…taking a new medication, doing an exercise, or hormonal shift in insulin needs can all require a “heads up” to your closed loop that the usual settings for basal, carb ratio, or correction factor/ISF are not going to apply for awhile. By telling your closed loop about these changes, your loop should do a better job at predicting BG movements and therefore keeping you in range more successfully.
Control-IQ has the user enact/turn-off the sleep and exercise modes to change your default targets. This can help influence when (or better said “at what BG”) your temp basal adjustments will kick in. Sleep mode can be pre-programmed on a daily schedule so that it automatically turns off/on at certain hours on certain days of the week. Exercise mode is turned off/on by the user intentionally and cannot be pre-programmed. Both modes can be left “on” for as long as the user would like…24/7 is not prevented for either sleep or exercise modes. In the event of a conflict (like you stayed at the gym late one night…later than your sleep mode profile was due to turn on per a scheduled time that evening), exercise mode will remain on until you turn it off. You will have to manually turn on sleep mode after that since the window for the “automatic” start of sleep mode was missed.
With Control-IQ, you also have the ability to save six user profiles with different basals, carb ratios, and correction factors to help quickly change between different overall insulin needs. This can help with weekdays vs weekends, hormonal cycles, and illness/medications.
Loop has override presets that you can program to signal an overall needs change. HOWEVER, those overrides are simplified to a single overall adjustment…so basals, carb ratios and ISF/correction factor are all adjusted at the same time and in the same percentage adjustment. You don’t have the ability to unlink those adjustments. For example, you can’t have a preset that only makes basal rates 20% higher…you will also be making carb ratio 20% stronger and correction factor/ISF 20% more aggressive. This may or may not work well for all situations…so care needs to be taken, as the more aggressive you stray from defaults you will be getting a lot of adjustment since all three settings are moving. The override presets can be active for any period of time, including indefinitely, and can be scheduled to start in advance. However, you cannot pre-schedule more than one override at a time. Additionally, activating any override manually BEFORE a pre-scheduled override was due to start will end up canceling the pre-scheduled override’s start. You can also use IFTTT integrations to have a preset enact based on alarm clock or location (e.g., arrive at school).
With Loop, you do not have the ability to save profiles for different regularly encountered patterns such as weekdays vs weekends, hormones, or illness. Instead you will either need to adjust your settings (basal, carb ratios, and ISF/correction factor) manually or try a preset to see if that will suffice. If you work swing/rotating shifts, you would need to manually change your settings to accommodate the change in work schedules.
SYSTEM-initiated changes from settings
Another consideration is whether your closed loop system is automatically changing or limiting any of YOUR specified settings without your ability to stop that adjustments. For example, is your closed loop deciding that your personal profile of 2.0 U/hr basal rate between 1:30pm-5:00pm isn’t “right” and instead decides to use 1.75 U/hr as the basis for calculating your predictions? That would be a pretty important thing to know about. While the excitement of a closed loop being able to detect these settings changes automatically is understandable…it’s also a long way off from being done well in reality from what I’ve seen so far. The Medtronic 670G‘s automatic basal profile is super clunky in practice and too slow to react. The adjustments it has been making for many people have overly conservative and leaving many users suck on high blood sugars. Additionally, I’ve heard rumors that the Horizon system does a bit of an “override” of your user-inputed basal profile and instead uses a distributed basal schedule calculated as a 50% allotment of your previous day’s total daily insulin deliveries. Not super keen on a system that assumes Anna uses 50% basal and bolus ratio since her data has consistently been around a 65-70% basal needs. We’d be left pretty high from a system that assumed a 50% split.
The problem with all commercial systems is that we don’t REALLY know all those automated decisions because they are internal and proprietary. At least with open-source closed loop systems, we have all the information about those operations. So, when evaluating commercial systems…it gets a little difficult to say FOR SURE what’s going on in guardrails or limits that we might not be seeing. I scoured the Control-IQ manual to learn what I could as well as any published articles on the system that I could find that may have helpful info.
The Control-IQ manual doesn’t have a nice easy section about any automatic overrides/limitations that it does for you, this is all conjecture and observational for the most part. I did see one little interesting nugget tucked in here on page 280 of the manual. It’s highlighted in blue.
That little statement led me wonder if maybe the system restricts “active profile” situations to 3.0 U/hr in general…beyond just times of CGM loss. So, I rooted around for a bit and sure enough…it does. Below is a screenshot of when her scheduled basal rate was 3.7 U/hr, and due to 30-min predicting BG not requiring a needed basal adjustment, the system should have been using a “active profile” basal rate. However…as you can see…Control-IQ dropped her off at a limited 3.0 U/hr basal rate instead of 3.7 U/hr. This is pretty curious limit and worth noting if you are someone who has basal rates greater than 3.0 U/hr and want to use Control-IQ. It means that when you are predicted to be in range for 30 minutes, you’ll be dropped off at a maximum of 3.0 U/hr, even if your schedule profile would’ve had you at a greater rate. Probably really good to keep in mind if you have to go on steroids or medicines that push your basal needs over 3.0 U/hr on the regular…you may want to temporarily consider turning off Control-IQ in some really high-needs situations, and run with regular pump mode. Regular pump operations allow for basal profiles up to 15 U/hr.
Another point I was interested in comparing with Loop was any maximum temp basal rate in Control-IQ. This is a user-specified setting in Loop, but there is nowhere to manually enter that setting in Control-IQ.
I’m quite certain there is a limit on the maximum temp basal rate that Control-IQ can access and I’m also sure that the limit is not necessarily the same day-to-day or hour-to-hour perhaps. For example, here’s February 12th’s data and the temp basals were limited to 5 U/hr. Pretty evident by the prolonged highest temp basal lasting more than 5 minutes around 1pm in that graph.
The next day on February 13th, the max temp basal rates are looking a bit higher, closer to 5.8 U/hr. Notice, the scheduled basals for the day were also changed so that may affect the maximum basal limit. There was a higher average and total basal scheduled for February 13th than for the previous day.
So, what influences the maximum basal that the system is allowed to use? Hard to know for certain right now…but I’d guess it is in part based on the scheduled profile basal and some multiplier on top of that. I’ve seen temp basal rates as high as 2.5x the scheduled basal. This is consistent with the not-using-Control-IQ limit of 250% for temp basals. But there are also times where the limit appears to be a more hard limit (like the 5.0 and 5.8 limits on the previous example), even if that is less than 2.5x the scheduled basal…and that hard limit could be a function of the average basal scheduled to be delivered for the entire day.
To start Control-IQ mode, you have to enter a weight and total daily dose of insulin. From what I’ve heard those values are only used to get you started with Control-IQ the first day and after that are not used significantly. BUT…again…I don’t have any solid information to substantiate exactly how those are used on the first day (or not used later). I suspect they play a part in how the maximum temp basal is set for sure…but beyond that I’d love to know.
Those are the biggest “hidden” things that I’ve noticed. Everything else thus far seems to be operating according the user-saved profile values. Meaning, adjusting a setting will result in an expected change in your insulin delivery as well. If you change a carb ratio, you’ll see different boluses recommended. If you change a scheduled basal rate (below 3 U/hr), that basal rate will be respected and used as a the basal to use when no adjustment is needed (because you are predicted to be within target range for next 30 minutes).
Loop doesn’t have any “hidden” constraints such as discussed above. And since the code is open source, any user with questions about the priority decisions or function of the algorithm could look up the code themselves.
What Stops Automated Adjustments?
Control-IQ allows you to manually exit automated adjustments by sliding a slider in the pump menu to turn Control-IQ off. If you do that, you will be reverted to scheduled profile basal immediately.
Control-IQ will stop automatically adjusting insulin deliveries if your CGM readings discontinue for 20 minutes or longer, for example with sensor error or signal loss. When that happens, you will be reverted to the active profile setting (limited to 3 u/hr, as discussed above). Control-IQ technology will automatically resume automated insulin dosing once the pump has CGM data again.
Robustness check? Control-IQ has been rock solidly on except one period of time…we did have one prolonged stretch where Anna’s app was receiving CGM data, but her pump was showing signal loss. Prolonged like a whole day because…well…teen brain? She just thought it was coincidentally off each time she looked as opposed to long-term off and ignored the alert on the pump that was pretty helpful. The signal loss was likely because we are using a very old transmitter that had sat on the shelf long after its scheduled “start before this date or Dexcom doesn’t promise it will work the full 90 days”. I suspect it has a fairly weak battery. Regardless, the fix was easy although not published in the Control-IQ manual, and likely not going to be told to me by the Tandem technical support reps either I would guess. I posted the short version of the instructions on twitter…so if you get the “you’ve lost CGM on the pump for more than 20 minutes” alarm…follow these steps in the pump’s CGM menu and CGM should reconnect within 5 min or less:
Loop allows you to manually exit automated adjustments by sliding to “Open Loop” mode from within Loop settings. If you do that, your existing temp basal will continue to run until it expires (up to 30 minutes in duration). Therefore, it is good practice to cancel any active temp basal (by suspend insulin and resume insulin commands back-to-back) before turning on Open Loop mode. There is also a consideration around bolusing while in Open Loop mode that is discussed in the bolusing section later.
Loop will exit automated adjustments if your CGM loses data for 20 minutes. Loop will also exit automated adjustments if your RileyLink fails to properly communicate with the pump to retrieve pump history or confirm commands. Loop will also exit automated adjustments if any of your settings are deleted or missing (either manually or as a result of an iOS glitch).
Robustness check? Loop’s dependence on RileyLink for pump communications is a critical element and probably the most likely source of losing automated insulin delivery. Interference from other wireless sources, a long standing bug in the RileyLink firmware (that seems more prevalent during major iOS updates, oddly), and simply range/transmission issues cause the majority of red loops stretches of Loop-not-looping. Although, there are also a lot of reports that have to do with Dexcom issues. Often times users have reported the Dexcom app is still getting current CGM readings, but Loop is failing to gather those readings until the person has restarted RileyLink, restarted phone or rebuilt Loop app. I spent a couple hours at ATTD troubleshooting someone’s Loop app that was failing often after months of working fine. No discernible cause was found; tried new batteries, new pump, new RileyLink. Ultimately, the only solution was the rebuild the app entirely. Loop’s problems “staying green” have come in waves for us personally. Major iOS updates were the most problematic times for us as they seem to affect Loop’s ability to stay connected both for Dexcom and RileyLink. Lately my iPhone has been randomly shutting itself off in the middle of the night (only happened to Anna’s phone once) over the last several months and that would concern me if I were looping for myself.
Control-IQ allows you to bolus for meals in a pretty traditional way. You enter the carbs, your CGM value can be automatically used for the BG entry for the meal, and a recommended bolus based on carb ratio is provided. You then can make two choices…(1) Do you want to increase/decrease the bolus amount based on Control-IQ’s determination that you need more/less to get to range? and (2) Do you want to extend any portion of the total bolus?
Control-IQ provides the exact information on the screen about what part of the bolus is the carb ratio alone vs. any +/- corrective insulin beyond that amount. You are limited to a maximum extended bolus time of 2 hours…no 4 hour extended boluses. If you have an extended bolus running when Control-IQ determines that you need basals suspended (predicted to go below 70 mg/dL in next 30 min), your extended bolus is not canceled and will continue (unlike how that worked in Basal-IQ).
Loop offers bolus recommendations quite differently than most all other systems. You use a “food type” (lollipop, taco, or pizza icons are the defaults) to indicate whether the carbs to be consumed will be quick, medium, or slow digestion. Loops algorithm will use that food type to predict quicker/harder vs slower/sustained impacts on blood sugar. As a result, bolus recommendations from Loop are never simply a function of carb ratio or insulin on board alone. They are always a function of the predicted blood glucose curve, your suspend threshold, food type, and how all that information plays together…such that Loop offers an initial bolus that will be predicted to keep you from going lower than suspend threshold in the next 3 hours, and target range between hours 3-6. Any additional bolus that might be needed beyond that initial amount is provided via high temp basals when the prediction curve allows for increased basals.
As a result of Loop’s unique bolus ways, if you are using Open Loop mode…you may have times where you need to more actively engage in providing bolus insulin later in a meal because the system won’t have the ability to automatically cover longer/slower carb impacts after an initial (smaller-than-carb-ratio) bolus. Loop will not automatically alarm when any additional bolus is useful in those situations.
Correcting for Stubborn Highs
I don’t know how to compare the two systems on this topic because they are just so different of an experience.
Control-IQ is using a prediction is only 30-min ahead for adjusting actions, you aren’t fighting a long 6-hour prediction. This means, if you think that you want to add insulin to correct a stubborn high BG, you won’t find yourself automatically zero-basaled as a counter-balance like you often do in Loop. Control-IQ holds off on lowering basals for a longer period of time. For Loop, most of the time you’d use fake carbs, edit old carbs, or set an override for a short time to deal with stubborn high BGs. If those didn’t work, maybe a settings adjustment was in order.
That said, we have had less instances of needing to manually intervene with Control-IQ so the lack of “tricks” isn’t missed. Why fewer interventions? I think part of that is probably due to the more direct carb-ratio-based bolus recommendations (so we are more often getting full boluses up front as opposed to covered later). Anna is less apt to spike with meals overall, but she is having to remember bolus splits again for slower carb meals like pizza. At least when we do intervene with a manual correction, it feels like a more straight-forward process…a small (critical adjective there) bolus correction and we stop. No overrides, no fake carbs, and no editing carbs.
Anna had one meal that was 44g on the nutrition label but was bolused as 6g (don’t ask, teen brain issue). I can safely tell you that just like our Loop experiences, Control-IQ did not “prevent a spike” such a mismatch. Still broke 200 mg/dL, but recovery was smooth and all was fine in the end. Insulin is still slower than we’d all like (hello Afrezza…someday!) and carb counting is still needed.
Anna also had full hormonal shifts on both systems now. On Control-IQ, we saw some stubborn highs (just like we saw on Loop during similar times) that helped tip us off to the need for a settings change. For Control-IQ, we dealt with it through switching to her “higher needs” profile. For Loop, we’d typically use an override preset until we had a chance to adjust her profile settings. Most often, Anna’s carb ratios don’t need adjusting due to hormones…just mostly basals changes with a little bit of ISF/correction factors.
Control-IQ data in live format is (so far) only accessible from the pump screens itself. Tandem does have a mobile app in limited testing currently that allows users to see all their pump info on the mobile device. That app should be released this year, and a follow-up app update is expected shortly after that would allow for remote bolusing through the app…don’t need to access the pump to bolus then. Nightscout isn’t going to work with your Control-IQ pump right now, sorry.
For endo appointments or settings adjustments, you’ll want to use either Tidepool’s uploader tool or Tandem’s t:connect system. Both are free to use. Both require using a cable connected between the pump and the computer to upload the pump’s stored information. Uploads take about half a minute if you do them about once a week. If you want a longer period of time in-between uploads, it might get up to a couple minutes. One pooper to be aware of…t:connect won’t install on Mac computers that are using Catalina macOS (at least not as of the date of this blog posting). I’m dusted off an old PC computer with old Windows version for t:connect uploads.
If you’ve never seen t:connect data, it looks like these:
Loop data is remotely available in Tidepool and Nightscout live time…you just have to create the accounts and link them with a couple steps. Nothing hard and instructions are all online. For endo appointments, Tidepool and Nightscout are what you’ll need to show comprehensive data from looping.
Both Control-IQ and Loop still have Dexcom clarity reports just the same, as that is provided separately from any closed loop system…just need to have a Dexcom mobile app uploading data.
Batteries and Charging
Control-IQ seems to need a pump charge about every 4-5 days or so? It charges fairly fast and is easily little micro-B cable that you have around the house with many devices. Most people charge the pump while they are in the shower or driving in the car. You don’t have to take it out of the case to charge. Admittedly, I am a little removed from the hands-on experience with this since Anna does this work. From what I hear, charging about 15 minutes a day is enough to keep going if you don’t want to do a 1-2 hour full blown 0-100% charge on a less often basis.
Loop is running on your iPhone so there’s nothing really extra required there. Loop doesn’t seem to drain batteries any faster from what we experienced. RileyLink needs a charge nightly and charges in about an hour.
Someone asked about wireless audio devices…we haven’t had problems on either system. I have heard of others having problems with Loop failing when people use their car audio bluetooth though…that seems to be the most common wireless failure point and is more related to the iOS resources than Loop itself. Loop is simply the victim of iOS then.
Control-IQ has a lot of the usual alarms and alerts that you’d expect…but the unexpected one I like a lot is that the pump has a quick beep alarm if insulin delivery has been suspended for 15 minutes. AND…it’s loud enough that Anna actually hears it (as opposed to her old Medtronic pump). We know call this the “Anna your shower has gone on long enough” alarm. Our water bill is so happy. Loop users have often requested a similar alarm option if insulin delivery has been suspended for 15 minutes or more…and now I can see why. Very useful.
Loop mainly relies on the pump system itself to supply the alarms (like Medtronic Loop) or emulates a limited set of alarms (like Omnipod Loop). The alarms specific to Loop are loop-not-looping alarms at 20, 40, 60, and 120 minutes.