Skip to content
Mobile
Skill

/debugging

Common issues, Developer Mode, version compatibility, state machine diagnosis

BOOST
From plugin
meta-wearables-dat-ios
56817 skills
Install
$ npx -y skills add facebook/meta-wearables-dat-ios --skill debugging --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/debugging

Context preview

The summary Claude sees to decide when to auto-load this skill.

Common issues, Developer Mode, version compatibility, state machine diagnosis

SKILL.md

debugging.SKILL.md
name: debugging
description: Common issues, Developer Mode, version compatibility, state machine diagnosis

Debugging (iOS)

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.

Quick diagnosis

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

Developer Mode must be enabled for 3P apps to access device features.

Enabling Developer Mode

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

Symptoms of Developer Mode disabled

  • Registration completes but device never connects
  • Stream stuck in `waitingForDevice`
  • Permission requests fail or never appear

Watch for

  • Developer Mode toggles **off** after firmware updates — re-enable it
  • Developer Mode is per-device — enable for each glasses pair
  • Some features need additional permissions beyond Developer Mode

Stream state issues

Expected flow

stopped → waitingForDevice → starting → streaming → stopped

Stuck in waitingForDevice

  • Device not in range or not connected
  • Device not reporting availability
  • DeviceSelector not matching any device

Unexpected stop

  • Device disconnected (out of range, battery died)
  • Channel closed by device
  • Error in frame processing

Version compatibility

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.

Known issues

| 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.

Adding debug logging

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)")

Live MCP evidence

When the developer has a local DAT debug server connected to the agent:

  • Start with `get_sdk_state` and `get_dat_readiness`
  • Use `get_companion_boundary_diagnosis` for permission, app identity, device

capability, device-selection, deeplink-return, and DAM/DWA-visible blockers

  • Use `get_device_path` to trace app -> DAT registration -> Meta AI app permissions ->

device selection/link -> session -> stream

  • Ask the developer to reproduce the issue, then use `wait_for_events` with the

narrowest category or source that matches the flow

  • Use `export_diagnostic_bundle` for redacted support handoff

Do not treat this as companion app introspection. It is diagnosis from app-visible DAT debug events.

Checklist

  • [ ] Developer Mode enabled in Meta AI app
  • [ ] Meta AI app updated to compatible version
  • [ ] Glasses firmware updated to compatible version
  • [ ] Internet connection available for registration
  • [ ] Bluetooth enabled on phone
  • [ ] Correct URL scheme configured in Info.plist, and `MWDAT` > `AppLinkURLScheme` matches it
  • [ ] URL callback handler forwards `metaWearablesAction` links to `Wearables.shared.handleUrl(_:)`
  • [ ] Background modes enabled (`processing`, `bluetooth-central`, `bluetooth-peripheral`, `external-accessory`)
  • [ ] `UISupportedExternalAccessoryProtocols` contains `com.meta.ar.wearable`
  • [ ] `NSBluetoothAlwaysUsageDescription`, `NSLocalNetworkUsageDescription`, and `NSBonjourServices` present

Links

  • [Known issues](https://wearables.developer.meta.com/docs/knownissues)
  • [Version dependencies](https://wearables.developer.meta.com/docs/version-dependencies)
  • [Troubleshooting discussions](https://github.com/facebook/meta-wearables-dat-ios/discussions)
Read more
Ships withmeta-wearables-dat-ios

The Meta Wearables Device Access Toolkit enables developers to utilize Meta's AI glasses to build hands-free wearable experiences into their mobile applications.

Get the whole plugin
Stats
568
Stars
126
Forks
Active
Maintenance
Shell
Language
6d ago
Last commit
10mo ago
Created
5h ago
Added

Repo: facebook/meta-wearables-dat-ios

Other skills on meta-wearables-dat-ios.