For research purposes only. Currently a work in progress.
Gluco is an open hardware and software project. With it, you can create your own fully-featured glucometer.
The microcontroller logic is hosted on Arduino Uno and an e-Health shield right now. The code here should be all you need to get the Arduino and e-Health shield working together.
Required hardware:
- Arduino Uno (others will probably work, but I used the Uno)
- e-Health Shield
- Glucometer sensor
I built this without using the Arduino IDE on Linux Mint, so the build instructions reflect that. This only works on the Arduino Uno (as far as I know).
You need the Arduino toolchain and pySerial:
sudo apt-get install arduino
pip install pyserial
Connect your Arduino to a USB port and get ownership of the port:
sudo chown $USER /dev/ttyACM0
The Arduino code is in the gluco
directory:
cd gluco
To build and upload the code to your Arduino, all you need to do is:
make -k upload
Or in emacs with Arduino support, compile and upload in one step with M-x
compile RET make -k upload
.
The driver is a Rust program that reads the data from the Arduino, interprets
it, and relays it to the desired web services. Follow the Rust documentation to
install cargo
and then do the normal cargo build
to create an executable.
Version 0.1 is a workable glucometer. It will accurately report blood sugar levels, and it will be easy to set up. It might not look like the prettiest thing, but it will get the job done.
It will be fully integrated with Tidepool and Nightscout.
This will be hosted on the Arduino an e-Health shield. It will be pre-package-able, meaning I could make one and pack it up into a small box, give it to someone else, tell them to download the software, and it would just work.
Version 0.5 will take much longer to release - I will do as much custom hardware design as I need to get off of the e-Health shield and an off-the-shelf glucometer. Instead, perhaps I’ll make a sheild that has the glucometer built-in. This would also allow me to create a casing for the entire thing, and make it very sleek.
Between v0.5 and v1.0, a ton of work will go into creating a solid platform. It will be re-implemented in Rust with Zinc, thus giving the entire hardware stack compiler-enabled safety:
In addition to software safety, zinc provides hardware safety with Platform Tree specification; you define the hardware configuration right in the code in simple key-value DSL and compiler verifies that all hardware is configured properly
How cool is that?! I plan for version 1.0 to be done by summer of 2016.
Version 1.0 will be big, but it will also enable a really powerful platform. Within 6 months after 1.0 is released, I could have a continuous glucometer prototyped. That’s what I’m really excited about: an open source continuous glucose meter.