Zephyr API Documentation 4.2.0-rc3
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
IEEE 802.15.4 and Thread APIs

IEEE 802.15.4 native and OpenThread L2, configuration, management and driver APIs. More...

Topics

 IEEE 802.15.4 Drivers
 IEEE 802.15.4 driver API.
 IEEE 802.15.4 L2
 IEEE 802.15.4 L2 APIs.
 IEEE 802.15.4 Net Management
 IEEE 802.15.4 net management library.
 OpenThread stack
 OpenThread stack public header.

Detailed Description

IEEE 802.15.4 native and OpenThread L2, configuration, management and driver APIs.

Since
1.0
Version
0.8.0

The IEEE 802.15.4 and Thread subsystems comprise the OpenThread L2 subsystem, the native IEEE 802.15.4 L2 subsystem ("Soft" MAC), a mostly vendor and protocol agnostic driver API shared between the OpenThread and native L2 stacks ("Hard" MAC and PHY) as well as several APIs to configure the subsystem (shell, net management, Kconfig, devicetree, etc.).

The OpenThread subsystem API integrates the external OpenThread stack into Zephyr. It builds upon Zephyr's native IEEE 802.15.4 driver API.

The native IEEE 802.15.4 subsystem APIs are exposed at different levels and address several audiences:

  • shell (end users, application developers):
    • a set of IEEE 802.15.4 shell commands (see shell> ieee802154 help)
  • application API (application developers):
    • IPv6, DGRAM and RAW sockets for actual peer-to-peer, multicast and broadcast data exchange between nodes including connection specific configuration (sample coming soon, see https://github.com/linux-wpan/wpan-tools/tree/master/examples for now which inspired our API and therefore has a similar socket API),
    • Kconfig and devicetree configuration options (net config library extension, subsystem-wide MAC and PHY Kconfig/DT options, driver/vendor specific Kconfig/DT options, watch out for options prefixed with IEEE802154/ieee802154),
    • Network Management: runtime configuration of the IEEE 802.15.4 protocols stack at the MAC (L2) and PHY (L1) levels (see IEEE 802.15.4 Net Management),
  • L2 integration (subsystem contributors):
  • OpenThread and native IEEE 802.15.4 share a common driver API (driver maintainers/contributors):
    • see IEEE 802.15.4 Drivers
    • a basic, mostly PHY-level driver API to be implemented by all drivers,
    • several "hard MAC" (hardware/firmware offloading) extension points for performance critical or timing sensitive aspects of the protocol