| name | snap-spectacles-mobile-kit |
| description | Load when the user is bridging a phone or external BLE device to a Spectacles lens — sending phone sensor data into a lens, building a companion app, integrating Arduino / game controllers, or asks "how do I pair my own peripheral with Spectacles." Don't load for general Lens Studio basics — use snap-spectacles-build. |
| license | MIT |
| metadata | {"author":"HKTITAN","version":"1.0.0","graph":true,"depends":["snap-spectacles-build"]} |
Spectacles Mobile Kit and BLE
Spectacles Mobile Kit is the bridge between a Spectacles lens and the outside world over Bluetooth Low Energy. Phone companion apps, Arduino IMUs, game controllers, custom IoT — anything BLE — pairs through this surface. The kit is small; the design patterns around it are where the real work is.
When to load
Triggers:
- "Spectacles BLE"
- "Arduino glasses"
- "Game controller Spectacles"
- "Companion phone app Spectacles"
- "Phone sensor into a lens"
- "Pair external device with Spectacles"
Don't load for:
- Multiplayer / shared lens experiences — [[../snap-spectacles-sync/SKILL]].
- Phone-as-controller for interaction only — [[../snap-spectacles-sik/references/mobile-interactor]].
- General Lens Studio basics — [[../snap-spectacles-build/SKILL]].
Decide first
The architecture decisions before code:
- Where's compute? Lens (constrained), companion phone (flexible), external device (specialised). Most setups split: lens does AR + display, phone does heavy compute / network, external device contributes raw sensor data.
- BLE topology. Spectacles → phone (one-to-one), Spectacles → multiple peripherals (one-to-many), Spectacles → mesh (rare).
- Latency tolerance. BLE is not low-latency in the LAN sense — typical 50-200 ms per packet. Real-time game control needs careful design.
- Companion app footprint. Native iOS / Android, or web? Each has trade-offs.
Map of content
Foundations
- [[references/ble-overview]] — Bluetooth Low Energy on Spectacles, the realities.
- [[references/mobile-kit-setup]] — installing and configuring Spectacles Mobile Kit.
Phone bridges
- [[references/mobile-to-lens-bridge]] — phone ↔ lens data flow patterns.
- [[references/companion-app-pattern]] — when and how to build a phone companion.
- [[references/sensor-passthrough]] — pulling phone sensors (GPS, mic, IMU) into a lens.
External devices
- [[references/arduino-integration]] — Arduino / ESP32 / IoT via BLE.
- [[references/game-controller-bridge]] — game controllers as lens input.
Operating
- [[references/ble-permissions]] — Spectacles' BLE permission flow.
- [[references/ble-latency]] — what to expect.
- [[references/ble-debugging]] — when pairing or data flow fails.
Verify
Before claiming a Mobile Kit / BLE integration is shippable:
Smoke test
If this skill loaded correctly, the agent should answer:
- The user wants their lens to read GPS from the phone. What's the cleanest path? (Expected: phone companion app + Mobile Kit bridge; pass GPS over BLE; cites [[references/sensor-passthrough]] and [[references/companion-app-pattern]].)
- Typical BLE latency on Spectacles? (Expected: 50-200 ms per packet; not LAN-fast; design real-time interactions accordingly; cites [[references/ble-latency]].)
- "My BLE device pairs in iOS Bluetooth settings but not in my lens." (Expected: BLE permission on Spectacles is separate; the lens needs its own permission grant; cites [[references/ble-permissions]] and [[references/ble-debugging]].)
Sibling skills
- [[../snap-spectacles-build/SKILL]] — Lens Studio basics.
- [[../snap-spectacles-sik/SKILL]] — interactions, including MobileInteractor for phone-as-controller.
- [[../snap-spectacles-ai/SKILL]] — for cloud-side compute that often pairs with phone bridging.
Sources