CpapDash
OPEN SOURCE

The engine behind CpapDash is open.

CpapDash is built on a stack of open-source services that read CPAP data straight from the machine, stream it to the cloud, and turn it into something you can actually read. They run on a Raspberry Pi, an ESP32, or your own server — no vendor lock-in, no cloud you don't control.

hms-cpap
CPAP data collection service

C++ service that collects ResMed & Lowenstein therapy data from the machine's WiFi SD card, computes OSCAR-compatible metrics, stores them to PostgreSQL, and publishes live to MQTT for Home Assistant.

C++17EDF/STRPostgreSQLMQTT
View on GitHub →
hms-mmexperimental
Mule & Miner — wireless CPAP bridge

Dual ESP32-C3 bridge: the Miner reads the CPAP's WiFi SD card, the Mule streams each night's files to the cloud over your home WiFi — fully automatic, nothing to plug in each morning.

ESP-IDFESP32-C3SPIOTA
View on GitHub →
hms-fysetcexperimental
SD WiFi file server firmware

HTTP file server firmware for the FYSETC SD WiFi Pro (ESP32) — serves SD-card therapy files over WiFi with an ezShare-compatible API any client can read.

CESP32HTTPezShare
View on GitHub →
hms-cpap-arduino
ESP8285 CPAP data bridge

Dual-mode firmware for the FYSETC SD-WiFi v2.1 (ESP8285) — serves ResMed therapy data straight off the SD card over WiFi and MQTT. A single-board alternative to the Mule & Miner.

C++ESP8285WiFiMQTT
View on GitHub →
hms-cpapdash-parser
Shared CPAP parser library

The parsing core used by hms-cpap and CpapDash: a shared C++ library that decodes ResMed and Lowenstein therapy files into OSCAR-compatible metrics.

C++libraryResMed + Lowenstein
View on GitHub →
hms-cpapdash-charts
Shared therapy chart library

The Angular chart component library that powers CpapDash's visualizations — reusable, themeable therapy charts shared across the CpapDash apps.

AngularTypeScriptChart.js
View on GitHub →

Want the plug-and-play version?

The Mule & Miner ships these services pre-configured — stream your therapy data with nothing to set up.