Advanced Lung CareLLC

Incentive Spirometer Software — breath volume & duration from your camera
Allow camera access to begin Your browser will ask to use the camera — tap “Allow”. Then line the two dashed guides up with two printed numbers on the device to calibrate.
Camera
Device
Live volume
mL
 
Duration
0.0s
ready — inhale to start the timer
Peak volume
mL
 
Breath log 0 breaths
No breaths logged yet. Each completed breath records its peak volume and how long the piston took to reach that peak.
Progress
Log a couple of breaths and a trend will appear here — showing whether you're improving.
Calibrate the scale

Drag the two dashed lines onto two printed marks on the device, then set what volume each line sits on. Everything between them is read by interpolation, so pick two marks that are far apart (e.g. 500 and 5000).

Top line reads mL
Bottom line reads mL

The two solid side lines mark the left and right edges of the measuring column. Keep them just inside the cylinder so the mouthpiece tube and the goal-marker tab are excluded.

volume guides column edges detected piston top
Tune detection

The app finds the piston by color, then keeps the tallest, centered band — so a small marker riding the outside of the tube is ignored. Pick your piston’s color below (or tap the piston to sample it). Tip: set the left/right column guides to bracket just the clear tube, and turn on the debug overlay to see exactly what’s detected.

Blue
38°
34%
20%
45%
Breath & voice
8
0.3 s

Auto-announce watches for the piston rising and then dropping back down. When it settles near the bottom again, that breath’s peak is locked in and read out. Anything shorter than the minimum above is treated as a phantom blip and not counted. “Ignore device movement” pauses breath detection while you’re moving the whole device into position (so lining it up doesn’t register as a breath) and resumes once it’s held steady.