Skip to content

5 · Add a Garmin (optional)

The Garmin remote is optional. It's a small app for the Garmin Venu 3S (the currently supported watch) that asks your iPhone to bolus — the phone still owns the pump and confirms everything. It also shows glucose on your watch face and a history plot. (See Garmin remote for how it's used; the app adapts to touch vs. button devices at runtime, so adding another Garmin watch or Edge cycling computer is usually just a manifest entry — see the faBolusGarmin contributor guide.)

What is Connect IQ?

Connect IQ is Garmin's system for third-party watch apps (like the App Store, but for Garmin). Building a Connect IQ app uses different (free) tools than the iPhone app. We'll do it all inside Visual Studio Code, a free editor, using buttons — not commands.

The Garmin app lives in its own project

It's in the separate faBolusGarmin repo. The iPhone side is already in the app you built in Step 3, so here you just build the watch app and pair it.

Garmin glance
Glance
Garmin history
History plot
Garmin confirm
Tap 1-2-3 to confirm

What you'll need

  • The iPhone app already built with Garmin support — that means you completed Step 2 (added the Connect IQ Mobile SDK) before generating and building the app. If you skipped it, the app was built without Garmin and its Remotes & devices settings section says so; add the SDK, re-run Step 3, and rebuild first.
  • Visual Studio Code (free) with Garmin's Monkey C extension (installs the tools for you).
  • The Garmin Connect app on your iPhone, with your venu3s already paired to it.

Step 1 — Download the Garmin app

In GitHub Desktop (the same app from Step 3): File → Clone Repository → URL, paste the address below, and save it next to your other projects:

https://github.com/faBolus-app/faBolusGarmin

Step 2 — Install the Garmin tools (in VS Code)

  1. Download and open Visual Studio Code (free).
  2. Click the Extensions icon in the left bar (four squares), search Monkey C, and click Install (it's by Garmin).
  3. Press + + P to open the command box, type Verify Installation, and pick Monkey C: Verify Installation. It walks you through downloading the Garmin SDK and the venu3s device files — just say yes to the prompts.

Step 3 — Make a developer key (one click)

Garmin apps must be "signed" with a key, like the iPhone app. In VS Code, press + + P, type Generate, and choose Monkey C: Generate a Developer Key. VS Code makes it and remembers it. That's all.

Advanced: make the key in the Terminal instead (optional)
openssl genrsa -out ~/Documents/faBolus/developer_key.pem 4096
openssl pkcs8 -topk8 -inform PEM -outform DER \
  -in ~/Documents/faBolus/developer_key.pem \
  -out ~/Documents/faBolus/developer_key.der -nocrypt

Step 4 — Build and preview it

Connect IQ simulator
The Connect IQ simulator shows the app on a virtual venu3s
  1. In VS Code, open the faBolusGarmin folder (File → Open Folder…).
  2. Press + + P, type Run, and choose Monkey C: Run.
  3. When it asks for a device, pick venu3s. The Connect IQ simulator opens with the app running.

The simulator can't reach your iPhone or pump, so bolus screens show the "phone unreachable" path there — that's expected. It's just for checking the screens look right.

Advanced: build from the Terminal (optional)

cd ~/Documents/faBolus/faBolusGarmin
SDK=~/Library/Application\ Support/Garmin/ConnectIQ/Sdks/<sdk-version>
"$SDK/bin/monkeyc" -f monkey.jungle -o bin/faBolus.iq -y ~/Documents/faBolus/developer_key.der -e -r -w
Check the faBolusGarmin README for the exact device/flags.

Step 5 — Put it on your watch

Easiest: publish it as your own private beta with one command. The Connect IQ store needs a unique app id per beta listing, so faBolusGarmin ships a script that handles everything automatable:

cd faBolusGarmin && ./scripts/beta-build.sh

It generates your personal app id (once), builds a signed store .iq, and points the iPhone app at it automatically (writes GARMIN_BETA_APP_ID into faBolus/LocalConfig.xcconfig and regenerates the project — no files to edit, no debug toggle). Then just: Run the iPhone app in Xcode, and upload the revealed .iq at the Connect IQ dashboard → install to your watch from the Garmin Connect IQ Store app. Full details + prerequisites: faBolusGarmin docs/STORE-BUILDS.md.

(Alternatively, sideload over USB with a developer key — see the faBolusGarmin README.)

Step 6 — Pair the remote to your iPhone

  1. Make sure Garmin Connect is installed on your iPhone and your venu3s is paired to it.
  2. Open the faBolus iPhone app, tap the watch icon (top-right) → Set up Garmin remote. Garmin Connect opens so you can pick your venu3s.
  3. Come back to faBolus — it remembers your watch and shows "Garmin remote: <your watch> ✓".

Success looks like: the faBolus app on your venu3s shows your glucose, and the iPhone app lists your watch as the Garmin remote. Learn the screens on the Garmin remote page.