User guide
Naptio turns two devices into a privacy-first baby monitor. Video and audio stream directly between your devices over WebRTC, and on-device AI helps surface useful cues (cry-like sounds, movement, face-down/prone risk). There’s no cloud video storage.
1) What you need
- Two devices (e.g., an old phone as the Camera (Baby) and your phone/tablet as the Viewer (Parent)).
- A stable Wi-Fi network or proximity for peer-to-peer; WebRTC will try STUN/TURN relays if needed.
- Modern browser (Chrome, Edge, Safari, or Firefox). Allow camera/microphone permissions.
2) Quick start
- Pair the devices once using Pair devices → Share on the Camera device, then open the share link (or scan the QR) on the Viewer device to install the secret.
- On the Camera device, open Camera (Baby) → pick Back camera → tap Start streaming.
- On the Viewer device, open a Receiver page (e.g., Video, Audio – Live Detection, Movement, or Prone) and press the page’s Start/Enable button.
- Keep devices powered and placed safely. Use Alerts and Dashboard to review events.
Summary
Roles: one device = Camera (Baby), another = Viewer (Parent).
- Pair once
• On the Camera, open Pair devices (Share) → Share or Copy.
• On the Viewer, open that link (or scan the QR) → Pair devices (Install) shows Key installed. - Start the Camera
• Open Camera (Baby) → pick Room and Back camera → Start streaming.
• Leave it plugged in, screen dimmed, safely away from the crib. - Open a Viewer
• Use Video, Audio – Live detection, Movement, Prone, or Fence.
• Hit Start/Enable on each page. Use the left hamburger to switch pages. - Calibrate (strongly recommended)
• Audio (quiet): run 20–30s in a quiet room to set ON/OFF thresholds.
• Movement: run Calibration while baby is still to seed the baseline.
• Prone: run Supine baseline with baby face-up. - Alerts & history
• Red banner shows the latest alert; open the Alerts drawer for history.
• Use the Dashboard to see timelines (15m, 2h, 8h, 24h, 7d), filter, and export. - Safety & privacy
• Naptio is not a medical device; keep constant adult supervision.
• Streams stay device-to-device; secrets live only on your devices.
• Rotate or forget the room secret anytime.
3) Pairing devices (PSK secret)
Naptio uses a per-room pre-shared secret (PSK) so only devices that hold the secret can exchange signed signaling messages. You typically do this once per room.
A. Generate & share the secret (on the future Camera)
- Open Pair devices (Share).
- Room: choose a label (e.g., Baby). You can keep one room per child/space.
- Rotate secret if you want a fresh token (this invalidates old links).
- Tap Share (or Copy) to produce a link/QR that embeds #room=…&token=….
B. Install the secret (on the future Viewer)
- Open the link or scan the QR on the Viewer device.
- The Pair devices (Install) page shows Key installed and Device paired.
- The secret is stored locally on that device for the selected room (you can Forget later).
C. Using the secret
- Receivers automatically pick the only stored room; if multiple exist, choose one in Settings.
- If a Receiver opens without a valid secret, it redirects you to Install.
- If you suspect leakage, Rotate on Share → re-install on Viewers.
D. Good hygiene
- Don’t post links publicly.
- Use a distinct Room per child/space.
- Periodically rotate the secret (optional).
4) Start the Camera (Baby)
Open Camera (Baby) on the device you’ll leave near the crib.
Key controls
- Room: must match the paired room.
- Camera: Front/Back. Prefer Back for better low-light.
- Video / Audio toggles: choose what to publish.
- AI placement: some overlays can run On sender (this device) or On receiver.
- Preview minutes: brief local preview to frame the scene.
- Start streaming: begins WebRTC and advertises to paired receivers.
Status & indicators
- Connecting → Connected; shows peer count when viewers attach.
- Permission prompts for camera/microphone appear on first use.
Placement & power
- Mount securely; keep all cables out of reach.
- Avoid backlight/glare; aim for a clear, stable view of the crib.
- Keep the device plugged in or well-charged; consider screen dimming.
5) Choose a Receiver page (Viewer)
Open any Receiver page; all share the left sidebar (tap the hamburger to show/hide). You can keep multiple pages open.
- Video (Viewer): Basic monitoring with Enable/Disable audio, Fullscreen, Talk (push-to-talk), and Lullaby controls. Open
- Audio – Live Detection: Runs your Active Top-K model; raises alerts when the Fused score exceeds the ON threshold and ends after it drops below OFF for a dwell time. Open
- Weighted Top-K Audio — Training: Collect training statistics from Sender, Microphone, or Audio files/folder; compute weights; calibrate quiet and test live. Open
- Movement detection: Pose-based motion using EMA (quick), Integrator (sustained), and Baseline drift (slow shift) detectors. Includes an assisted Calibration. Open
- Prone detection: Monitors head pitch relative to a supine baseline + face visibility to flag sustained face-down risk. Open
- Fence (zone): Draw a polygon; alerts when movement occurs inside the zone. Open
- Settings: Select Room; perform Factory reset (clears local data only). Open
- Alerts Dashboard: Timeline + table of alerts with windows 15m (quick), 2h (default), 8h, 24h, 7d; filter, search, and export. Open
Each feature has an inline help sheet (“?”) with context and tips.
6) Audio — Train, calibrate, detect
Train a light Weighted Top-K model on examples that represent your environment, calibrate quiet, then run live detection.
A. Train a model
- Open Audio — Training.
- Source: choose Microphone (Receiver), Sender (WebRTC), or Files/Folder.
- Click Start to accumulate stats (20–60s per condition).
- Recompute Weights to finalize the current Active model.
- Optionally Penalty map certain classes (down-weight nuisance sounds).
- Export Model (JSON) and Import later if needed.
B. Quiet calibration (hysteresis)
- Ensure a quiet room.
- Set Duration (e.g., 20s) and click Start.
- The page computes ON/OFF thresholds automatically: ON > OFF for stability.
C. Live detection
- Open Audio – Live Detection.
- Pick your Active model and Source (Sender/Mic).
- Click Start; watch the Fused score line vs ON/OFF bands.
- Use Logs to inspect Top-N class contributions; enable ALL for deeper debugging.
- Alerts open when score ≥ ON; they end after score ≤ OFF for the hold time.
7) Movement detection (pose-based)
Detects movement from landmarks (e.g., shoulders/hips) via pose estimation.
Recommended flow
- Verify you see moving pose landmarks (shoulders/hips).
- Run Calibration → Start during 10–20s of stillness to seed the baseline and auto-tune thresholds.
- Keep Torso-relative baseline ON for robustness to distance/zoom.
Detectors
- EMA (quick): sensitive to sudden motion; α controls smoothing; has ON/OFF thresholds.
- Integrator (sustained): accumulates energy over time with time constant τ.
- Baseline drift: follows slow changes (e.g., bedding sag); includes reset and optional overlay.
Gates & filters
- Visibility / Presence gates ignore low-confidence landmarks.
- Min landmark count prevents triggering on partial detections.
Tuning
- Too many alerts → lower α (more smoothing), raise ON, lengthen dwell.
- Misses → raise α, lower ON, or reduce dwell slightly.
8) Prone detection (face-down risk)
Combines head pitch relative to a supine baseline and face visibility to estimate sustained face-down risk.
Setup
- With baby face-up, run Calibration (supine baseline) for a few seconds.
- Confirm pitch is near 0 in neutral position.
Operation
- The Risk bar rises with downward pitch and low face visibility.
- Alerts use hysteresis + dwell to avoid flicker.
Tuning
- Increase EMA τ for smoother pitch; adjust θon (pitch threshold) and dwell to taste.
- Re-calibrate after major camera repositioning.
9) Fence (zone) monitoring
Draw a polygonal zone; Naptio alerts on movement inside the zone.
- Click Draw zone and tap around the area of interest; finish to close.
- Clear removes the current zone.
- Use together with Movement detection to limit alerts to the zone.
10) Video viewer: audio, talk, lullaby
- Enable/Disable audio: listen to the Camera stream from the Viewer.
- Fullscreen: immersive view for night mode.
- Talk (PTT): hold to send your voice to the Camera device; reduce echo by lowering volumes.
- Lullaby: pick from the built-in playlist; keep playback levels safe.
11) Alerts: banner, history, dashboard
Banner
- Red strip at the top with the latest alert; Dismiss for N min to snooze (default 10m).
Alerts drawer
- Open via the Alerts pill (badge shows unread).
- Filter by type (Audio, Prone, Motion, Fence), search, sort columns.
- Export JSON/CSV; Clear all to reset local history.
Dashboard
- Timeline with swimlanes + activity band and a table view.
- Windows: 15m, 2h (default), 8h, 24h, 7d.
- Brush to zoom; toggle types; optional ping sounds.
How alerts work
- Each detector opens an episode when its metric crosses ON; it ends after dropping below OFF for a hold time.
- All alert data is stored locally on the Viewer device (IndexedDB).
12) Settings & Factory reset
- Room: pick which paired room this device should use by default.
- Factory reset: clears local data (pairing secrets, calibrations, alerts, preferences, caches/service workers, local/session storage, IndexedDB). This affects only this device.
When to reset
- You rotated/retired a room secret and want to re-pair cleanly.
- You’re gifting/selling a device.
- You need to clear a corrupted local cache.
13) Tips & troubleshooting
Connection
- Ensure both devices select the same Room and the Viewer has the secret installed.
- Toggle Wi-Fi on/off; move closer to the router; avoid VPNs that block P2P.
Permissions & audio
- Allow mic/camera prompts; on iOS, check Settings → Safari/Chrome → Camera/Microphone.
- If audio is flat: confirm Source (Sender vs Mic), re-train or re-load the model.
Calibration
- Re-run Quiet (audio) or Calibration (movement/prone) after moving devices.
- Use longer quiet durations in noisy homes.
False positives
- Audio: raise ON, widen OFF gap, adjust Penalty map.
- Movement: lower α, lengthen dwell, keep Torso-relative ON.
- Prone: increase dwell, re-calibrate supine baseline.
Power & background
- Keep Camera plugged in; consider disabling battery savers that throttle background tasks.
- Prevent auto-lock if your platform allows a wake lock; otherwise keep screen dimmed.
14) Privacy, safety & consent
- WebRTC streams are encrypted in transit; Naptio avoids cloud video.
- Secrets remain on your devices; rotate/forget at any time.
- Not a medical device — assistive cues only; maintain continuous adult supervision.
- Obtain consent when monitoring anyone other than your own child; follow local laws.
15) Support
Use Support in the sidebar to email the team. You can optionally include diagnostics (OS, device, browser, screen) to help reproduce issues.
Appendix
Appendix A — How pairing works (high level)
- A PSK token is saved in your browser per Room when you run Pair devices (Install).
- Signaling messages are HMAC-signed with this token so only paired devices in that room accept them.
- You can Rotate secret on the share page to invalidate old links; Forget removes it from the current device.
Appendix B — Where alerts live
- Alerts (Audio/Prone/Motion/Fence) live in a local IndexedDB database per device.
- Use the Alerts drawer and Dashboard to search, filter, export, and clear.