I built GluKaMon so that it could be flexible and get your glucose readings however you manage your glucose. Some people use the apps from Dexcom and Libre, others use open source projects like Nightscout or xDrip, and some use third party apps like Gluroo. GluKaMon works with all of these. I have illustrated below some of the most common variations with some of the pros and cons of each
1) Direct From the CGM Cloud Servers

The most common set is to use the apps provided by the major CGM providers, Dexcom and Libre
- Your sensor broadcasts glucose readings using Bluetooth, every minute for Libre, every 5 minutes for Dexcom, and your phone listens to those broadcasts. This is pretty reliable most of the time, but a few things can interfere:
- Water (and humans, because we are mostly water) blocks Bluetooth signals, so if your phone is in a back pocket and your sensor is on your stomach, signals can be blocked. I find that having my sensor on my arm and phone in a pocket on the same side gives the most reliable reading
- If you have a lot of Bluetooth devices talking (e.g. Bluetooth headphones, wireless bike components, Bluetooth connected radar, etc), signals can get lost in the noise. Turn off any unnecessary Bluetooth devices to reduce the chatter
- When sensors broadcast readings, they “fire and forget”, i.e. they don’t know if a signal has been received or not, so they don’t re-transmit readings that have been missed. But they do transmit every 1 or 5 minutes, and when they do, they send multiple readings, so even if a signal gets lost, you may get that reading one or two cycles later
- Your phone sends your readings to the servers in the cloud. So your phone needs to have good cellular coverage. If you are out of range, your phone will be unable to send your readings to the cloud. The app on the phone retries periodically, so typically when you get back within range your readings will be uploaded within a few minutes
- GluKaMon polls your CGM servers, approximately every 1 or 5 minutes, depending on your settings. GluKaMon uses the “Follow” service provided by Dexcom and Libre
- It uses the internet to connect to the CGM servers, which can be either using the SIM connection (in the K2), via bluetooth tether from your phone (this is not shown in the diagram), or via WiFi (although WiFi is usually not available when you are riding.) If you are using the SIM card in your Karoo, this could use a different mobile carrier than your phone, so you could have good coverage for your phone and poor coverage for your Karoo, or vice-versa
- GluKaMon dynamically adjusts it’s timing to anticipate when your glucose readings are expected, so it tries to poll the CGM servers a few seconds after it predicts the readings to be available. If the readings are not available yet (due to delays in the internet or anything upstream from your Karoo), GluKaMon will retry, so that your readings are displayed as soon as possible
- If any readings have been missed (e.g. if the last time GluKaMon polled your CGM servers, there simply wasn’t a reading available) GluKaMon will request as many readings as needed to fill the gap. So, for example, if your phone was out of range of internet coverage for a half hour, or the Karoo was out of range, as soon as GluKaMon can get readings again it will fill in that 30 minute gap, and will redraw any graphs you have configured, recalculate averages, etc
2) Via Nightscout (e.g. Gluroo) Servers

Another popular setup is to use Nightscout, which is open source, or Gluroo, to monitor your glucose. These platforms provide more functionality than most CGM vendor apps
- As in scenario 1, your sensor broadcasts glucose readings using Bluetooth, your phone listens to those broadcasts, and uploads them to the servers in the cloud
- Nightscout (or Gluroo) poll the CGM servers, retrieve your glucose readings, and make them available through their apps.
- GluKaMon polls Nightscout / Gluroo
- Because Nightscout has to first poll the CGM servers, and then GluKaMon has to poll the Nightscout servers, there are additional delays created by both communications latency through multiple internet connections and because the polling cycles of GluKaMon and Nightscout might not be exactly in synch. Of course there are many benefits to using Nightscout or Gluroo, so the additional delay in the data reaching your Karoo, typically no more than 1-2 minutes, may be acceptable
3) Via xDrip on Phone

If you use xDrip, an open source application that replaces the phone app from the CGM companies, you can get your readings directly from your phone (you can also use xDrip to upload your readings to Nightscout and get your readings from Nightscout, this is not illustrated.) Getting your readings from your phone is even faster than getting them from cloud servers since no internet or servers are involved, and you can ride “off the grid” where there is no internet coverage, and still see your glucose readings on GluKaMon
- Your sensor broadcasts glucose readings using Bluetooth and xDrip on your phone listens to those broadcasts
- GluKaMon polls xDrip over WiFi (typically using a WiFi hotspot on your phone, since most riders don’t have WiFi coverage on their rides)
- xDrip only runs on Android phones, not iPhones (there is a version of xDrip for iPhone, but because of IOS limitations it can’t provide glucose values over WiFi)
4) Via xDrip Sideloaded

Since the Karoo OS is based on Android, you can actually sideload xDrip directly onto your Karoo! This removes most of the links in the path from your sensor to GluKaMon, and so it is the fastest way to get your readings, with the least number of things to go wrong, and no need for internet connection which means you can use it off the grid. However it does require you to sideload and set up xDrip on your Karoo, which is not officially supported by xDrip, and some sensors only work with a single app/device at a time (e.g. it can be tricky or even impossible in some cases, to use xDrip on your Karoo AND your CGM providers app at the same time.) If you do choose this setup:
- Your sensor broadcasts glucose readings using Bluetooth and xDrip on your Karoo listens to those broadcasts
- GluKaMon polls xDrip internally to the Karoo (i.e. your glucose levels are just read from the Karoo’s memory
Summary
GluKaMon is very flexible and built to get your glucose readings however you choose, and there are other variations on the scenarios shown above. They all have different tradeoffs, and GluKaMon let’s you decide
Leave a Reply