zephyr/doc/connectivity/networking/api/thread.rst
Florian Grandel 9864d03c6e doc: openthread: integrate ot/ieee802154 docs
Integrates and cross-references OpenThread and native IEEE 802.15.4 docs
as they share a common driver layer.

While OpenThread is of course not an IEEE 802.15.4 subsystem API it is
still included in the ieee802154 documentation group, purely for
convenience to the documentation readers.

For organizational purposes OT is considered a separate area of
maintenance and therefore keeps its dedicated documentation page - but
the two subsystems now cross-reference each other for convenience.

Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
2023-09-28 15:13:12 +02:00

65 lines
2.3 KiB
ReStructuredText

.. _thread_protocol_interface:
Thread protocol
###############
.. contents::
:local:
:depth: 2
Overview
********
Thread is a low-power mesh networking technology, designed specifically for home
automation applications. It is an IPv6-based standard, which uses 6LoWPAN
technology over IEEE 802.15.4 protocol. IP connectivity lets you easily connect
a Thread mesh network to the internet with a Thread Border Router.
The Thread specification provides a high level of network security. Mesh networks
built with Thread are secure - only authenticated devices can join the network
and all communications within the mesh are encrypted. More information about
Thread protocol can be found at
`Thread Group website <https://www.threadgroup.org>`_.
Zephyr integrates an open source Thread protocol implementation called OpenThread,
documented on the `OpenThread website <https://openthread.io/>`_.
Internet connectivity
*********************
A Thread Border Router is required to connect mesh network to the internet.
An open source implementation of Thread Border Router is provided by the OpenThread
community. See
`OpenThread Border Router guide <https://openthread.io/guides/border-router>`_
for instructions on how to set up a Border Router.
Sample usage
************
You can try using OpenThread with the Zephyr Echo server and Echo client samples,
which provide out-of-the-box configuration for OpenThread. To enable OpenThread
support in these samples, build them with ``overlay-ot.conf`` overlay config file.
See :zephyr:code-sample:`sockets-echo-server` and :zephyr:code-sample:`sockets-echo-client`
samples for details.
Thread related APIs
*******************
OpenThread Driver API
========================
OpenThread L2 uses Zephyr's protocol agnostic IEEE 802.15.4 driver API
internally. This API is of interest to **driver developers** that want to
support OpenThread.
The driver API is part of the :ref:`ieee802154_driver_api` subsystem and
documented there.
OpenThread L2 Adaptation Layer API
==================================
Zephyr's OpenThread L2 platform adaptation layer glues the external OpenThread
stack together with Zephyr's IEEE 802.15.4 protocol agnostic driver API. This
API is of interest to OpenThread L2 **subsystem contributors** only.
.. doxygengroup:: openthread