OpenThread released by Google is an open-source implementation of Thread®. Google has released OpenThread to make the networking technology used in Google Nest products more broadly available to developers, in order to accelerate the development of products for the connected home and commercial buildings.

With a narrow platform abstraction layer and a small memory footprint, OpenThread (OT) is highly portable. It supports both System-on-Chip (SoC) and Co-Processor (RCP, NCP) designs.
OpenThread implements all features defined in the Thread Specification. This specification defines an IPv6-based reliable, secure, and low-power wireless device-to-device communication protocol for home and commercial building applications.

Features

OpenThread implements all Thread networking layers (IPv6, 6LoWPAN, IEEE 802.15.4 with MAC security, Mesh Link Establishment, Mesh Routing) and device roles, as well as Border Router support.

Application services
  • IPv6 configuration and raw data interface
  • UDP sockets
  • CoAP client and server
  • DHCPv6 client and server
  • DNSv6 client
Enhanced Features
  • Child Supervision
  • Inform Previous Parent on Reattach
  • Jam Detection
  • Periodic Parent Search
Co-Processor support
  • Spinel, a general purpose Co-Processor protocol
  • OT Daemon, a user-space Radio Co-Processor network interface driver/daemon
  • Sniffer support via Spinel nodes
Border Router
  • Bidirectional IPv6 reachability between Thread and Ethernet/Wi-Fi
  • Bidirectional DNS-based service discovery between Thread and Ethernet/Wi-Fi
  • Extending Thread mesh over Ethernet/Wi-Fi links

How will you use OpenThread?

If you're interested in contributing to the ongoing development of OpenThread, then the OpenThread GitHub repository is for you. There you will find all the code, including information on how to contribute, our style guide, code of conduct, licensing, and much more.

If you want to use OpenThread in your own products or for personal deployment, check the options below.
Determine the hardware and platform design you wish to use to build and deploy your own Thread network. Add a Border Router to connect your Thread network to other network layers, such as Wi-Fi or Ethernet, or use OpenThread RTOS, a single platform solution using LwIP, FreeRTOS, and mbed TLS. And use OpenThread Commissioner to easily commission devices onto a Thread network.
Try out our API Codelab and use our API Reference as a guide to application development. IPv6, UDP, CoAP, ICMPv6, DNSv6...it's all there.
Check out our Porting Guide, which walks you through all the steps necessary to port OpenThread to a new hardware platform.
OpenThread can be used for certification by the Thread Group. As a Thread reference stack, OpenThread makes certification easy.

News

Watch our session from Google I/O to get a brief overview of Thread and how developers can quickly build IoT solutions using OpenThread.
March 12, 2024

A complete reference of all CLI commands and related usage guides are now available in the OpenThread Reference.
December 26, 2023

A complete reference of all OpenThread configuration variables, by group, has been added to the OpenThread Reference.
October 26, 2023

We've released a new codelab: Learn how to program OpenThread on actual Espressif hardware, create and manage a Thread network, and exchange messages between nodes.

What products use OpenThread?

The following products use OpenThread and support the core requirements of the Thread Specification. Products displaying the "Built on Thread" badge have been certified by the Thread Group.

The Google Home ecosystem supports a number of different device types. The functionality for devices types comes from the features that the manufacturer adds to each one. To learn more, see the use cases available in the Google Home ecosystem.

Interested in having your product featured? See our Product Guidelines for more information.
Java is a registered trademark of Oracle and/or its affiliates. Thread is a registered trademark of the Thread Group, Inc.