1.. _thread_protocol_interface:
2
3Thread protocol
4###############
5
6.. contents::
7    :local:
8    :depth: 2
9
10Overview
11********
12Thread is a low-power mesh networking technology, designed specifically for home
13automation applications. It is an IPv6-based standard, which uses 6LoWPAN
14technology over IEEE 802.15.4 protocol. IP connectivity lets you easily connect
15a Thread mesh network to the internet with a Thread Border Router.
16
17The Thread specification provides a high level of network security. Mesh networks
18built with Thread are secure - only authenticated devices can join the network
19and all communications within the mesh are encrypted. More information about
20Thread protocol can be found at
21`Thread Group website <https://www.threadgroup.org>`_.
22
23Zephyr integrates an open source Thread protocol implementation called OpenThread,
24documented on the `OpenThread website <https://openthread.io/>`_.
25
26Internet connectivity
27*********************
28
29A Thread Border Router is required to connect mesh network to the internet.
30An open source implementation of Thread Border Router is provided by the OpenThread
31community. See
32`OpenThread Border Router guide <https://openthread.io/guides/border-router>`_
33for instructions on how to set up a Border Router.
34
35Sample usage
36************
37
38You can try using OpenThread with the Zephyr Echo server and Echo client samples,
39which provide out-of-the-box configuration for OpenThread. To enable OpenThread
40support in these samples, build them with ``overlay-ot.conf`` overlay config file.
41See :zephyr:code-sample:`sockets-echo-server` and :zephyr:code-sample:`sockets-echo-client`
42samples for details.
43
44Zephyr also provides an :zephyr:code-sample:`openthread-shell`, which is useful for
45testing and debugging Thread and its underlying IEEE 802.15.4 drivers.
46
47Thread related APIs
48*******************
49
50OpenThread Driver API
51========================
52
53OpenThread L2 uses Zephyr's protocol agnostic IEEE 802.15.4 driver API
54internally. This API is of interest to **driver developers** that want to
55support OpenThread.
56
57The driver API is part of the :ref:`ieee802154_driver_api` subsystem and
58documented there.
59
60OpenThread L2 Adaptation Layer API
61==================================
62
63Zephyr's OpenThread L2 platform adaptation layer glues the external OpenThread
64stack together with Zephyr's IEEE 802.15.4 protocol agnostic driver API. This
65API is of interest to OpenThread L2 **subsystem contributors** only.
66
67.. doxygengroup:: openthread
68