CYGM Build one

↑↓ to move Enter to open Esc to close ? for shortcuts

00 On the nightstand v1.1.10 Release

2026-10-15

A bedside CGM display you can read at 3am

A night glucose display that stays on, dims to a level that doesn't light the room, and sounds a bedside alarm you set up yourself. I built it because I wanted one in my own house.

  • 4Alarm tiers
  • 28Selectable tones
  • 5%Dimmest night level
  • $40In parts
A CYGM display on a desk in a dark room, its glucose reading clearly legible without lighting the space around it.

01 The 3am problem

Half awake is a terrible time to go hunting for a phone

The number you want is on a phone that's face down, charging in the other room, or bright enough to end your sleep the second you unlock it. A screen that's already showing the reading skips all of that.

That's the whole case for a bedside unit. It puts a number and a sound in the room where you sleep, and both can fail. The rest of this page is how each part behaves.

02 After dark

At night the whole screen goes to one number

Night Dim is a schedule you set. Inside the window the screen drops to the level you picked and the layout changes.

  • You pick a start time and an end time, then a night level of 5%, 15% or 30% brightness.
  • Inside that window the display hands itself over to one large glucose number, coloured by zone, with the trend arrow beside it.
  • The clock shrinks to a small white readout in the top bar, so at night only one number gets to be big.
  • Outside the window your usual layout and brightness come back on their own.
CYGM night face: a large green glucose value of 156 with a flat trend arrow on a black background, with the time shown small and white in the top bar.
The night face at its dimmest
CYGM display settings page two: a Night Dim toggle, a start time of 9:30p, an end time of 6:30a, and night level options of 5, 15 and 30 percent.
Night Dim schedule and level
CYGM display settings page one: a brightness slider set to 65 percent and a Dim when plugged in toggle, switched off.
Daytime brightness

Waking the screen without setting anything off

On battery the screen dims by itself after roughly two minutes without a touch. Waking it takes a double tap anywhere, and the first tap only wakes the screen, so you can't snooze an alarm by accident in the dark.

03 Alarms

Four tiers, and you set each one on its own

High Alarm, High Warning, Low Warning and Low Alarm. Warnings are the early nudge. Alarms are the ones that mean now.

CYGM alarm takeover screen titled High Warning with a bell icon and an amber border, showing 196 mg/dL above a threshold of 180, with Snooze 30 minutes and a Dismiss action that must be held.
An alarm taking the screen
CYGM Alarms screen listing four tiers with their thresholds and on toggles, above a colour range bar showing the tiers laid out against each other.
The four tiers and the range bar
CYGM alarm editor showing a threshold slider, an Audio Alert toggle with a tone and volume, and Keep Sounding, Screen Flash and LED Flash toggles.
What you set per tier
CYGM Alert Options page one of six: a Quiet Hours toggle labelled silence non-urgent, a start and end time, and a default snooze length of 30 minutes.
Alert options across all tiers

What you set on each tier

Every tier gets its own threshold. Audio Alert turns sound on for that tier and gives you a tone and a volume. Screen Flash and LED Flash each work on their own if you want a tier that alerts silently. The range bar under the Alarms list shows all four thresholds together, which is the fastest way to spot a gap you didn't mean to leave.

How loud is it, really?

This one I can actually answer, because measuring sound is my day job. I work in live entertainment, where SPL meters are ordinary kit, so I put one on it: with the optional speaker fitted it peaks at 105 dB. That is enough to get anyone's attention.

That figure depends on the speaker. The sound comes from the board's amplified speaker output, so if you built your unit without one there is very little to hear, and Screen Flash and LED Flash are what you've got.

What I still won't tell you is that it will wake you. 105 dB is loud, and a closed door, a fan, earplugs and how deeply one particular person sleeps all sit between that sound and you. Test it yourself, at night, before you treat it as an alarm.

Tones

There are 28 tones, from gentle chimes up to sirens, each with a play button. One, Random (Loud), plays a fresh sequence every time, because a familiar alarm fades into the background after a few weeks. An unanswered alarm also climbs in volume, so you can start it somewhere you can live with.

Quiet hours

Quiet Hours is a window where non-urgent alerts go visual only: the screen and LED still tell you, the speaker stays quiet. I ship it off by default, because silence is not a sensible default for an alarm you might need.

Answering one

An alarm takes over the whole screen with the value at full size and two buttons. SNOOZE silences it for the snooze length you set in Alert Options, and it fires again if the reading is still out of range when that runs out. DISMISS is a hold, not a tap, so a half-asleep tap is unlikely to clear a real one. The BOOT button on the board snoozes too, and in the dark that's the one you'll actually use.

Repeating, and the three-minute cap

With Keep Sounding off, a tier's tone stops after three minutes while the visual alert stays up and keeps flashing, then sounds again two readings later if the glucose is still out of range.

The urgent-low floor

An urgent low at 55 mg/dL plays at full volume no matter what you've set. It overrides snooze, Quiet Hours and mute, and it ships with Keep Sounding on, so its tone doesn't pause after three minutes the way the other tiers do. There's a switch for it on the Safety Floor page and you can turn it off, but think hard before you do.

04 The honest limit

This is a second alarm, never a first

Keep your prescribed alarms on

CYGM is not FDA-cleared or FDA-approved, and it hasn't been clinically validated. It shows readings that have already travelled through your CGM's own app and cloud service, so it can lag, gap or fail independently of them.

It can also fail quietly. If the WiFi drops, the sharing service stalls or the sensor stops reporting, the device has no new number to compare against a threshold, so a threshold alarm has nothing to fire on. Leave your phone's own CGM alarms running overnight. Never make this the only thing standing between a sleeping person and a low.

What catches the silence

The data-gap alert is the one alarm aimed at that failure. It fires when readings stop arriving rather than when a number crosses a line, defaulting to 20 minutes without data, and it names a likely cause: WiFi down, device not signed in, service unreachable, or sensor not reporting. Treat that as a starting point and not a diagnosis.

05 Power overnight

I designed it to be plugged in

On USB power the screen just stays on. The Dim when plugged in toggle is off by default, and that's the setup I built the device around. Turn it on if you'd rather the screen dimmed while charging.

A LiPo battery is optional. For a bedside unit I'd think of it as insurance against someone kicking the cable out, not as a way to run it untethered all night.

06 Placement

Where you put it matters more than you'd think

  • Angle it away from the pillow

    The panel is a 2.8-inch LCD, so it's a light source even at 5%. Turning it slightly away from where a head lies keeps the number readable without parking a lit panel in your line of sight.

  • Keep it within reach

    The BOOT button on the board wakes the screen and snoozes an alarm, and half-asleep that's the control you'll really use. Put the unit where a hand lands, not behind a lamp.

07 Questions people ask

Before you build one for the bedroom

Will the alarm actually wake me up?

I can't promise that, and I won't. What I can give you is a measurement. Sound is my trade, and with the optional speaker fitted I've metered this peaking at 105 dB, which is loud by any reasonable standard. Without that speaker there is very little to hear, because the sound comes from the board's amplified speaker output. Whether all that is enough to wake you through a closed door is still yours to test, at night, before you rely on it.

Is the screen too bright to sleep next to?

The dimmest night level is 5% of backlight. The brightness slider responds live as you drag it, so set it by eye in the room itself rather than trusting a number on a page.

What happens if my WiFi drops overnight?

No new readings arrive, so no threshold alarm can fire. The data-gap alert is what covers that: it fires when readings stop arriving, defaulting to a 20-minute window, and it names the likely cause. This is exactly why your phone's own CGM alarms have to stay on.

Do I have to change anything about my CGM?

No. CYGM reads what your CGM already shares to Dexcom Share, LibreLinkUp or Nightscout. Your sensor keeps reporting to the official app exactly as it does now, and you keep using that app.

08 Next step

Start with the CGM you already have

Everything above behaves the same on every unit. What differs is which service the device signs in to for its readings.

Current firmware v1.1.10 Release · released 2026-10-15

A second screen, not your source of truth

CYGM is an open-source, experimental secondary CGM display. It is not FDA-cleared or FDA-approved, and it has not been clinically validated. It shows readings that have already travelled through your own CGM's app and cloud service, so it can lag, gap or fail independently of them.

Never use it as the sole basis for a treatment decision, and never rely on it as your only alarm. Always confirm on your prescribed CGM receiver or app before dosing or treating.

Devices online

Loading

Grouped by city, never by device. A city appears when at least one device there has checked in within the last half hour. Placement is approximate.