Would somebody please direct me to some resources for creating and installing a home-brewed version of Linux onto an unsupported device with USB capabilities, like an insulin pump?

Basically, I need to create a Linux OS for my insulin pump, the Tandem t:slim. (tandemdiabetes.com), because I am working on a DIY Artificial Pancreas (automated insulin delivery based on Continuous Glucose Monitor readings--such as from this device, the Dexcom--dexcom.com). The insulin pump has a bluetooth chip that will work only with a firmware upgrade. I do know the chip used in the pump, which will be useful.

We have already got the continuous glucose readings into the cloud via mobile phones, using USB OTG (on-the-go) cables, for continuous monitoring (http://nightscout.github.io/). This can all be viewed using an Internet connection or a Pebble watch.

Basically, I am trying to link it all together, and the next step is to create a custom operating system for my insulin pump, the Tandem t:slim. I have already programmed one of the algorithms for the artificial pancreas model in MATLAB. My GitHub project is here: https://github.com/diabeticgonewild/Artificial_Pancreas (although it is missing adequate commenting and a README--I programmed this in 2011 just to see if I could do it!). I have to reprogram this in JavaScript to link it all together for CGM in the Cloud, a Linux OS for my pump, and the Artificial Pancreas Model.

Obviously it is a lot of work, but it's for my health. I have a very complicated medical situation (not directly due to diabetes--I have two rare autoimmune diseases) that complicates my diabetes control. This is one of the reasons I am doing this, and I am not waiting for a release of a product that is sub-par. I am certain I can do a better job than the device manufacturers. I know that this will void the warranty of my insulin pump, but I am OK with that.

I hope this question is coherent and that you understand my situation. I am also a senior electrical engineering student, which is a good attribute to have, as I have relevant skills.

Hashtag #wearenotwaiting

closed as unclear what you're asking by jasonwryan, Anthon, slm Oct 3 '14 at 5:00

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • I edited my question, and I added details. I hope this helps. Thank you. – SlaveToTheNeedle Oct 3 '14 at 16:56
  • It is still not clear to me how we can help, as a concrete and answerable question is lacking. Have you read the help center rules? Can you tell us what the device is that the Linux has to work on, what kind of processor and then which distributions you have tried to run on it etc.? What is up with the WeAreNotWaiting? – Anthon Oct 3 '14 at 17:15
  • Thank you Anthon. I read the help center rules. The Linux OS has to work on the Tandem t:slim insulin pump (basically, there is a bluetooth chip that can only work on the device through a firmware upgrade from the manufacturer, which will not happen due to FDA regulations--that is one of the reasons why I need to create a Linux OS for it). I do not know the kind of processor in the insulin pump. I do have general (non-specific) block-diagrams for insulin pumps, which can be seen here. maximintegrated.com/en/app-notes/index.mvp/id/4675 I have not tried to run any distributions. – SlaveToTheNeedle Oct 3 '14 at 17:22
  • Hashtag #WeAreNotWaiting is the rally cry of folks in the diabetes community who are taking matters into their own hands; they’re developing platforms and apps and cloud-based solutions, and reverse-engineering existing products when needed in order to help people with diabetes better utilize devices and health data for improved outcomes. – SlaveToTheNeedle Oct 3 '14 at 17:22
  • 1
    @SlaveToTheNeedle at first blush this does not seem much different than trying to get a distro running on a phone, a router, an iPod, or any other embedded device. You might start by looking at those types of projects. If the processor is supported, the basic idea is that you'll probably try to find JTAG pins on the device, probably try to get uBoot or something similar on there, and get the Linux image stored in a flash memory. I have played around with dev boards before; probably similar. You need to figure out the processor & basic hardware first. – transistor1 Oct 3 '14 at 17:50

That's what I do for a living... It's not really, um... An easy thing to do. There are a lot of steps, my man. You should try LFS.

This is Your Baptism by Fire

You will gain an understanding of how Linux is built... From Scratch! And do it yourself! You can research your device support on the LKDDB, the Linux Kernel Driver Database.

This is Your Device Driver Totem

This is the LKDDB. This is where you can research device driver support.

This is Where You can Explore the Linux Kernel to Understand how Drivers are Programmed

This is the Kernel Source.

This is Where All The Experts Really Come Together

This is Linux Weekly News, where you can keep abreast of the State of The Art.

And this is Where All The Experts Really Talk that Smack to Each Other

This is the Linux Kernel Mailing List, the Great Bazaar where Linux is created sure is a noisy place.

This is just a decent blog that covers Kernel Drivers frequently

This is a great Assembler tutorial

  • Thank you so much! I am an electrical engineering student, and I know C/C++, MATLAB, and Java. I am learning JavaScript and D3.js right now, and I will be learning assembly language soon. Thanks again. – SlaveToTheNeedle Oct 3 '14 at 0:10
  • Hold up there buddy! Join my IRC on irc.faikvm.com #turinglace – Tyler Maginnis Oct 3 '14 at 0:26
  • Hm? I don't see you. – Tyler Maginnis Oct 3 '14 at 0:43
  • I think I am on the right IRC now. I am using a new client and I fixed the issue. Thank you so much! – SlaveToTheNeedle Oct 3 '14 at 1:01
  • 1
    Appreciate the effort but link only answers are discouraged. If these resources go away this answer becomes useless to others. – slm Oct 3 '14 at 18:02

Not the answer you're looking for? Browse other questions tagged or ask your own question.