My Hombrew Android CGM Build So Far (Sony Smartwatch 3 | Freestyle Libre | xDrip+ | Libre Alarm)

I wanted to share my recent homebrew Freestyle Libre "CGM" setup, for anyone who isn't aware or having a hard time piecing information together

TL;DR:

  • Freestyle Libre Sensor
  • Libre Alarm
  • xDrip+ (In Beta, APK download in link)
  • Sony Smartwatch 3 as the "CGM" bridge
    • NOTE: The Sony Smartwatch 3 is currently the only watch that will work as the bridge, see my setup guide below for more
  • My own Nexus 6P (Any recent android device that can handle connecting to the watch, and installing Libre Alarm and xDrip+ will do)

Combining the above gives me a flexible CGM ran off a secondhand android watch and my personal phone. It gives me an incredible amount of data in comparison to finger-prick testing. It massively reduces the number of finger prick tests needed. It gives me the ability to see my glucose trends and ask docs/nurses/Reddit questions like this. With the Beta xDrip+ it will even suggest how much insulin I should take, and warn me of future hypos/hypers and alarm my phone if they occur.


The Fine Details:

The core of the setup is the Freestyle Libre sensor:

  • The sensor attaches to the back of the arm like a sticker
  • Costs €60 each and lasts 14 days (Although [at your own risk] with third party software, it lasts even longer)
  • Is painless to attach, slightly larger than a coin, unobtrusive, and waterproof for 30 mins
    • Note: There is a needle in the insertion device, but it's spring loaded and instantly retracted. It's used to feed in the thread that reads the fluid data. I personally did not feel it, and haven't heard anyone else complain online either.
  • The Libre has the ability to:

    • record *glucose readings every few minutes, and pass last 8 hours of readings via NFC
    • be read by Abbott's proprietary reader hardware
    • be read by Abbott's official apps for NFC devices (android only, available on google play store in supported countries)
    • be read by third party apps such as Glimp or LibreAlarm
  • I ordered a single sensor from Abbott's Irish website (I'm based in Ireland). They sell a full started pack, that includes a reader and two sensors, but I decided to try the homebrew (less devices to carry!)

Sony Smartwatch 3 as a bridge:

  • It was recently announced that the smartwatch 3 wasn't going to be upgraded to Android Wear v2.0, so it looks like secondhand prices are falling rapidly! I got one for €70, and saw 4 others go up for sale that same day within 2km.
  • The idea behind using the smartwatch 3 here is to read the Libre sensor's NFC data and transmit back to an android phone.
  • At the moment, the Sony Smartwatch 3 with a custom ROM/Kernel is the only compatible watch for this kind of setup, due to Android Wear's restrictions on the NFC chips (More below).
  • The watch can be worn as a regular android watch, if you prefer to read the data from the sensor by passing it over, with an android wear app like Glimp.
  • Or the watch can be worn directly on top of the sensor, intermittently reading from the sensor and sending to your phone like a CGM.
    • I've currently hacked an armband together to hold the watch over the sensor, but have ordered a 3D printed holder from here, which I've heard good things about.

The Setup:

I'm writing this from memory, so please bare with me if steps are missing. Use this guide if you want a CGM setup with the devices listed above.

  1. Order a Freestyle Libre Sensor (No prescription needed)
  2. Setup your Smartwatch with NFC and your app of choice (Warning, this may be quite advanced for the non-technical. Phone a friend)
    1. The majority of the steps needed to get the NFC working are here
    2. I additionally followed this thread to increase my watches battery life (Currently getting over 3 full days and nights in CGM mode with readings @10 minute intervals)
    3. I upgraded my watches google play services version to the latest compatible with Android Lollipop as I was planning to use it as a watch, but ended up only using it as a CGM so this step is probably optional (Thanks to the Glimp devs for these steps).
      1. Download Google Play Services APK here
      2. Execute command [adb install -r "file.apk"], where "file.apk" is the name of the downloaded file.
      3. After this you should see on smartwatch the package updated to version 10.0.84
    4. I also do a few extra steps at the very end, once you've tested the watch works with the apps in the next steps:
      1. Turn on the watches cinema mode to prevent notifications from my phone
      2. Root the watch to allow LibreAlarm to put the watch CPU into low-power mode to conserve battery and disable touches
    5. The Glimp app developers have some good/extra information too if you get stuck.
  3. Next step is to setup the app of your choice. I choose LibreAlarm as I'm running mine in CGM mode. LibreAlarm is downloaded on your phone, and from what I remember, it's self explanatory (with the additional optional steps above for rooted watches).
    1. Setup LibreAlarm to send to xDrip and disable alarms/notifications from LibreAlarm (Look in the options for xDrip+ and Preferences)
  4. Setup xDrip+
    1. Download the latest .apk from here (please note it's still in beta, more details here)
  5. Install and setup xDrip+ to use the data read by LibreAlarm in: > Settings> Data Source Settings> Libre Alarm
  6. Lastly, the Libre Sensor has to be activated/started before anything can be read. If you already have the reader, you can use that and still use a third-party app to read data. If you don't (like me), you can use the Glimp S app with an android device with NFC (The smartwatch is unfortunately not supported with Glimp S yet). (Just to note again, some of the recent android device's NFC chips are known to destroy the Libre sensor. Check through the deebee.it guides and other forums to see if your device is compatible first!)

The costs came to:


If anyone reading has contributed to any of the free apps I mentioned, thank you! I hope to also contribute soon myself.

I'd love to hear if anyone has any other tips/suggestions. I can update this thread with more info/corrections.