Ottai, xDrip and other CGMs
Besides the FreeStyle Libre 2+, Vitality Tracker accepts readings from any app that can upload to a Nightscout-style endpoint. That covers a lot: Ottai, xDrip+, Juggluco, Shuggah, and most community bridges for Dexcom and Libre sensors.This page used to say Ottai was the only CGM the Workbench supported. That
was true until September 2026 and is not any more — the
FreeStyle Libre 2+ now connects directly, with no bridge
app at all. If you have a Libre 2+, use that instead.If you do not use a CGM, nothing here applies and glucose still works —
log readings by hand.
How it differs from the Libre path
Why the Ottai row shows no connection status. Vitality Tracker never talks
to a bridge app — it publishes an address and waits. It has no way to know
whether the bridge is configured, running, or has been uninstalled.The honest answer to “is it working” is the CGM data is present line at
the bottom of the panel, which reports what actually arrived and what device
sent it.
Setting it up
1
Open Settings → CGM Integration → Ottai connection
It expands to show an API SECRET and a URL, each with a Copy button.
These are created for you automatically — there is nothing to generate.
2
Paste them into your bridge app
In Ottai, xDrip or whichever app you use, find its Nightscout upload settings —
usually Nightscout URL and API secret — and paste both.
3
Check that readings arrive
Give it a few minutes, then look at the bottom line of the panel. It should say
CGM data is present, with the time and the device name.
Telling Vitality Tracker about a new sensor
A Libre reports its own activation time. A Nightscout-style upload carries no sensor information at all — readings arrive with no indication that the sensor was ever changed. So this one needs a tap. When you apply a new sensor, open Settings → CGM Integration, tap the sensor row, and confirm. You get two things for it:- Warm-up suppression — readings from the first 30 minutes are kept out of alerts. Worth having: Ottai declares its sensor ready quickly and the early readings are frequently wrong.
- Expiry tracking — you are reminded 12 hours before its 14 days are up.
Everything else works the same
Alerts, sensor-fault detection, the Live Dashboard, Apple Health and Health Connect sharing, removing bad readings — none of it cares which CGM the readings came from. One genuine difference: the rate-of-change sensor check works identically for any sensor, because it is based on physiology rather than on the device. The warm-up gate is the only part that depends on knowing when the sensor started, which is why the tap above matters.Two CGMs at once
Supported, and occasionally useful for comparison. Vitality Tracker keeps a separate sensor record per device, so each keeps its own warm-up and expiry. Readings from both land in the same trace. If they disagree, that disagreement is real and worth looking at.Next
Alerts
High, low and sensor warnings
How it works
Density, sensor life, and checking whether it is working