Google is committed to advancing racial equity for Black communities. See how.

Get Started

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.

Try OpenThread

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
  • Use OpenThread Daemon to manage a simulated Thread network featuring an RCP

Try the Simulation Codelab with Docker

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.

Try the Simulation Codelab with build toolchain

Hardware Codelab

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

Try the Hardware Codelab

API Codelab

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 otInstance class
  • Monitor and react to OpenThread state changes
  • Send UDP messages to all devices in a Thread network

Try the API Codelab

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

Try the Network Simulator Codelab

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

Try the Testing and Visualization Codelab

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.

Try the OTBR Docker guide

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

Try the Cloud IoT Core Codelab

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 OpenThread Border Router, OpenThread RTOS, and OpenThread Commissioner.

Platform support

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 support

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.

User guides

Need help with a specific task or feature? Our guides can help.

Category Contents
Build How to build and configure OpenThread and enable enhanced features
Porting How to port OpenThread to a new hardware platform
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
Pyspinel How to use Pyspinel to build a Thread packet sniffer.
Certification How to test your platform against all certification test cases

Application APIs

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

Learn how we test OpenThread and what user testing tools are available on our Testing page, and browse the latest OpenThread peformance quality metrics on our Quality Dashboards.

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.