Mistake on this page?
Report an issue in GitHub or email us


6LoWPAN-ND (IPv6 over Low-Power Wireless Personal Area Networks with Neighbor Discovery) is a mesh protocol that loosely follows the Zigbee-IP specification. 6LoWPAN-ND allows IP-based networking to all nodes in the network.

6LoWPAN-ND protocol stack is able to operate on a license-exempt RF band, and you can configure it to use frequency hopping to lower interference. Therefore, it is applicable for multiple use cases.


Mbed OS provides the Mesh C++ API for building 6LoWPAN-ND based applications:

Nanostack 6LoWPAN-ND API

The Nanostack library, which provides a set of C API headers with more functionalities, implements 6LoWPAN-ND. The nanostack folder has the net_interface.h header file that you can used with 6LoWPAN-ND tor initialize, start and stop a 6LoWPAN-ND interface.

6LoWPAN-ND network device types and network topologies

Typically, the 6LoWPAN-ND network consists of one border router on multiple low-powered nodes. You can connect the nodes to a cloud service for feeding in the sensor or control data.

Node connected to server

Different device types in a 6LoWPAN-ND network

In a 6LoWPAN-ND network, devices can have different roles. The colors in the illustrations represent different device types and are used in the examples throughout this section.

Border router (6LBR)

Border router

A border router is the coordinator of the 6LoWPAN-ND network. It handles the translations between the 6LoWPAN-ND and IPv6 networks. Arm does not provide translation to a IPv4 network due to the limited address space. We recommend using IPv6 tunnels over an IPv4 network when operating in such an environment.

The border router also authenticates the nodes joining the network and keeps track of the routing topology.

6LoWPAN-ND router (6LR)

6LoWPAN-ND router

A 6LoWPAN-ND router is a node that can route packets. This role is required to form a topological or mesh network. This configuration does not allow nodes to sleep because they route packets to their siblings.

6LoWPAN-ND host (6LH)


A 6LoWPAN-ND host is a type of node that does not route any packets. It has only one parent routing the packets.

6LoWPAN-ND sleepy host

A 6LoWPAN-ND sleepy host is a 6LoWPAN-ND host that is periodically allowed to sleep and turn off its radio.

Different types of mesh networks

6LoWPAN-ND-based mesh networks cannot be described as a uniform standardized network type like Wi-Fi. Depending on the business requirements and use cases, the network may have different setups and requirements.

Star network

Start topology

Star topology is the simplest form of a mesh network. Actually, it is not mesh at all. Every node connects directly to the border router.

In a star network, nodes can be low-power devices with little RAM because they have no routing responsibilities. This topology also allows sleeping nodes.

Mesh, or tree, network

Tree type mesh

In a mesh, or tree, network, all nodes are configured as 6LoWPAN-ND routers.

In a 6LoWPAN-ND network, RPL protocol is used for forming the routing topology. Every node selects a primary parent for routing, so the result looks like a tree.

This network type can cover large areas because each node extends the range of the network. However, the packet is retransmitted on every hop, which means the transfer capacity of the network decreases as the size of the network increases.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.