Learn about Thread
Are you new to Thread®? Or simply need to refresh your knowledge? Check out our Thread Primer, which covers all the basics of Thread and how it works.
Want to see what OpenThread released by Google is all about? The quickest way to do so is to run through one of our Codelabs or Guides.
Simulation Codelab with Docker
Try OpenThread without the need for test hardware. Using Docker on a Mac or Linux machine, learn how to:
- Simulate a Thread network
- Authenticate Thread nodes with Commissioning
wpantundto manage a simulated Thread network featuring an NCP
Simulation Codelab with build toolchain
An alternate version of the Docker Simulation Codelab, where instead of using Docker, you set up the OpenThread build toolchain and build OpenThread directly on a Mac or Linux machine.
Dive right into hardware, where you will learn how to:
- Flash OpenThread on Nordic nRF52840 development boards
- Build a real Thread network
- Authenticate Thread nodes with Commissioning
- Use the OpenThread CLI for Multicast and UDP
Want to use OpenThread APIs in an application? Using real hardware, learn how to:
- Program the buttons and LEDs on Nordic nRF52840 development boards
- Use common OpenThread APIs and the
- Monitor and react to OpenThread state changes
- Send UDP messages to all devices in a Thread network
Network Simulator Codelab
OpenThread Network Simulator (OTNS) allows you to visualize and operate a simulated Thread network, using a CLI and web interface. With a Mac or Linux machine, learn how to:
- Install OTNS and build OpenThread for OTNS
- Use OTNS-Web to manage a Thread network and visualize activity in a web browser
- Use OTNS-CLI to further control the simulation
Testing and Visualization Codelab
OTNS can be used with Silk, a fully automated test platform for validating OpenThread function, feature, and system performance with real devices. With a Mac or Linux machine, learn how to:
- Build OpenThread for real devices with the OTNS feature enabled
- Use OTNS-Web to monitor the status of the Thread network formed by running Silk test cases
Border Router with Docker
If you're interested in a Thread Border Router, quickly get started with OpenThread Border Router (OTBR) by trying it out in a Docker container on any Linux-based machine.
Integrate with Cloud IoT Core Codelab
Learn how to connect a simulated OpenThread device to Google Cloud IoT Core. Using Docker on a Linux machine, learn how to:
- Run OTBR and OpenThread RTOS in a Docker container
- Set up Cloud Pub/Sub and a Cloud IoT Device Registry
- Manage an OT device's telemetry data using a Cloud MQTT server
Get the code
Already know what you're doing and want to get started with the code? Visit the
OpenThread GitHub site, where you can
find the OpenThread repository, along with other support repositories, like
wpantund, OpenThread Border Router, OpenThread RTOS, and OpenThread
OpenThread has been ported to several devices and platforms by both the OpenThread team, silicon vendors, and the community.
See the list of vendor-supported platforms at Vendor Support.
Learn more about the system architecture and platform designs on the Platforms overview.
Docker images for use with OpenThread are available on Docker Hub. These images are created and tested by the OpenThread team, and are an easy way to get started with OpenThread without having to go through toolchain and system configuration.
||For use with the Simulation Codelab, contains the OpenThread Simulation example and
||Development environment with the GNU toolchain and all required OpenThread dependencies installed. OpenThread is not built in this image.|
||OpenThread Border Router pre-configured and ready to use.|
||Development environment with the OpenThread Simulation example pre-built.|
||Development environment with
in the OpenThread repository for more information on general usage of the
Need help with a specific task or feature? Our guides can help.
|Build||How to build and configure OpenThread and enable enhanced features|
|Porting||How to port OpenThread to a new hardware platform|
|NCP Support||How OpenThread supports the NCP design, including pre-built NCP firmware images and Pyspinel for packet sniffing|
|Border Router||How to connect your OpenThread network to other IPv6 networks with a Border Router, or use external Thread commissioning|
|Commissioner||How to build and use OT Commissioner to commission devices onto a Thread network|
|Certification||How to test your platform against all certification test cases|
Developing an application to run on top of OpenThread? Try our Developing with OpenThread APIs Codelab to learn the basics, or dig into the API Reference documentation to see what OpenThread services are available.
Testing and certification
If you're interested in Thread Certification for your product or component, see the Certification page.
Get help or contribute
Have a question about OpenThread? Want to contribute to its ongoing development? Our Resources page explains all the ways to get help, or to help out.