This book will guide you through the operation of Thread*, the setup of a Thread network, and the creation of your own Zephyr-based OpenThread applications to use it. You'll acquire knowledge on: > The capture of network packets on Thread networks using Wireshark and the nRF Sniffer for 802.15.4. > Network simulation with the OpenThread Network Simulator. > Connecting a Thread network to a non-Thread network using a Thread Border Router. > The basics of Thread networking, including device roles and types, as well as the diverse types of unicast and multicast IPv6 addresses used in a Thread network. > The mechanisms behind network discovery, DNS queries, NAT64, and multicast addresses. > The process of joining a Thread network using network commissioning. > CoAP servers and clients and their OpenThread API. > Service registration and discovery. > Securing CoAP messages with DTLS, using a pre-shared key or X.509 certificates. > Investigating and optimizing a Thread device's power consumption. Once you've set up a Thread network with some devices and tried connecting and disconnecting them, you'll have gained a good insight into the functionality of a Thread network, including its self-healing capabilities. After you've experimented with all code examples in this book, you'll also have gained useful programming experience using the OpenThread API and CoAP. * Thread is a protocol for building efficient, secure and scalable wireless mesh networks for the Internet of Things (IoT), based on IPv6. OpenThread is an open-source implementation of the Thread protocol, originally developed by Google. It offers a comprehensive Application Programming Interface (API) that is both operating system and platform agnostic. OpenThread is the industry's reference implementation and the go-to platform for professional Thread application developers.