Documentation Index
Fetch the complete documentation index at: https://sdk.sleepcycle.com/llms.txt
Use this file to discover all available pages before exploring further.
Version 1.1.1
New Features
- Smart alarm: Configure a wake-up window via
SmartAlarmConfigand observe alarm lifecycle events (Armed,Triggered) through the newsmartAlarmFlow: SharedFlow<SmartAlarmEvent>. Trigger reasons includeOPTIMAL_WAKE_UP,USER_INTERACTION, andWINDOW_END. Smart alarm is gated behindSleepAnalysisFeatures.smartAlarmand only supported on the primary channel. - Stereo channel separation: New
ChannelSeparationConfigcontrols how stereo audio channels are assigned to analysis channels, with built-in presetsBED_SIDE_MICS,CENTERED_MIC_ARRAY, andDETECTION_STRENGTH_ONLY.
API Changes
- Added
smartAlarmConfig: SmartAlarmConfig?parameter tostartAnalysis()andstartMultiChannelAnalysis(). - Added
channelSeparationConfig: ChannelSeparationConfigparameter tostartAnalysis(),startDataSource(), andresumeAnalysis(). - Added
forceTokenRefresh: Booleanparameter toinitialize()to force a fresh token fetch even if a cached token exists. resumeAnalysis()now returnsList<ResumedSession>instead ofBoolean, providing session ID, channel, and smart alarm config for each resumed session.createLiveDataSource()now enables the gyroscope when the accelerometer is enabled.stopDataSource()andstopAnalysis()no longer throw when the SDK is not initialized; they return gracefully instead.
Version 1.1.0
New Features
- Multi-channel analysis: Analyze two channels simultaneously using stereo audio. New
startDataSource()/stopDataSource()methods separate the data source lifecycle from session lifecycles, with per-channel start viastartMultiChannelAnalysis(channel:)and per-session stop viastopAnalysis(sessionId:). - Audio health monitoring: New
audioHealthFlow: SharedFlow<AudioHealthUpdate>emits real-time audio input health status changes (HEALTHY,FLATLINE,MISSING_INPUT).AudioStatisticsandAudioHealthIntervalare included in the analysis result. - Session IDs on all public types:
Event,BreathingRate,SleepStageInterval,AudioClip, andAudioHealthUpdatenow include asessionId: UUIDproperty to identify which session they belong to.
API Changes
startAnalysis()now returns aUUIDidentifying the session.- Added
tag: String?parameter tostartAnalysis()for labeling sessions. AudioEventListener.onAudioAnalysisBatchCompleted()now includes asessionId: UUIDparameter.AnalysisResultnow includessleepStageIntervals,audioStatistics, andsessionIdproperties.- Added
multiChannelAnalysistoSleepAnalysisFeatures.
Version 1.0.10
Released: January 26, 2026New Features
- Disk space checking: The SDK now checks for sufficient disk space before starting analysis and throws
SdkNotEnoughDiskSpaceExceptionif there is insufficient space available.
API Changes
- Added
SdkNotInitializedExceptionexception thrown when SDK methods are called before initialization. - Added
@throwsdocumentation forSdkNotInitializedExceptionandSdkNotEnoughDiskSpaceExceptiononstartAnalysis().
Bug Fixes
- Improved error handling when writing to the database to prevent crashes on low disk space.
Version 1.0.9
Released: January 15, 2026New Features
- Preferred audio device: Added ability to specify a preferred audio input device via the
preferredDeviceparameter increateLiveDataSource().
API Changes
- Added support for stereo audio input.
- The
dataSourceparameter instartAnalysis()andresumeAnalysis()is now mandatory (non-nullable) with a default value ofcreateLiveDataSource(). - Added
createLiveDataSource()factory method for creating a live data source that captures from device sensors. - Made
LiveDataSourceclass public, allowing direct instantiation for custom configurations. - Extended
DataSourceinterface with new methods:audioOutputEnabled()- Check if audio output is enabledaccelerometerOutputEnabled()- Check if accelerometer output is enabledgetAudioFormat()- Returns the audio channel configuration (MONO or STEREO)
- Published artifact now includes source files (excluding internal package) for easier debugging.