12 years & counting – are we there yet?

October 14, 2014 by

If you had told me 12 years ago that we’d be here today, essentially building the components of what we hope will be the first DIY artificial pancreas system made using only commercially available hardware and open-source software… or having a meeting with the FDA to talk about open sourced systems like this … (or that there’d be a “we” doing it!)… I wouldn’t have believed you.

Today marks 12 years of living with diabetes. (Like everyone else, I wonder what to do on yet another diabetes anniversary – celebrate? Cry? Eat gluten-free cupcakes? All three things?) And interestingly, I’m almost at the one year mark of living with diabetes powered by #DIYPS.

When I was diagnosed, my blood glucose meter was bigger in all dimensions than the iPhone 6+.  Luckily, that’s changed, and my meter is now about the size of my Pebble smart watch – and that watch actually shows my my blood glucose readings from my CGM every 5 minutes.

Even better, in the last year, we’ve built a system that will not only give me a number, but help me track changes and push alerts so I can pay attention when needed…but otherwise live my life and not let diabetes get in the way of the things I actually want to be doing (running marathons, reading marathons, saving the world, etc.).

What hasn’t changed, though? My insulin pump. I’m pretty sure it’s a slightly different purple color than it was 11 or so years ago, but not much else has changed. For 11+ years I’ve been wanting:

  • To be able to see (on the pump) a HISTORY of any temporary basal rates
  • To be able to have “days of the week” programmable basal rates. (As you can imagine, my Tuesdays and Saturdays look a little different!)
  • To be able to have “net IOB” calculated and displayed to reflect the true amount of insulin in my body

For 11 years, I didn’t question the lack of progress, much, though. That’s just the way it was. I imagined it would probably be this way until we got a cure for diabetes in (5 or insert your magical number here) years.

I’m glad this is no longer the way it is and that I have tools like #DIYPS. But I hope that medical device companies will get out of their rut and the way they’ve been doing innovation and business for eons and do better. Because what they’re doing right now is not good enough. And #wearenotwaiting.

How and why we are working with the FDA: background and a brief summary of the recent meeting with the FDA about the Nightscout project

October 12, 2014 by

On Wednesday, October 8, 2014, I accompanied several other individuals active within the CGM in the Cloud community (John Costik, Ben West, Bennet Dunlap, and Ping Fang), and an invited guest observer (Mark O’Donnell from Medtronic) to meet with the US Food and Drug Administration (FDA) to discuss the Nightscout project. Our goal was to begin a dialog with the FDA, in which we hope to educate the FDA on the Nightscout system and the open source development methodology behind it, to learn what concerns the FDA might have about the project, and to determine which efforts need to be prioritized to address those concerns and ensure the safety of everyone using the Nightscout system.

As most of you are aware (and as outlined so well in the recent front-page WSJ article), the Nightscout project started with John Costik’s early efforts to improve safety for his son going to kindergarten, by using the USB interface of his Dexcom G4 Continuous Glucose Monitor (CGM) to obtain up-to-date glucose readings, and make that data available remotely. After John and a few others released their code, many other interested developers began improving and extending it using an open-source development model.

Since that time, the CGM in the Cloud Facebook group has grown to over 7,000 members, and the open-source Nightscout project has been developed into the system used regularly by most of the over 1,100 individuals who have made their own copies (forks) of the source code on GitHub. Recognizing that this rapid growth indicated something so important to so many people living with diabetes, the FDA has reached out over the last several months to a number of us at events like the D-Mine D-Data Exchange.

We all recognize that this kind of open-source patient-driven project has the potential to greatly improve patient safety, quality of life, and quality of treatment. Furthermore, this bottom-up innovation also represents a new way of developing potentially life-saving mHealth systems: it falls somewhat outside the way medical devices have traditionally been developed and regulated, both in the open-source nature of the project and the #WeAreNotWaiting-inspired speed of software development, testing, and release.

In light of all this, the FDA encouraged those of us working on Nightscout to begin working with the FDA through their pre-submission process, so they can better understand what we are doing, and so they can work with us to make sure that we are doing everything possible to accomplish the shared goal of maximizing patient safety. We also saw it as an opportunity to work with the FDA to help them develop a model for regulating patient-driven open source mHealth software, which ensures the aforementioned focus on safety without unnecessarily slowing things down. So Ben West did exactly what the FDA suggested, documenting a number of details about how the Nightscout software and project currently work, and formally submitted them to the FDA along with a request for Wednesday’s meeting.

This meeting represented an excellent start on the dialog required to reach those goals. The FDA asked a number of questions about how Nightscout’s open-source development model works. From our perspective, they seemed particularly interested in learning about the (currently largely informal, yet effective) processes we have in place for ensuring that new features and code are well reviewed and tested before being made available to the general public, and for making sure that any reported issues that might represent a safety issue can be appropriately triaged, prioritized, fixed, and the fix distributed back to the people using the software. They also expressed an interest in making sure that there is a core person, group, or entity that is responsible for making sure nothing falls through the cracks and that any modifications or new features are well-tested and work as designed, and who will take responsibility and take appropriate action if something goes wrong.

Prior to Wednesday’s meeting, some people had expressed concern whether formally engaging with the FDA would put the Nightscout project at risk, and possibly even result in the FDA “shutting it down” and taking away a tool that many people find invaluable in helping ensure the safety of themselves or their loved ones. Given the FDA’s desire to work with us, we did not think that would be a significant risk. In fact, we felt that failing to engage the FDA would be irresponsible, because it would not only put the project at risk, but it would mean that we were not doing everything we could to ensure safety.

Now that we have actually had our first meeting with the FDA and heard what their major concerns are, I am even more confident that we are on the right track. The FDA’s initial questions were mostly focused on making sure that we have good processes, procedures, and systems in place to make sure Nightscout is safe as it can be, even in rare and challenging circumstances. We share their focus on safety, and while we have already put in place systems to address most of the things they are concerned about, we are also committed to working with them to identify and close any gaps. The FDA has not yet indicated to us that they have any problems with what Nightscout is currently doing, but rather indicated they want to learn more, discuss internally, and keep communications open.

We are currently in the process of writing up formal minutes based on the notes I took at the meeting and getting those over to FDA so they can review them for accuracy. Once they approve the minutes, we plan to post them, along with the raw notes, for everyone to review.

Over the next few weeks and months, we will be undertaking an effort to document (and in some cases improve) our processes and systems. That is partly so the FDA knows we’re doing the right thing, but it’s even more importantly so that all of you, the CGM in the Cloud community, can be confident that we’re all doing everything we can to keep our loved ones safe. That is the primary goal that we all share, and #WeAreNotWaiting to make it happen.

An artificial pancreas may not be good enough – #DIYPS perspective

September 25, 2014 by

I didn’t expect to end up with #DIYPS when Scott and I first started building a system that would make louder CGM alarms. (If you are new to #DIYPS, read this post to learn more about it!)

But, as we added ‘snooze’ features for the loud alarms; the ability to input carbohydrates and insulin into the system; figured out that knowing your carbohydrate absorption rate is critical for managing diabetes as is the timing of the insulin activity in your body during mealtimes; and realizing that net IOB (factoring in temporary basal rates) matters…we ended up with today’s version of #DIYPS.

After the first 100 days, we knew #DIYPS was as good as the bionic pancreas was performing in clinical trials. And after several more months, I’ve had sustained results that show the value and impact of this type of system.

But, as more news and attention lately is focused on the “bionic pancreas” and APS (artificial pancreas systems), I have started to wonder… will those be good enough (for me)?

APS/bionic pancreas will not be a cure – it will not take away diabetes. It will make managing diabetes easier for many people.

But since I have #DIYPS, those systems may not be good enough (initially, for me).

The big difference between #DIYPS and APS is automation. With #DIYPS, I make all decisions and push all buttons to add or reduce insulin. There is still a “human in the loop”.

My hope would be able to add the ability for DIYPS to automatically set basal rates to zero temporarily overnight in advance of predicted low BG, to help prevent lows without having to wake up from a deep sleep and take that action myself. (And as Medtronic’s Low Glucose Suspend (LGS) technology has shown to the world and FDA, the risk of stopping insulin delivery for up to two hours while someone is sleeping is lower than it would be to continue providing insulin to them if they are not waking up and are low.)

If we’re able to make that happen with #DIYPS, I may be one of those people who doesn’t want to jump on board for day 1 of the first market available artificial pancreas system or bionic pancreas. (Although I reserve the right to change my mind :D). After all, at this point it would be a battle of the algorithms to see what system might work best for the most people. (And since I have my own algorithms that Scott and I developed, they might be better than the alternative for me.)

I also can imagine that there will be many people who won’t implicitly trust the/a system to make decisions for them all the time. They’ll still want a “human in the loop”.

#DIYPS-type systems that are “decision assist systems” may play an important role as a stepping stone platform for people to get comfortable with this new generation of technology that can predict lows and highs and make recommendations for them to take action.

Eventually, maybe everyone will be on an APS or bionic pancreas. Even setting aside the difficult questions of cost, availability, and insurance coverage, I know that one technology will not fit every person with diabetes (like how CGM in the Cloud is not for everyone); one system will not meet the needs of everyone; and none of us will be ultimately satisfied until we’ve prevented and cured all types of diabetes and eradicated the impact of any complications from diabetes.

But until we get there, #wearenotwaiting.

How #DIYPS became a part of our engagement

August 26, 2014 by

Confession: I like to plan things. However, there’s one thing I can’t (won’t/wouldn’t) plan, which was our engagement.

Oh, did you hear? Scott and I are engaged! :)

Oh, did you hear? Scott and Dana are engaged! :)

Some time ago, I had joked that if/when we got to the point of making this decision, that he definitely couldn’t do it while I was low, because I would be feeling awful and I wouldn’t necessarily be able to remember every detail, etc.

Fast forward to this weekend

Scott and I hopped in a van on Thursday and drove down to Portland to get ready for Hood to Coast. Luckily, unlike my Ragnar run, our start time was a more civilized 9:30 am so we had time to see the sunrise before we started the race on Friday.

Sun rising viewed from Portland.

Sun rising viewed from Portland.

We headed up the mountain, and then I kicked off the race by running down the mountain (awesome). We then proceeded with the race, which like Ragnar, is completed by having 12 runners in 2 vans take turns covering the course until ultimately you end up in Seaside, Oregon to finish. There were some snafus on the course by the organizers, including an hour-long-plus backup on the road where you were supposed to be able to get to a field and be able to sleep in said field. However, by the time we had arrived, they closed the field, so we ended up getting less than an hour of sleep on the side of the road, smushed together in the van (7 people in one van!), before I had to crawl outside and force another few miles for my last run.

But, we finally finished, made it to Seaside on Saturday afternoon, and stood around waiting for our van 2 to fight through traffic and get there so we could cross the finish line together and be done! Everyone from our van (including Scott) ended up standing around in a crowd with a few thousand of our closest friends for more than an hour. Once they made it, we crossed, grabbed our medals…and were done.

Most of the team decided to head into the beer garden before splitting up for dinner and heading back to the hotel. I voted for heading back to dinner right away, because the sooner I ate, the sooner I got to finally go to sleep! Scott and I decided to head back.

Where I start unintentionally thwarting Scott’s plans

Scott suggested walking on the beach as we headed back, but as we skirted the finish line area, I realized how much it hurt to walk on the uneven sand with sore legs and hips from the run, and vetoed that idea. So we walked up off the beach to the esplanade/promenade, and walked down it instead. I called my parents to let them know we were alive after the race, and by the time I was off the phone, we were nearing the end of the esplanade. Scott asked one more time if I was sure I didn’t want to walk out to the beach. I think I said something along the lines of, “Fine, we can walk up to the beach, as long as we don’t have to walk up and down it!”

We walked over to the edge of the beach on the ridge, where you could see the fog and not much else, although there weren’t many people around. At that point, Scott was checking #DIYPS on his watch, and saw that I was dropping from the walk and projected to go low, so he suggested sitting down for a few minutes as a break before we walked the rest of the way back to the hotel for dinner, and starting a temp basal to help prevent a low. He told me to pick a spot, so I picked a comfortable looking log, and we sat down. Scott gave me a few Swedish fish to eat just to make sure I didn’t go low, and then while I was looking around at the fog, he started reaching into his pocket again and telling me he had another question for me.

I still had no idea what was going on (something about running a lot of miles and 1 hour of sleep), so I just looked at him. He pulled a box out of his pocket and opened it to another box, and I started to have an inkling of what MIGHT be happening, but my brain started to tell me that nope, wasn’t happening, what kind of person carries a ring in their bag/pocket all weekend around so many people without me noticing it, and didn’t we just run a race on one hour of sleep, and oh my gosh what is he doing?

By that point, he had flipped around and gotten down on one knee, asked me if I was ready to make it official, kissed me, and asked me to marry him. Thanks to #DIYPS I was *not* low, and despite the lack of sleep I had figured out what was going on at this point, and was able to say yes! :)

For those keeping track at home, despite my BGs starting to swing low which was supposed to be the reason we stopped to sit down…I later looked, and my BG never dropped below 99 during all of this! :)

My #DIYPS view is a little different now :)

My #DIYPS view is a little different now :)



Being female, a patient, and co-designing #DIYPS means often being discounted

August 25, 2014 by
As great as #DIYPS is, the entire experience of innovating hasn’t been what I wish it was. @danamlewis on the #DIYPS experience as a nontraditional innovator who is both a patient and female(w/ @scottleibrand): http://bit.ly/1p5U0P9

Scott and I have been co-designing and co-working on #DIYPS since November 2013. (Click here to learn more about #DIYPS if you are new to it.)

I don’t work in the tech industry for my day job. (#DIYPS is something I do in my spare time and in no way related to my day job, thoughts are all my own, etc.) The more that I engage with others in the “industry” through #DIYPS work, the more I’m reminded of why I’m glad I don’t do this full time as a career. Being unintentionally but automatically disrespected and discounted creates a hostile environment, and makes it difficult to remain engaged and motivated to do great work.

Here’s why we’re writing this post:

Many conversations (not all, but any is too many) and potential collaborations about the technical development of our project (#DIYPS) have required starting with a leveling of understanding of why I am participating in the conversation.

Sometimes it seems to stem from the misunderstanding that because I am “the patient” (the end user of the system we’re building) and not an engineer in my day job, I don’t/can’t have a very deep understanding of how this works on the back end.

Perhaps it is so “easy” to misunderstand because we don’t often enough see patients who take the opportunity to design and build the tools they need to manage the chronic diseases they live with every day?

Scott’s take: #DIYPS was built jointly by both of us. Dana provides all the data, of course, but she also had dreamed up a concept for a DIYPS-type system months if not years ago before we were able to get John’s uploader code and start making it happen. Once we started actively developing the system, Dana was involved in every single product decision, and made every major decision on how the system should work. I of course contributed a number of ideas about how it could work better, wrote much of the code, and did initial testing of everything I wrote. But Dana did the real-world beta testing, decided what would and wouldn’t work from a usability perspective, prioritized feature development (and even bug fixes), and directed the project in countless other ways. If we end up patenting #DIYPS, her name will be listed first.

And yet, the assumption always seems to be that Dana must not have a complete understanding of the system, and can’t possibly have full ownership of #DIYPS.

Perhaps the reason Dana has to battle at the beginning of any conversations to be taken seriously as an active participant is even simpler: she is female. Even when she mentions coding experience (C++ and FORTRAN 90), and/or I mention her role in creating #DIYPS, the discounting continues. Why is that? It usually takes fairly subtle forms (such as directing all questions about how the system works to me instead of to Dana). It is undoubtedly subconscious in almost all cases, but that makes it all the more insidious, because people don’t seem to correct their misconceptions as quickly when they’re not aware of them.

This experience is not ok.

Dana’s take: All of the above frustrates me greatly, to the point of writing this post because I’m not sure what to do about it beyond calling it out individually when I see it (Scott is also great about pointing it out and looping me back in). It’s a systematic issue*, and something I’ve heard is experienced by other patients or other women working in tech, which heightens my frustrations.

Having these experiences repeatedly burns me out from wanting to innovate further, and to go back to just keeping myself alive. Which is selfish. And I don’t want to just do that. But sometimes it feels like the only option.

Here is why this type of experience is damaging:

Disrespecting, discounting, and excluding someone wastes an excessive amount of time that could be spent talking about moving #DIYPS and projects like Nightscout forward and saving lives now, while #WeAreNotWaiting for the medical device industry and the FDA to catch up.

Discounting others automatically is a disservice to you, can be extremely frustrating to them, and it takes away from everyone’s time.  But most importantly, it saps their energy and motivation to make a difference in the world. And in an era where technology is enabling us to do so many amazing things, including actually saving lives with technologies we’re inventing in our spare time, wasting time and demotivating innovative individuals might mean not saving lives we otherwise could.

If you read this far, we would both encourage you to think about your own behavior when you meet with people, including what kinds of questions you’re asking them. (This is a related good read from a male perspective.) If you find yourself asking questions of someone, or making assumptions about their role or capabilities, think about whether you ask the same questions of others that you speak to. Don’t automatically discount or question someone, make assumptions, or treat them differently just because they’re young… or female… or a patient… or old… or don’t appear to be technical… or whatever your initial perceptions may be.

As many recent articles show, this is a problem across the high-tech industry, with many widespread examples, and some truly awful behavior. But those of us who are working with volunteers trying their best to make the world a better place need to hold ourselves to an even higher standard, and work to overcome even the implicit biases that lead us to ignore or discount valuable contributions from some of those who are most eager and able to help.

*If you have any other ideas about how to handle these situations in a way to point out to someone what they’re doing, and also more widely educate the world so we don’t waste as much time and energy on in these situations (or having to write or read more of these types of posts), we’d love to hear them.

-Dana Lewis & Scott Leibrand

“Micro” highs and lows (they’re not really all the same)

August 4, 2014 by

More thinking on what a snapshot of diabetes data means to me – this time on ‘micro’ highs or lows. @danamlewis #DIYPS http://bit.ly/1lt2ijE

I went to take a snapshot of my 24 hour CGM graph, because I was pleased with the outcome of the past 24 hours: no major lows or highs. According to the picture, it’s a “no hitter” (not hitting the high or low lines). However, I have the high alarm set to 170 right now, so to me knowing that I peaked around 150 overnight, including the slow crawl up to it, means it wasn’t a true no-hitter.

But, isn’t it still worth celebrating? No major overnight alarms to wake me up. No juicy juice or temp basals or reduced sleep or waking up feeling like I was dehydrated and apt to develop ketones. Diabetes, for a day, wasn’t a big deal. Isn’t this the ultimate goal of living with diabetes – living well, and not letting it stop us from living our lives and doing what we’re striving to do?

I tweeted the CGM picture with this caption:

Because it’s true. A 400 and 121 are both technically, medically speaking both “high” and “highs”. But are they the same? No.

(And same goes for any single data point – 121 could be flat, going up, or sliding down – the trend is what matters, regardless of what FDA has agreed to at this point in time. )

So, I’ve decided to categorize things as “micro” highs and lows when I’m sliding slightly below my comfortable range (like floating in low 80s or 70s and feeling low symptoms) or rising above what’s “normal” (80-120 is burned into my brain as normal), but may not warrant taking a picture as a “high”.

Semantics? Maybe. But as we talk about what these numbers represent, our ability and willingness to have a conversation about them online, including defeating data-shaming, I think it’s worth continually reframing and gaining more perspective on what diabetes data means to each of us.

“Letting go of things we can’t control” + remembering that sleep matters (#DIYPS)

July 25, 2014 by

Sleep + so many factors out of our control impacts BGs. (#DIYPS lessons learned from @danamlewis after #RagnarNWP): http://bit.ly/1AgTN4M

It’s been over a month since our last #DIYPS update. We haven’t made any significant changes in the system (if you’re new to #DIYPS, click here to read more about the Do It Yourself Pancreas System first!), and have been continuing to use it to successfully manage my BGs to (mostly) my satisfaction.

That is, until this past weekend.


There was a team of 12 people with diabetes that got together (thanks @ConnecT1D and @IN_events for sponsoring!) to run “Ragnar Northwest Passage”, which is a 196 mile long relay race from near the Canadian border (Blaine, Washington) to Langley, Washington.

Guess who was lucky runner #1 and woke up at 3am on Friday to run 6.3 miles at 6:15 am?

Guess who was lucky runner #1 and woke up at 3am on Friday to run 6.3 miles at 6:15 am?

Here’s how the relay works: you have two vans, each with 6 runners, that take turns on the course. Each runner runs three different times, for a total of 13-19 miles. Van 1 starts and the 6 runners hand off to each other; then Van 2 meets up as the 6th runner finishes, and runners 7-12 commence running. Meet up again and handoff back to Van 1. (I’d say “rinse and repeat”, except for there weren’t always showers involved after every single run). The race started for our team on Friday at 6:15 am (see note about 3am wakeup and running first), and continued until Saturday at 4pm-ish.

Why this became a #DIYPS post

I slept ~4 hours on Thursday night before the 3am wake up and early race start. During the actual race, I got about 3.5 hours of sleep overnight in Van 1 while Van 2 was out on the course. Normally I would have 16-20 hours of sleep under my belt for a half-marathon or longer race.

I also didn’t have #DIYPS running at full capacity during the race – my Moto G phone has taken some hard knocks and the cord that connects to my CGM was wonky. So, I pretty much went “old school” and just used my CGMs as-is.

During the race, even without #DIYPS running normally, my BGs were pretty good. I was great during my first run and only had a few lows in the afternoon after that (more from lack of protein/real food than anything else, which I fixed with a big lunch). During my 2nd run, I started my temp basal too soon, miscalculating when the runner before me was coming in, and was between 180-200 during my run. Not *that* big of a deal, but since my average BG is usually <120, I can feel it and it feels different to run. I managed to get it down after my run and in the overnight, and was fine during my 3rd run, and after that. All in all, I was very happy with my BGs during the race. (Oh – and my first run (6.3 miles) and my last run (3.1 miles) were both PRs, personal records, for me! So, yay for good running and good BGs at the same time.)

(After the race! We look great on so little sleep and so many miles, right?)

(Scott & I after the race! We look great on so little sleep and so many miles, right?)

However, once I finished the race and Scott and I headed out for dinner (real food!), despite the usual #DIYPS prebolus strategies, my BGs rocketed up pretty fast. I chalked it up to something related to my liver absorbing or dumping glucose or whatever, didn’t worry about it too much, and focused more on getting 12 hours of sleep that night. (Luckily I was running higher and not lower, so sleeping through a few alarms was ok for the night).

On Sunday, the same thing happened when I ate lunch. A few carbs and my BGs took off high. Same thing Sunday for dinner, and Monday after a breakfast that included carbs.

By Monday evening, I was puzzled and annoyed, because I had #DIYPS running but my body was not cooperating! I was also still feeling tired, above and beyond what Scott (who ran Ragnar on another team that had 12 members with functioning pancreases :) ) seemed to be feeling.

Remembering that sleep matters A LOT to your body, and the same goes for managing BGs

Overnight, my BGs settled down and were flat after 6am and all morning, including after a breakfast with lots of carbs (I ate a gluten-free cookie, it was delicious). My BGs had a slight uptick..and flattened out. Like they used to do last week and all the weeks prior with #DIYPS. I took a picture to send to Scott, and had the sudden realization that my body had probably caught up on sleep to it’s minimum levels, and that’s probably why it was handling things like “normal” again*.

#DIYPS sleep matters

This (knowing that sleep impacts your body’s function) is a lesson I’ve learned many times before, and has less to do with #DIYPS….except it helped remind me that there are SO many factors out of our control in dealing with diabetes. (Stressed? Excited? Sick? Sleep deprived? Are you a girl? Are you growing? Are you in puberty? Is the moon out? Is there a universal Diet Coke shortage?)

#DIYPS is great at helping you deal with BGs if you don’t know the exact carb count in a meal, or dealing with the chaos of running more than a half marathon over three legs in a 36 hour time period on less than 8 hours of sleep. Like I mentioned before, it also helps me keep perspective – this time to help me let the few days of higher than normal post-race BGs go and not beat myself up about it.

Final note

It’s probably a good idea to not try this kind of sleep deprivation at home (seriously – sleep is awesome, you should do as much of it as possible), and be aware that running Ragnar or another relay race** may throw off your BGs more so from lack of sleep than the actual exercise part.

*Yes, it’s normal to eat a gluten-free cookie for breakfast! The non-normal part is having to do math and bolus and watch BGs. Having diabetes is not normal!
**Scott and I are running on a Hood to Coast team in August. Gulp. Maybe I’ll manage more sleep this time around in the vans?

What is #DIYPS (Do-It-Yourself Pancreas System)?

June 20, 2014 by

#DIYPS (the Do-It-Yourself Pancreas System) was created by Dana Lewis and Scott Leibrand in the fall of 2013.

#DIYPS was developed with the goal of solving a well-known problem with an existing FDA-approved medical device. As recounted here (from Scott) and here (from Dana), we set out to figure out a way to augment continuous glucose monitor (CGM) alerts, which aren’t loud enough to wake heavy sleepers, and to alert a loved one if the patient is not responding.

We were able to solve those problems and include additional features such as:

  •  Real-time processing of blood glucose (BG), insulin on board, and carbohydrate decay
  •  Customizable alerts based on CGM data and trends
  •  Real-time predictive alerts for future high or low BG states (hours in advance)
  •  Continually updated recommendations for required insulin or carbs

You can read this post for more details about how the system works.

While #DIYPS was invented for purposes of better using a continuous glucose monitor (CGM) and initially tailored for use with an insulin pump, what we discovered is that #DIYPS can actually be used with many types of diabetes technology. It can be utilized by those with:

  • CGM and insulin pump
  • CGM and multiple daily injections (MDI) of insulin
  • no CGM (fingerstick testing with BG meter) and insulin pump
  • no CGM (fingerstick testing with BG meter) and multiple daily injections (MDI) of insulin

Here are some frequently asked questions about #DIYPS:

  1. Q:I love it. How can I get it?

    A: Right now, #DIYPS is n=1, and because it is making recommendations based on CGM data, we can’t publicly post the code to enable someone else to utilize #DIYPS.

    But, you can get Nightscout, which includes all of the publicly-available components of #DIYPS, including the ability to upload Dexcom CGM data, view it on any web browser and on a Pebble watch, and get basic alarms for high and low BG. We’re working to further develop #DIYPS, and also to break out specific features and make them available in Nightscout as soon as possible.

  2. Q: “Does #DIYPS really work?”

    A: Yes! For N=1, we’ve seen some great results. Click here to read a post about the results from #DIYPS after the first 100 days – it’s comparable to the bionic pancreas trial results.
  3. Q: “Why do you think #DIYPS works?”

    A: There could be some correlation with increased timed/energy spent thinking about diabetes compared to normal. (We’d love to do some small scale trials comparing people who use CGMs with easy access to time-in-range metrics and/or eAG data, to compare this effect). And, #DIYPS has also taught us some key lessons related to pre-bolusing for meals and the importance of having insulin activity in the body before a meal begins. You should read 1) this post that talks about our lessons learned from #DIYPS; 2) this post that gives a great example of how someone can eat 120 grams of carbohydrates of gluten-free pizza with minimal impact to blood glucose levels with the help of #DIYPS; and 3) this post that will enable you to find out your own carbohydrate absorption rate that you can start using to help you decide when and how you bolus/inject insulin to handle large meals. And of course, the key reason #DIYPS works is because it reduces the cognitive load for a person with diabetes by constantly providing push notifications and real time alerts and predictions about what actions a person with diabetes might need to consider taking. (Read more detail from this post about the background of the system.)
  4. Q:Awesome!  What’s next?

    A: We’re working on new features for DIYPS, of course.  Those include:

    • better real-time BG readings using raw unfiltered sensor values
    • calculation of insulin activity and carb absorption curves (and from there, ISF & IC ratios, etc.) from historical data
    • better-calibrated BG predictions using those calculated absorption curves (with appropriate error bars representing predictive uncertainty)
    • recommendations for when to change basal rates, based on observed vs. predicted BG outcomes
    • integration with activity tracking and calendar data

    We also are starting to collaborate with medical technology and device companies, the FDA, and other projects and organizations like Tidepool, to make sure that the ideas, insights, and features in #DIYPS get integrated as widely as possible. Stay tuned (follow the #DIYPS hashtagDana Lewis & Scott Leibrand on Twitter, and keep an eye on this blog) for more details about what we’re up to.

  5. Q: “I love it. What can I do to help the #DIYPS project?”

    A: We’d love to know if you’re interested in helping! First and foremost, if you have any ability to code (or a desire to learn), we need contributors to the Nightscout project.  There are many things to work on, including implementing the most broadly applicable #DIYPS features into Nightscout, so we need as many volunteers, with as many different types of skills, as we can get.  For those who are a bit less technical, the CGM in the Cloud Facebook group is a great place to start.

    If you want to contact us directly, you can reach out to us on Twitter (@DanaMLewis @ScottLeibrand and #DIYPS) or email us here. We’d also love to know if you’re working on a similar project or if you’ve heard of something else that you think we should look into for a potential #DIYPS feature or collaboration.

- Dana Lewis & Scott Leibrand

Ending data-shaming: diabetes data should provide perspective, not judgment, on diabetes

June 12, 2014 by
Let’s end data-shaming. A1c is not only number that matters for ppl w/T1 diabetes. #DIYPS http://bit.ly/1n86Z3A @danamlewis @scottleibrand
My last A1c dropped significantly. Some of these results can be attributed to changes I’ve made with #DIYPS, like predictive alerts, alarms that actually wake me up at night, etc. (If you are new to #DIYPS, click here to read a post explaining what the system is.)

Right now, #DIYPS is still n=1 (me), so until we can have more people using the system and verifying the algorithms (click here to learn more about carbohydrate decay rates and how you can test this yourself) and showing the applicability for a wider group of people, we’ll have to wait and see how these results translate to other people. With this in mind (and with the thought that it’s frustrating that A1c is the ‘holy grail’ of diabetes), I wanted to start looking at additional ways to utilize #DIYPS data, so I had some relevant data between the CGM data and the A1c.

We added a number of additional “stats” to my #DIYPS dashboard:  I started looking at my eAG (estimated average glucose) for a single day, a week, and 30 days. We also added a % ‘time in range’ (between 70 and 150) for the same time periods.
#DIYPS perspective with eAG and time in range stats

#DIYPS perspective with eAG and time in range stats

Having this data at my fingertips thanks to #DIYPS provides a great balance between the flood of data I get every day (288 individual data points per CGM) and the three month “benchmark” of A1c.

Why these stats are helpful:

  • I can track overall average (eAG) over time, without having to wait 3 months for the next A1c value.
  • I don’t have to guess where I’m at or go borrow a Windows computer to look at my CGM data.
  • I’m not chasing a lower A1c/eAG at the expense of all else (i.e. having lots of lows). A <120 average for a week is good; but if my time in range is <80%, that’s not ideal. Finding a balance between time in range (95%+ is great, 90%+ is good, 80%+ is target) and a good eAG (<120 or <125) is the ultimate goal.
  • If I have a day with higher than usual BGs (usually resulting in a high 24 hour average and low % time in range), I can see the impact it has on a week and the month.

I am happily sharing my “time in range” and eAG numbers, because I am happy with them, and I’m able to show “what is working”. But I have often hesitated to share my A1c data publicly.

Here’s why:

I’ve observed judgments, negative comments, and changed behaviors based on people’s perceptions of what is a “good A1c” and whether someone is “in control” or not of diabetes, based on this SINGLE average of a value that can be off by as much as 0.5% depending on the lab. This comes back to what Scott and I talked about regarding carbohydrate consumption and judging what people eat.

Why do we do we allow any shaming – regarding food or based on snapshots of data – in our communities? Sometimes there is a conversation about the shaming that happens regarding food choices, but I don’t think we apply the same conversation to data-shaming. My hope is that one day, everyone feels safe sharing their A1c, or pictures of their CGM graphs, at any time – even if it’s not the outcome they were hoping for in that moment.

Diabetes is a constant learning process with constant decision-making. Why don’t we frame sharing data and perspectives like this:

  • Here’s what didn’t work today: (Image of a CGM roller coaster)”
  • “Wow, this (pre-bolusing and then xyz) worked! (Image of someone’s ideal CGM graph)”
  • “Hmm, I tried xyz, but didn’t quite work, I’m going to try xyz+1 next time (image of a spike on a CGM graph)”
  • “Just got my A1c back: X%. Helps me see that small changes are making a difference in the long run.”
  • “Just got my A1c back: X%. Brainstorming ideas with family/care team about what I can do differently.”

Will you join me in pledging to end data-shaming for PWDs (people with diabetes)?

  1. I pledge to stop making snap-judgments about other people’s diabetes data. 

    One data point (A1c or a single BG reading) or a snapshot (3 hour or 24 hour CGM graph) does not tell the story of someone’s decision making and choices. It tells the outcomes of hundreds of decisions that we don’t know about, and hundreds of variables that someone doesn’t have control over. As it’s not our data and not our lives, we have no business making judgments regarding it.

  2. I pledge to start a conversation about data-shaming and bring awareness to this problem when I see it happening.
Please comment below if so, and share your thoughts on what else could be added to the pledge.
- Dana Lewis.

Determining your carbohydrate absorption rate (#DIYPS lessons learned)

May 29, 2014 by

Calculating your absorbed carbs after a large meal matters; here’s how to do it (lessons learned from #DIYPS): http://bit.ly/1wtHRec @danamlewis @scottleibrand

We recently reported a number of lessons from #DIYPS that have allowed us to greatly improve management of mealtime blood glucose in type 1 diabetes (n=1). One key component was measuring the rate at which carbs were absorbed into the bloodstream (in the absence of any prebolus or IOB), and tracking the carbohydrate decay over time. In order to effectively adapt these lessons from #DIYPS, it would be useful for others to do the same test. This post attempts to describe how to do so.


This test is applicable to people with type 1 diabetes (with little or no natural insulin production) and requires the use of a continuous glucose monitor, such as the Dexcom G4. In order to eliminate as many variables as possible, it is important that no insulin is onboard (IOB) other than normal basal insulin. It is also important that nothing has been eaten recently, and that blood glucose levels are stable and in range. Since this test involves consuming carbohydrates without immediately bolusing for them, it is also useful if blood glucose levels are at the low end of normal range, ideally around 80 mg/dl. You can expect the test to take up to two hours, depending on the quantity of carbs consumed and the absorption rate.

Preparation and background

Once all these conditions are met, the actual test consists of consuming a premeasured quantity of carbohydrates (sugars or starches, without significant protein or fat), like a small juice box. In addition to measuring the rate at which carbs are absorbed, this test will also allow you to measure your carbohydrate to blood glucose ratio. In order to avoid raising blood sugars to unsafe levels, it is best to use 15 to 30 g of carbs, depending on your initial BG level and your carb to BG ratio.

If you do not know your carb to BG ratio, it can be calculated using your carb to insulin ratio (meal bolus ratio) divided by your correction ratio. For example, if your meal bolus ratio is 10 g carbs per 1U insulin, and your correction ratio is 40 mg/dl per 1U insulin, then your carb to BG ratio is 10g carbs to 40 mg/dl of BG; or more simply 1 g carbs to 4 mg/dl of BG. In that case, if your initial BG level is 80 mg/dl, and you consume 20 g of carbs, you should expect your BG to rise 80 mg/dl, to 160 mg/dl, by the end of the test. By observing how high your BG actually rises, you can determine whether or not your ratios are accurate, and if necessary re-estimate your carb to BG ratio.

Running the test

When you are ready to do the carbohydrate absorption rate self-test, simply note the time at which you consume the carbohydrates, and the CGM blood glucose level at that time. (Being aware of the accuracy of CGMs, you may decide to also test your BG with fingerstick/meter to correlate. Obviously, you’d want to do this self-test with a CGM sensor that you feel is “good” and in range with your BGs rather than one that doesn’t seem to be tracking very well.) Then, as each additional BG reading comes in every five minutes, note the time and BG level. You should expect to see BG stayed relatively constant for an initial delay period of roughly fifteen minutes, then rise steadily until all the carbohydrates are absorbed, and your BG has risen to approximately the level predicted by your carb to BG ratio. At that point, BG should flatten out, and you should administer a correction bolus. (If your ratios are correct, and no confounding factors are in play, the correction bolus should be approximately the same amount as the original meal bolus would have been for the carbs consumed at the beginning of the test. Again, if you have 20g of carbs and your correction ratio is 1u:40mg/dl, you would correct 2 units to bring yourself from 180 to 100; this would match the 2 units you would have taken for 20g of carbs given the 1u:10g carb ratio.)


Example of the steady, consistent rise of BGs following carb consumption

Calculating results

Once the test is complete (or earlier, if you’re bored or impatient), you can note your initial carb absorption delay (the time required for glucose to get from your mouth to your CGM receiver), which is simply the time between when you ate the carbohydrates and the first significant uptick (generally more than 5 mg/dl in a 5 minute measurement interval). Then, once you start to see a sustained rise, you can calculate the rise rate. For example, if after 30 minutes from the start of the rise (~45 minutes from when you ate the carbs) you’ve risen 60 mg/dl, that would be a rise rate of 2 mg/dl/minute. If your carb to BG ratio is 1 g carbs to 4 mg/dl of BG, that would equate to 0.5 g carbs / minute, or 30 g carbs / hour.


You may see that your carb absorption rate has an initial ramp-up period, and that it takes a few data points before BG begins rising steadily at ~10 mg/dl per data point (each data point is 5 minutes). Similarly, you may see that the BG rise flattens off gradually at the end. However, if your experience is like ours, you’ll see that for most of the time the carbs are being absorbed, the rise rate is fairly steady. For this reason, we find it useful to approximate the carb absorption curve by assuming an initial delay, where BG remains flat, followed by a linear rise at a constant rate (2mg/dl/min in Dana’s case), until all the carbs are absorbed and BG flattens out.

Calculating unabsorbed carbs after a meal

Modeling carbohydrate absorption in that way allows you to fairly easily calculate how many carbs remain unabsorbed after a meal: simply subtract the initial carb absorption delay (~15m for Dana) and divide by the carb absorption rate (~2mg/dl/min) to see how many carbs are absorbed, and subtract that from the estimated meal carbs to get an idea of how much still remains to be absorbed. This, in turn, enables you to do a meal bolus calculation (as if you were just now eating the unabsorbed carbs) to determine whether your IOB is too high (while you still have time to do a zero temp basal) or too low (allowing you to safely administer an additional correction bolus even before your BG is done rising from the meal). #DIYPS uses this algorithm to repeatedly re-evaluate the remaining/active carbohydrates in the body and compare it to the IOB. Given that things can change quickly (especially with exercise/activity after a meal), the possibility of miscalculated carbohydrates ingested, or simply the body’s variable response to insulin, recalculating this repeatedly helps provide an additional safety net after meals.

Going from n=1 to n>1

The simple self-test and calculations above should provide people with type 1 diabetes a method to approximate their own carb absorption rate and calculate carbs on board at any time after a meal.

If you do perform this or a similar test and determine your carb absorption rate, it would be interesting and useful (especially in developing #DIYPS to be suitable for more widespread use) to compare results and see how carb absorption varies from person to person. If you are willing to share your results, please reach out to us to share (privately) whatever information you are comfortable sharing, such as carb absorption rate, carb to BG ratio, carb to insulin meal bolus ratio, and/or insulin to BG correction ratio. We will not share your individual data, but if we get enough responses, we will share aggregated statistics (average, median, standard deviation, etc.) so that people who have not done their own carb absorption test can still get a better idea of how fast their mealtime carbohydrates should be absorbed.


Get every new post delivered to your Inbox.

Join 29 other followers