Open-source project
openthread/openthread avatar
openthread/openthread

OpenThread is an implementation of Thread, and the repository is the contributor half

OpenThread released by Google is an open-source implementation of the Thread networking protocol.

4,066 stars1,232 forksC++BSD-3-Clause

At a glance

What is it?
Google Nest released OpenThread to make the networking stack from Nest products available to anyone building connected home devices. It is a Thread Certified Component covering the 1.4.0 specification, portable enough to run as a system-on-chip build or a network co-processor build, and every line of end-user documentation lives on openthread.io rather than in the repository.
Who is it for?
OpenThread is for you if you are shipping a connected home device and want Thread rather than a vendor's proprietary radio stack, or if you are porting Thread to silicon you control. It is not a place to look for how to run a Thread network, because the repository sends that audience to openthread.io and keeps its own content for contributors.
Can I use it commercially?
Yes. BSD-3-Clause is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly C++, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • openthread/openthread4,066 ★ · +74
Star history
Repository2026-07-282026-11-13
openthread/openthread4k4.1k

74 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

OpenThread is the implementation, Thread is the specification

The distinction the readme is careful about is the one people get wrong most often. Thread is the networking protocol, defined by the Thread Group, and OpenThread is an open-source implementation of it, released by Google Nest. The stated reason for the release is that Google Nest wanted the technology used in Nest products to be more broadly available to developers, to accelerate development of products for the connected home. So there is a specification and there is this code, and they are versioned separately: the implementation is described as a Thread Certified Component implementing all features defined in the Thread 1.4.0 specification, while the releases of the repository itself are dated tags such as v2026.10.0, published on the first of October 2026. Thread is a registered trademark of the Thread Group, Inc., which matters for how the two names may be used next to each other.

The feature list is the specification, layer by layer

Rather than describing features of its own, the readme enumerates what the Thread 1.4.0 specification defines, and the list walks the stack from the bottom up. The networking layers are IPv6, then 6LoWPAN, then IEEE 802.15.4 with MAC security, then Mesh Link Establishment, then Mesh Routing, and on top of all of that the device roles. Border Router support is called out separately and points at the ot-br-posix repository, which is a separate piece of software rather than a mode of this one. So if you are trying to work out whether OpenThread covers a layer you need, the honest answer is that coverage is defined by the specification version, and anything outside the 1.4.0 feature set is a question for the Thread Group rather than for this code.

Two hardware shapes: system-on-chip or network co-processor

The portability claim is specific rather than rhetorical. OpenThread is described as OS and platform agnostic, with a narrow platform abstraction layer and a small memory footprint, making it portable, and it supports both system-on-chip designs and network co-processor designs. That is the first fork in the road for anyone using it. In a system-on-chip build the stack runs on the same MCU as your application, and in a network co-processor build it runs on a separate radio chip that your application talks to. The readme states that both are supported and stops there; it does not say which one to pick for a given product, so that decision belongs to your hardware and power budget. What the abstraction layer buys you is that the difference is confined to one layer, which is also why porting to a new platform is listed as one of the things the documentation site covers.

The readme hands every user to openthread.io and keeps the rest

The structure of the readme is a routing table. It names six things a reader might want to do: learn about OpenThread features and enhancements, use OpenThread in your products, learn how to build and configure a Thread network, port OpenThread to a new platform, build an application on top of OpenThread, and certify a product using OpenThread. All six are answered with the same destination, openthread.io, where the readme says all end-user documentation and guides are located. There is one regional exception: for users in China, end-user documentation is at openthread.google.cn. After that the readme switches register entirely, to contributing, with a link to the contributing guidelines, a code of conduct and a coding conventions and style guide that contributors are required to abide by. So the repository is the contributor half of the project by design.

The supporters list mixes silicon vendors, product makers and one foundation

The Who supports OpenThread section is a wall of logos with no text, which makes it easy to skim and hard to interpret. The names include Amazon, Aqara, Arm, Beken, Cascoda, eero, Espressif, Google, Infineon, MMB Networks, Nabucasa, Nanoleaf, Nordic Semiconductor, NXP, Qorvo, Qualcomm, Samsung, Silicon Labs, STMicroelectronics, Synopsys, Telink and Texas Instruments, and the last entry is the Zephyr Project, a foundation rather than a company. So the list covers the three groups a Thread stack needs: the chip makers who embed the stack, the product companies who ship routers and devices on it, and at least one operating system project integrating it. The readme does not attach a commitment level to any of these, so treat the list as a directory rather than as a support statement.

BSD 3-Clause, with a trademark clause about Nest, Google and the Thread Group

The licence section has two halves and the second one is easy to skim past. OpenThread is released under the BSD 3-Clause license, with the LICENSE file in the repository, and there is a NOTICE file beside it. Then comes the mark usage rule: only use the OpenThread name and marks when accurately referencing this software distribution, and do not use them in a way that suggests you are endorsed by or otherwise affiliated with Nest, Google or The Thread Group. Read together with Thread being a registered trademark of the Thread Group, Inc., that means you can ship the code and you can say what it is, and you cannot brand your product as though Google or the Thread Group had signed off on it. For a commercial product that distinction is the part to check with your legal team.

Two build systems, a submodule list and a zephyr directory

The tree tells you how the code is actually built. There are two build systems side by side: the GN build, with a BUILD.gn at the root and a .gn directory, and the CMake build, with CMakeLists.txt and a CMakePresets.json. C++ tooling is configured in the repository itself, with .clang-format and .clang-tidy at the root and a STYLE_GUIDE.md, so formatting is enforced rather than argued about. .gitmodules and third_party/ mean dependencies are pulled in as submodules rather than vendored. There is a zephyr/ directory, which pairs with the Zephyr Project's presence in the supporters list, an etc/ directory, a doc/ directory, and an examples/ tree split into apps/, config/ and platforms/. AGENTS.md, AUTHORS, SECURITY.md and CONTRIBUTING.md fill out the root, and coverage is configured in .codecov.yml. There is also a .default-version file at the top level, and the only third-party pointer anywhere in the readme is a badge linking to a DeepWiki page, which is an auto-generated wiki rather than documentation the project maintains.

Editorial conclusion

OpenThread is for you if you are shipping a connected home device and want Thread rather than a vendor's proprietary radio stack, or if you are porting Thread to silicon you control. It is not a place to look for how to run a Thread network, because the repository sends that audience to openthread.io and keeps its own content for contributors. Three things to check. The specification it implements is Thread 1.4.0, so if your certification target moves you will be reading the specification rather than this repository. The deployment shape is a real decision, since it supports both system-on-chip and network co-processor designs and the readme does not tell you which one your product should use. And the licensing has a second half: BSD 3-Clause for the code, but the readme restricts the OpenThread name and marks to accurate references and forbids implying endorsement by Nest, Google or The Thread Group, while Thread itself is a registered trademark of the Thread Group. Contributors are also bound by a code of conduct and a coding conventions and style guide. Releases ship monthly, with v2026.08.0, v2026.09.0 and v2026.10.0 published on the first of each month in 2026.

Frequently asked questions

what is openthread

OpenThread is an open-source implementation of the Thread networking protocol, released by Google Nest to make the technology used in Nest products more broadly available to developers. It is released under the BSD 3-Clause license.

how to use openthread

The readme routes all end-user questions to openthread.io, which is where the documentation and guides live. It covers learning about features, using OpenThread in products, building and configuring a Thread network, porting to a new platform, building an application on top of it and certifying a product.

What is the difference between OpenThread and Thread?

Thread is the networking protocol, defined by the Thread Group, and OpenThread is an open-source implementation of it. The readme says OpenThread is a Thread Certified Component implementing all features defined in the Thread 1.4.0 specification, and Thread is a registered trademark of the Thread Group, Inc.

what is openthread border router

The readme says OpenThread implements all features of the Thread 1.4.0 specification and calls out Border Router support separately, linking to the ot-br-posix repository. The layers it names are IPv6, 6LoWPAN, IEEE 802.15.4 with MAC security, Mesh Link Establishment, Mesh Routing and the device roles.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/openthread-openthread.svg)](https://hysenlabs.com/projects/openthread-openthread)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/openthread-openthread.svg)](https://hysenlabs.com/projects/openthread-openthread)

Was this useful?