LoopFace
Documentation

xDrip+, AAPS, Spike & Nightscout — Installation & Setup

Connect your CGM data to your Garmin watch using xDrip+ (Android), AAPS (Android), Spike (iOS), or Nightscout. Local sources work without internet — data flows over Bluetooth. Nightscout requires your site to be reachable from your phone.

⚡ Quick Setup Guide
1
Install Companion App
  • Install xDrip+ (Android)
  • Or AAPS (Android)
  • Or Spike (iOS)
  • Or use Nightscout
2
Install LoopFace
  • Open Garmin Connect app
  • Find LoopFace in Connect IQ
  • Download & sync to watch
3
Enable & Select
  • Enable web server in your app
  • Select your app in LoopFace settings
  • Data syncs automatically
Total time: 5–10 minutes No internet required Detailed steps below
1

Install the Companion App on Your Phone

First, install one of the compatible apps on your phone. Choose based on your device and preferences:

Android
xDrip+

Popular open-source CGM app. Shows glucose from Dexcom, Libre, and other sensors.

Download from GitHub
Android
AndroidAPS

Advanced diabetes management with closed-loop support. Provides IOB, COB and basal rate.

Download from GitHub
iOS only
Spike

CGM app for iPhone. Works with Dexcom, Libre and Nightscout followers. Shows IOB and COB.

spike-app.com
Android & iOS
Nightscout

Self-hosted CGM data platform. LoopFace reads glucose, trend and delta from your Nightscout URL. If a looping system (AAPS/OpenAPS) is writing to it, IOB, COB and basal rate are shown too.

nightscout.github.io
xDrip+, AAPS and Spike are not available in app stores. Download them from the links above and follow each app's own installation guide. Nightscout requires hosting — see nightscout.github.io to get started.
2

Install LoopFace on Your Garmin Watch

  1. 1

    Open Garmin Connect on your phone

    Make sure your watch is paired and Bluetooth is on.

  2. 2

    Browse to the Connect IQ Store

    In Garmin Connect, tap More → Connect IQ Store, or visit apps.garmin.com and search for LoopFace.

    LoopFace on the Connect IQ Store
  3. 3

    Tap Download

    The watch face will sync to your watch automatically within a few minutes.

  4. 4

    Set LoopFace as your active watch face

    On the watch, hold the button to open the watch face picker and select LoopFace. Or in Garmin Connect, go to My Device → Watch Face.

3

Configure Your Companion App

Enable the local web server in your app so LoopFace can retrieve glucose data. Select the tab for your app:

  1. 1

    Open AndroidAPS

    Make sure you're running AAPS version 3.2.0.4 or newer.

  2. 2

    Enable the Garmin plugin

    Go to Config Builder → Synchronization and enable the Garmin Plugin. This activates the local HTTP server on port 28891.

    AndroidAPS Config Builder — enable Garmin Plugin
  3. 3

    Select AAPS in LoopFace settings

    In Garmin Connect → My Device → Watch Faces → LoopFace → Settings, set Data Source to AAPS (this is the default). Leave the "Request Key" field blank.

Test your connection

Open your phone's browser and visit this URL. If you see JSON data with glucose values, AAPS is configured correctly.

http://127.0.0.1:28891/sgv.json?count=12&brief_mode=true
IOB, COB and Basal Rate are available with AAPS and Spike. Nightscout also shows these if a looping system is writing to your site. All three are hidden when using xDrip+, which does not expose pump data. You can display basal rate as U/h instead of % — enable Show BR as U/h and enter your Base Basal Rate in settings.
4

Verify Data on Your Watch

Once your companion app is configured, data will start flowing to your watch automatically.

  1. 1

    Keep your phone nearby with Bluetooth on

    LoopFace fetches data through Garmin Connect every ~5 minutes. The phone must be in range.

  2. 2

    Wait for the first refresh

    Due to Garmin SDK limitations, data updates run on a ~5-minute cycle. Give it up to 5 minutes after setup before expecting readings to appear.

  3. 3

    You should now see live glucose data

    The watch face will show current glucose, trend arrow, delta, and a background graph. IOB, COB and basal rate are shown for AAPS, Spike, and Nightscout users with a connected looping system. xDrip+ shows glucose only.


?

Troubleshooting

Data is not updating on the watch

Check that the web server is enabled in your companion app. Verify your watch is connected to your phone via Bluetooth and that Garmin Connect is running (it can be in the background). Make sure you selected the correct Data Source in LoopFace settings. Wait at least 5 minutes — updates are limited to every 5 minutes by the Garmin SDK.

The watch shows "HTTP 400" or "Invalid Format"

The selected data source doesn't match what's running on your phone. Double-check your Data Source setting in LoopFace matches the app you configured (AAPS, xDrip+, or Spike). Restart both your companion app and Garmin Connect.

Data stops after a few hours

Your phone's battery optimisation is killing the companion app. Disable battery optimisation for both your companion app and Garmin Connect. Visit dontkillmyapp.com for device-specific instructions.

IOB / COB / Basal Rate not showing

IOB, COB and Basal Rate are available with AAPS and Spike. Nightscout also shows them if a looping system (AAPS/OpenAPS) is uploading to your site — LoopFace fetches them from /api/v2/properties/iob,cob,basal. xDrip+ does not expose pump data so all three are always hidden. If you're using AAPS and still not seeing them, make sure the Garmin Plugin is enabled in AAPS Config Builder.

xDrip+ web server test URL returns nothing

Make sure you enabled xDrip Web-Server (not "Open Web Server") under Settings → Inter-App Settings. After enabling, restart xDrip+ and try the URL again.

Spike test URL returns nothing on Safari

The Internal HTTP Server may not be running. Go to Spike → Settings → Integration and confirm the toggle is on. Also check that iOS Background App Refresh is enabled for Spike in your iPhone settings.

Nightscout data is not loading on the watch

Make sure the Nightscout URL field in LoopFace settings contains your full sgv.json URL including https://. Verify the URL returns data when opened in your phone's browser. If your site requires authentication, append ?token=YOUR_READ_TOKEN to the URL. Also confirm your phone has an active internet connection — unlike AAPS/xDrip+/Spike, Nightscout requires internet access.

IOB / COB / Basal Rate not showing with Nightscout

These are only available when a looping system (AAPS, OpenAPS) is uploading to your Nightscout site. LoopFace fetches them from /api/v2/properties/iob,cob,basal — verify this URL returns data in your browser. If you only use Nightscout as a CGM viewer without a loop, these fields will not appear.

Still stuck? Email chanangadhere@gmail.com and I'll help you get it sorted.

Important Disclaimer
  • NOT FOR MEDICAL DECISIONS. This app is for informational purposes only and should not be used to make medical decisions.
  • Always verify readings with your official CGM receiver or app before taking action.
  • Delayed data. Readings may be delayed by several minutes due to how often the watch can sync.
  • Emergency situations. In case of extreme glucose levels or medical emergencies, use your primary CGM device.
  • No liability. The developer assumes no responsibility for health outcomes related to the use of this app.