670G Auto Mode Insulin Sensitivity

I’ve been using the Medtronic MiniMed 670G pump for about 6 weeks now, in Auto Mode for about 4 weeks. I’m in Canada, so the BG units are in mmol/L instead of mg/dL (multiply by 18 to convert). I’ll convert here to mg/dL.

I’ve been having problems with the pump giving enough insulin for a correction bolus.

I discovered recently that the Inulin Sensitivity Factor (ISF) entered in the Settings is only used in Manual Mode.

I have heard at least 2 things about Auto Mode ISF: 1) The pump uses the “1800 Rule” using your average TDD over the past 6 days and 2) The pump uses machine learning

In an effort to test the first hypothesis, this morning my fasting BG was 165.6mg/dL (actually, 9.2mmol/L).

The pump offered to give me a 0.4U correction bolus, presumably to bring me down to 150, a 15.6mg/dL adjustment. This implies “the algorithm” thinks my ISF is 15.6/0.4=39mg/U.

This is a huge difference from my MM ISF of 18mg/U (actually, 1.0mmol/U).

My 6-day average TDD is 56.3542U. The 1800 rule would compute an ISF of 1800/56.35=32mg/U.

So… What’s going on here? Can anyone shed some insight? I’m very frustrated and it’s hard to resist the urge to enter phantom carbs.

Could this be another software bug due to the unit change? I’ve also recently found out that due to a software calculation error, “Rise Alert” is broken and should not be used outside the US (screenshot attached). Could this be a similar problem?

I have been on the 670G auto mode for just over a year. I do not understand the 1800 factor. My 6 day insulin use is 78. If i devide 78 into 1800 I get 23. My insulin resistance factor is 40:1. When I do a Bolus Correction (without any insulin on board), the Pump seems to be using the 40:1 factor, not a 23:1 factor.

What am I missing?

You might work on active insulin time. I do not knwo where yours is set, but that can have a bigger impact in auto mode than the sensitivity factor. I suggest lowering it by increments of 15 minutes until you dial it in a little better. Typically in my area people start with around 3.5 hours instead of 4. Some people have it set as high as 5 hours and in my case i have it set very low at 2.5 hours. You must of course discuss the adjustments with your doctor or educator.

Note: I am a Medtronic ambassador. My opinions are my own. They did not pay me to say nice things about Medtronic devices or the company. OK, they sent me a shirt and a cup but even I am more expensive than that.

AIT does indeed play a role in providing overall control and I have been adjusting it.

AIT however doesn’t seem to play a big role when administering a correction bolus, which is the issue I’m trying to understand.


1 Like

My AIT is 2.45 hrs. I get so irritated with this system! I rarely go into AM but when I do it only lasts a day or two. Usually I get stuck over 250 and turn it off so I can bring my highs down.

So, it took me a while to get my head around this, but the main thing is that microbolusing is not the same as a basal rate. Each one of those little blips of insulin is being calculated individually based on a number of factors, including the duration curve of the insulin. Obviously with the blips coming every 5 minutes, those curves are all going to overlap, so basically AIT is a way of dialing up or down how much overlap to allow. This applies as much to corrections as to boluses. The more overlap you allow by decreasing AIT, the more aggressive the pump will be. But with corrections there’s an additional complicating factor, namely that corrections are calculated to a target of 150, so that imposes a secondary limit on how hard it’s going to work to bring down a spike. But AIT is really the one big tool you have in auto. In my case I had to dial it all the way back to 2hrs, and wished I could have dropped it further because the algorithm was so anemic about corrections.

Thank you very much! This makes sense and is helpful but doesn’t resolve my question.

So… When the pump is computing a correction bolus, it’s using more than just the displayed “Active Insulin” amount. It’s also computing the total Insulin on Board. It’s adding up all of these curves for each microbolus

But it still must be using insulin sensitivity somehow. Let me give an example:

At a specific time (say, time X), your BG is high (say, 250) and it wants to target 150.

If the AIT is 3 hours, it’s going to add up all those curves over the past X-3 hours. Let’s say it’s 3U on board.

In order to make that adjustment, the pump has to calculate how much insulin is needed to go from 250 to 150 (delta 100) and subtract the IOB from that. This is the same kind of calculation it does in Manual Mode, but the insulin sensitivity is computed… Differently. This is what I’m after.

If my sensitivity was 32/ a correction bolus would offer

100/32 - 3 = 3.125 - 3 = 0.125U

So… How does it calculate sensitivity in Auto Mode?

Is there any way to see what the pump thinks is the total Insulin On Board? I could go in reverse and compute the sensitivity that way

PS: IOB curve borrowed from OpenAPS

1 Like

RIght–it’s not using a preset, user-entered value (i.e., the one you configure for Manual Mode), but determining it based on observed patterns that are incorporated into the algorithm. And that’s where we come up against the black-box problem, because MedT just isn’t all that forthcoming about precisely how the algorithm does what it does. I know when I was using the 670 the discussion groups were full of guesses about things like this that MedT simply wasn’t going to answer. For me that was the big flaw in the whole philosophy of their pump: “Let us do everything for you!” is the promise, but in practice “Just shut up and obey” is closer to what it feels like.

Just the value you see in the bolus wizard, but I don’t think that includes basal in either mode.

1 Like

Somewhat more responsive to the original problem you stated, viz., the anemic correction rate you’re experiencing: I also struggled with that for a while before finding out that the ISF setting did not apply in automode, but I did find that backing down AIT caused it to be more aggressive. Unfortunately I hit the 2.0 hr barrier before I really got it to where I would have liked. Like you, I was trying to resist the “phantom bolus” dodge, so I was pretty stuck at that point. But as a practical matter that’s the thing to adjust–it will get you more robust corrections.

Are we at a point where we just need to reverse engineer these algorithms?
I dont know if this would help…https://www.bleepingcomputer.com/news/security/nsa-releasing-the-ghidra-reverse-engineering-tool-at-rsaconference/

Note: It is illegal to break encryption in the US

My ISF is 40. My BGs are currently 100. I have 1 unit of active insulin on board. As an experiment, I went to Bolus and set my BG at 200 and the calculated Bolus came back at 1.2. If you add the 1 unit of insulin on board that would give me 2.2units of insulin to bring down my 200 BGs. Using a 40 ISF, that would reduce my BG to 112 (40 X 2.2). In my opinion, that is a fairly aggressive correction.

In auto mode when delivering a correction bolus, the pump targets 150 (page 246 of the system user guide)

So your pump is computing your Auto Mode ISF to be 50/2.2 = 22.7, which is far below your known manual mode ISF (40)


@depassp Just found this and I can add some but a not a lot of insight. Medtronic has released a document for healthcare professionals outlining how automode works. Spoiler Alert: There is no ML or pattern learning going on. The document can be found here and the interesting stuff starts on page 9: https://hcp.medtronic-diabetes.com.au/sites/default/files/au_670g_hcp_protocol_for_hcl_therapy.pdf


Now THAT’S what I call a useful post, @mbensch, thanks for this find. Really great to have some hard information on how the “algorithm” actually works.

And welcome to TUD—hope you stick around!


I don’t understand how the algorithm works. If the pump is dead set on keeping the BG at 120, where does the 150 come into play. For the Tandem X2 users, should we be worried that Tandem is going to do something similar with their algorithm?

It is one of the more confusing things. Conceptually, it seems to consider anything below 150 as within the normal purview of the normal basal rate that is targeting 120, but over that amount it considers that it’s doing a “correction,” which allows it to be more aggressive.* Once it hits 150 it goes back to business as usual, still targeting 120 but no longer in “correction” mode. You can’t manually set a correction factor in auto mode, rather it derives one from the formula in the algorithm which looks at TDD over time.

*Aggressive is a totally relative term in the 670G context.

Thought it was interesting that they state explicitly what a lot of us determined by trying and failing with automode:

Patients who strive for perfection with tight glycaemic control sometimes find it difficult to accept the transient highs that occur in Auto Mode as glucose gradually lowers back to target. Reviewing CareLinkTM reports with these patients is particularly important so they can see if Auto Mode is resulting in more time in range with fewer lows. (p 4)

In other words: “try to convince them they’re happy with it even though they had better control without it.”

But my worst problem when I was trying it was the impossibility of getting it to manage my DP, which you’d think would be one of the main reasons you might want to use a loop system in the first place:

Note: The algorithm calculates Auto Basal using the above parameters; it does not learn an individual’s time of day patterns or diurnal variations (i.e., dawn phenomenon). (p 9)

And this, which made me laugh, a little bitterly:

Morning highs: Assess for overnight / bedtime highs first, bedtime snack with inadequate or no bolus, morning caffeine. If issue is identified as dawn phenomenon, have patient test BG, take recommendedcorrection dose and bolus for breakfast at least 15-20 minutes before eating. (p 17)

In other words, you’re going to wake up too high all the time, starting the day with a high you’re going to have to try to drag down with the anemic correction behavior, and you’ll just have to live with it, sorry, we didn’t figure that one out. Versus manual mode, where I can just set a higher basal rate and wake up at an acceptable BG to start the day. Automode FTW!

There’s one other bit about AIT vs ICR that seems to defy what many of us experienced with the thing, and I think I’ve figured it out, but I gotta get to work…

1 Like

Wouldn’t you want the pump to “aggressively” combat anything over the target 120 in auto mode?

I’m very worried about Tandem’s loop system now. Set it and forget it just went up in smoke.

The pump uses 2 hard coded targets:

150 to estimate automode corrections that have to be user initiated and 120 for automode. The PID algorithm that drives auto basal will deliver insulin every 5 min and how much is determined by the integral of the curve between 120 and 150. Lets say you’re at 130 auto basal will deliver somewhere between your Min-Basal and Max-Basal portion that is allowed per “tick”. The tick interval being 5 min. At a BG of 150 you will hit your max basal ceiling so any glucose target over 150 will not cause automode to deliver more basal as we’re already at max delivery and the pump will suggest a manual correction amount which then is determined based on the proportional difference of you current BG to that 150 target, the ISF calculates by automode (re-calculated every 24h) and your current total IOB (insulin on board which is different from what the pump shows you as active insulin as it factors in the auto basal Insulin and not just correction or food bolus). (Sorry phone autocorrect sucks and I’m gonna edit this once I’m on a computer)