audio-streaming
Receive synchronized PCM audio frames through a Camera stream on iOS
Common issues, Developer Mode, version compatibility, state machine diagnosis
$ npx -y skills add facebook/meta-wearables-dat-ios --skill debugging --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/debuggingContext preview
The summary Claude sees to decide when to auto-load this skill.
Common issues, Developer Mode, version compatibility, state machine diagnosis
name: debugging description: Common issues, Developer Mode, version compatibility, state machine diagnosis
Diagnose common setup, registration, and streaming issues in DAT SDK integrations.
If local DAT Inspector MCP tools are available, use the `live-debugging-mcp` skill before changing app code. Prefer `get_dat_readiness`, `get_companion_boundary_diagnosis`, and `get_device_path` to separate app bugs from Meta AI app/device boundary issues using read-only DAT evidence.
Device not connecting? │ ├── Is Developer Mode enabled? → Enable in Meta AI app settings │ ├── Is device registered? → Check registration state │ ├── Is device in range? → Bluetooth on, glasses powered on │ ├── Is the app registered? → Check registrationStateStream() │ └── Stream stuck in waitingForDevice? → Check device availability
Developer Mode must be enabled for 3P apps to access device features.
1. Open Meta AI app on phone 2. Go to Settings → (Your connected glasses) 3. Find "Developer Mode" toggle 4. Toggle ON 5. Device may restart
stopped → waitingForDevice → starting → streaming → stopped
Ensure compatible versions of SDK, Meta AI app, and glasses firmware. See [version dependencies](https://wearables.developer.meta.com/docs/version-dependencies) for the current compatibility matrix.
| Issue | Workaround | |-------|-----------| | No internet → registration fails | Internet required for registration | | Streams started with glasses doffed pause when donned | Unpause by tapping the side of the glasses | | A single touchpad tap pauses an active stream | Tap again to resume; keep the last frame on screen while `StreamState` is `.paused` |
See the public [known issues](https://wearables.developer.meta.com/docs/knownissues) page for the current list.
import os
private let logger = Logger(subsystem: "com.yourapp", category: "Wearables")
// In your streaming code:
logger.debug("Stream state changed to: \(state)")
logger.error("Stream error: \(error)")When the developer has a local DAT debug server connected to the agent:
capability, device-selection, deeplink-return, and DAM/DWA-visible blockers
device selection/link -> session -> stream
narrowest category or source that matches the flow
Do not treat this as companion app introspection. It is diagnosis from app-visible DAT debug events.
The Meta Wearables Device Access Toolkit enables developers to utilize Meta's AI glasses to build hands-free wearable experiences into their mobile applications.
Receive synchronized PCM audio frames through a Camera stream on iOS
Capture standalone high-quality photos from connected glasses on iOS
Stream, video frames, photo capture, resolution/frame rate configuration
Swift patterns, async/await, naming conventions, key types for DAT SDK iOS development
Use the Wearables DAT MCP server for live DAT documentation search with `search_dat_docs`,…
Display capability setup, display-capable device selection, UI DSL, icons, buttons, images,…