• Stars
    star
    399
  • Rank 108,092 (Top 3 %)
  • Language
    C++
  • License
    BSD 3-Clause "New...
  • Created over 7 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OpenThread Border Router, a Thread border router for POSIX-based platforms.

Build Status Docker Status Build Status Coverage Status


OpenThread Border Router

Per the Thread Specification, a Thread Border Router connects a Thread network to other IP-based networks, such as Wi-Fi or Ethernet. A Thread network requires a Border Router to connect to other networks.

A Thread Border Router minimally supports the following functions:

  • End-to-end IP connectivity via routing between Thread devices and other external IP networks
  • External Thread Commissioning (for example, a mobile phone) to authenticate and join a Thread device to a Thread network
Thread Certified Component

OpenThread's implementation of a Border Router is called OpenThread Border Router (OTBR). OTBR is a Thread Certified Component on the Raspberry Pi 3B with a Nordic nRF52840 NCP.

OTBR includes a number of features, including:

  • Web UI for configuration and management
  • Thread Border Agent to support an External Commissioner
  • DHCPv6 Prefix Delegation to obtain IPv6 prefixes for a Thread network
  • NAT64 for connecting to IPv4 networks
  • DNS64 to allow Thread devices to initiate communications by name to an IPv4-only server
  • Docker support

More information about Thread can be found at threadgroup.org. Thread is a registered trademark of the Thread Group, Inc.

Getting started

The quickest way to set up a Thread 1.3 compliant Border Router is to follow this codelab: Thread Border Router - Bidirectional IPv6 Connectivity and DNS-Based Service Discovery.

To run OTBR in a Docker container on any Linux-based system or a Raspberry Pi with either a physical or emulated NCP, please see the Docker Support guide on openthread.io for more info.

OTBR also runs directly on supported platforms like the Raspberry Pi. If you're interested in building and configuring OTBR directly, or to learn more about the OTBR architecture, then see the rest of our end-user documentation at openthread.io.

Note: For users in China, end-user documentation is available at openthread.google.cn.

If you're interested in contributing to OpenThread Border Router, read on.

Contributing

We would love for you to contribute to OpenThread Border Router and help make it even better than it is today! See our Contributing Guidelines for more information.

Contributors are required to abide by our Code of Conduct and Coding Conventions and Style Guide.

We follow the philosophy of Scripts to Rule Them All.

License

OpenThread Border Router is released under the BSD 3-Clause license. See the LICENSE file for more information.

Please only use the OpenThread name and marks when accurately referencing this software distribution. Do not use the marks in a way that suggests you are endorsed by or otherwise affiliated with Nest, Google, or The Thread Group.

Need help?

OpenThread support is available on GitHub:

OpenThread

To learn more about OpenThread, see the OpenThread repository.

More Repositories

1

openthread

OpenThread released by Google is an open-source implementation of the Thread networking protocol
C++
3,448
star
2

wpantund

Wireless Network Interface Daemon for Low-Power Wireless SoCs
C++
174
star
3

ot-rtos

OpenThread RTOS, an integration of OpenThread, LwIP, and FreeRTOS.
C
145
star
4

ot-docs

OpenThread documentation
75
star
5

ot-nrf528xx

OpenThread on Nordic nRF528xx examples.
C
58
star
6

ot-esp32

C
56
star
7

ot-ns

OpenThread Network Simulator, a discrete event simulator and visualization tool for Thread networks.
Go
56
star
8

pyspinel

Python CLI to configure and manage OpenThread NCPs
Python
49
star
9

ot-commissioner

OpenThread Commissioner, a Thread commissioner for joining new Thread devices and managing Thread networks.
C++
49
star
10

tayga

C
41
star
11

ot-efr32

OpenThread on Silicon Labs EFR32 examples.
C
24
star
12

ot-cc13x2-cc26x2

OpenThread on Texas Instruments CC13x2/CC26x2 examples.
C
20
star
13

ot-nxp

OpenThread on NXP examples.
C
19
star
14

ot-registrar

OpenThread Registrar, a BRSKI Domain Registrar for authenticating new Thread devices.
Java
13
star
15

ot-reference-release

Python
11
star
16

ot-b91

OpenThread on Telink B91 example.
C
11
star
17

ot-samr21

OpenThread on Microchip SAM R21 example.
C
9
star
18

ot-cc2538

OpenThread on Texas Instruments CC2538 example.
C
6
star
19

silk

Python
5
star
20

ot-ifx

C
4
star
21

ot-qorvo

OpenThread on Qorvo example.
C
4
star
22

spinel-spec

Spinel Specification: a general management protocol for enabling a host device to communicate with and manage a Network Control Processor (NCP).
HTML
3
star
23

size-report

An app that generates size reports for pull requests.
JavaScript
2
star
24

ot-kw41z

OpenThread on NXP KW41Z example.
C
2
star
25

.allstar

1
star
26

.github

1
star