> For the complete documentation index, see [llms.txt](https://docs.tryterra.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tryterra.co/faq/help-topics/something-else/realtime-ble-and-mobile-delivery/realtime-streaming-setup.md).

# How do I set up realtime streaming?

Setup depends on the device. The [BLE connection widget](https://docs.tryterra.co/streaming-api/getting-started) does **not** work for Apple Watch, which uses a custom Bluetooth protocol.

* **Apple Watch**: requires a WatchOS companion app that calls `startStream()` or `startExercise()`. Use `startExercise()` for the highest sampling frequency.
* **BLE devices (Coros, Garmin, etc.)**: once the user connects via the widget, call `startRealtime` with the desired data types and receive updates in the callback.

Two things to keep in mind:

* A **websocket** is only needed to [stream data to your backend](https://docs.tryterra.co/streaming-api/terra-greater-than-your-backend), not for local data types.
* **Realtime streaming is a separate connection** from the standard data-sync authentication.
