New partnership changes everything for the DIY diabetes community
hanselman.com
hanselman.com
From my limited experience with this, it seems that all existing medical device software is closed source and are certified as executables - but I'm not sure if this is a limitation of the FDA processes, or the fact that they're intended to be closed source?
More importantly though, there isn't such a thing as "certification". You can go through a PMA or 510(k) to get "approval to market" for a restricted set of claims based on your filing, leading to "indications for use". This wouldn't really apply to an open source project unless someone were selling it an making claims on how it could be applied.
In the US, clinicians would have fairly broad power to use a product "off label" if they chose, and the FDA doesn't control anything around what you might choose to use on yourself.
That create two cases where GPL have no issue with DRM. The first case is when no one can update the device because there is no update mechanism.
The second case is when there is DRM, and the device can be updated, and the manufacturer give the owner the power to inject their own keys. Again this is allowed.
FDA should have no issue with the first case. It may have a issue with the second case if the update allows for changes which impact the medical safety of the device (but not technological security, as there is an exception for that by the fda).
[0] https://jamorham.github.io/
YMMV.
In most cases, MCU IDE's like the classic Arduino one don't even give you an allocator, all data must be statically allocated beforehand.
IIRC it doesn't use the stack either. The main() and loop() functions initialize all their variables statically.
When you have 2KB of memory to share between code, data and stack, allocating and using stack for function calls is luxury that only introduces problems.
Hence, I've never ever ever seen an MCU crash from segfaults or OOMs.
On the plus side they will also use vastly less energy. 10 Milliamps is enough to drive a ESP8266 or ESP32, in deep sleep you start counting microamps. A single battery cell can easily last a month.
I'm guessing industry hasn't produced this in a streamlined (reasonable) device because it will never be certified, and open source is just a codeword for subverting the regulatory process. Which, from a diabetes sufferer POV, is understandable.
The dark cloud on the horizon is that if the FCC throws a hissy fit because you can install new software on your wireless router, imagine what the FDA will do if you market your device as compatible with this open source software that claims to automagically control your insulin pump.
No cables at all (and no infusion set cord if you use an Omnipod pump!)
I myself use Loop. It's an iOS app that uses a RF-to-BT bridge to talk with the pump and intercepts the CGM reading from the official Dexcom app (there are forks that support different methods, being the Dexcom source the "official" one). The bridge is the size of a 9V battery, I never stopped to see which processor uses but it's probably 8 bit.
Each system support different pumps, sometimes people want to use one but are stuck with a different one to be able to use their pumps.
If you change the configuration, you encounter the possibility of finding new bugs. When someone's life is tethered to the device, this will make engineers (and lawyers) properly twitchy.
For a perfect example of this, have a look at the the Ariane 5 [1]. Existing software was used in a new configuration and when it encountered an untested condition the software crashed, resulting in the rocket self-destructing.
Now, consider, you're adding bluetooth to a safety critical device - this is a protocol stack where people can't get their phone to connect to their car, and my Android phone occasionally needs to be rebooted before it will connect to my headphones.
[1] https://en.wikipedia.org/wiki/Cluster_(spacecraft)#Launch_fa...
For all the issues in medical device engineering, the bar is higher than most people (particularly in software industry) have worked in. Obviously there are other areas too (e.g. aerospace), with similar or higher bars.
Your project will benefit by finding people with experience in hazard analysis and risk mitigation, testing, SDLC management etc. They either have to be motivated to do this on their own or payed, or a mix. Hopefully you'll find people familiar with ISO13489, IEC60601, IEC62304, etc. - not because you'll want to audit to these standards, but because the people will also be familiar with what's needed.
Basically, to have the quality where you want it to be, you need to do the work. The flexibility of such a system is great, but in terms of verification and validation, the amount of work could become exponential with the configurabilty - so you are probably going to want to concentrate on some specific configurations pretty rigorously and encourage them for "real" use.
What is new is that the tools and technology (think dirt-cheap microcontrollers that you can easily (re)program, 3D printers etc) are getting to the point where it's becoming more realistic for more people to be successful with less effort/risk along with a means (i.e. the web) for people to collaborate and share information.
That said: yeah, one better do their homework as they are definitely taking their own health (or even life) into their hands.
"The patient died when the hospital was locked out of the pacemaker due to a bug in the license code parser in the patient's device."
You still need to have security for remote control safety, but a device maker cannot afford even a single bug in the "I have my hands physically on the device and I require access" pathway, or else deaths will eventually occur.
The key is: "Well Maintained". For these insulin closed loop community, I bet they are. They bet their own life on it.
> You spent 1 day developing, 1 day testing and 5 days documenting.
Fwiw, that is not accurate. Or at least, not if you are doing it right.Handled smartly with some centralized tools, they could have something really effective.
Also the lack of insulin means the glucose isn't going anywhere to be used.
Diabetic ketoacidosis will eventually lead to a Koma.
I've never heard about Type-1 diabetics avoiding insulin through low-carb diets. From what I know about diabetes management (and I know a lot) that sounds incredibly dangerous.
Still, keto-genetic diets and even fasting, can be very beneficial, especially for Type-2, but patients need to keep track of their blood sugar. If you take insulin, you MUST check your blood sugar level, otherwise you may faint or go into a life threatening ketoacidosis.
But doesn't lack of data on glucose levels during ketosis with zero-glucose diets in type-1 diabetics seem weird to you too? As far as I know (obviously I may be wrong and I'm not an expert, just a curious person) once your body switches to ketosis it is fueled entirely by ketone bodies (which feels awesome according to my experience, but I'm not diabetic) and does not use glucose any more. I also thought it stops producing glucose from proteins too when in this mode. So this seems an obviously interesting area for research.
The assumption that there is no glucose used by your body when you are eliminating it from your diet is flatly wrong.
Firstly eliminating glucose and anything we can make glucose from (carbohydrates and protein) from a sustainable diet (= not using up your reserves) is next to impossible.
Secondly even when there is no protein and no carbohydrates in the diet, your body will claim the protein from your muscles and turn that into blood sugar.
Thirdly, some tissues in the body, especially the brain, just plainly need glucose. The body will make glucose, no matter what, even at the expense of destroying itself.
There is a lot of hype, marketing and simplification around ketogenic diets. Not all of that translates down to the actual physiology. Ketogenic diets are beneficial to diabetics, fasting will lower insulin tolerance, whether you are a diabetic or not. This is well known, and research is going on. There are even indications that fasting leads to more insulin production in Type-1 diabetic.
Note how both articles don't talk about fasting or ketogenic diets. Basic idea: even a low blood sugar level (let alone 0) is very very bad news. The metabolism will do its utmost to make glucose, even from amino acids. That's why even people who eat nothing don't have hypoglycemia all the time...