Connectivity is the basic requirement of all Internet of Things (IoT) devices. Mbed OS implements diverse connectivity technology protocols and enables full support for multiple communication options, making any IoT project possible.
Specifically designed for the IoT, NB-IoT is a 3GPP cellular connectivity standard that is supported by major network providers. It is designed to connect devices easily using existing, wide-spread mobile cellular networks. NB-IoT is ideally positioned for IoT as it reliably handles small amounts of data with low power consumption.
Key benefits of NB-IoT:
- Very low power consumption
- Extended range in buildings and even underground locations
- Easy deployment into existing cellular network architecture
- Lower component cost as NB-IoT simplifies the cellular modems, resulting in potentially lower costs than for LTE, 3G and even 2G modems
The NB-IoT connectivity standard is strongly driven by network operators. Cellular coverage is pervasive, covering most areas in countries worldwide. By providing secure, managed networks, cellular operators allow device and application developers to concentrate on their main interest, the end application.
The Mbed OS team has been developing the NB-IoT networking stack, including NB-IoT modem API, which allows silicon providers to integrate below the IP stack. For application developers, NB-IoT application API provides an easy message interface for applications to utilize NB-IoT as connectivity. For non-IP NB-IoT data, Mbed OS offers a suitable packeting frame for data packets.
Want to know more about Cellular IoT? Read our whitepaper: "The new Cellular IoT technology, supported by Arm".
Bluetooth Low Energy
Bluetooth Low Energy (BLE) is a short-range wireless communication technology, and it’s how your car, clothes and home can talk to your phone and each other. BLE, unlike the classic Bluetooth standard, is designed to operate on very little energy, allowing your BLE device to run for months or years on a coin-cell battery.
BLE and the Internet of Things
You’ve probably met BLE in a fitness tracker or a smart TV, but the beauty of BLE is that it’s simply a method of transferring small amounts of data - any data. If you have an input method like a sensor or button, your BLE device can receive input from them and transfer it to a phone, tablet or PC.
This two-way communication means that a single device can both send information and perform actions based on that information. You could water your garden when the ground is dry, put a beacon with your details on your dog’s collar, or flash a light when a car comes too close to your bicycle. You can do anything, so long as you have the right sensor with an appropriate BLE-enabled board, and with Mbed, enabling your board to support BLE has never been easier.
BLE and Mbed
BLE has been around since 2010, and Mbed has provided BLE APIs since the launch of Mbed OS 5. Since the release of Mbed OS 5.11, Mbed OS now includes the Arm Cordio BLE stack, which is a fully featured 5.0, qualified and product ready stack fully open sourced under the same Apache 2.0 license as the rest of Mbed OS.
Using Mbed for your BLE development gives you access to:
- Our BLE_API, an abstraction layer bridging the gap between your code and the BLE controller on your board.
- The Arm Cordio BLE 5.0 software source code, enabling you to support the latest BLE features, such as enhanced data rates and longer range, and debug the entire BLE software stack.
- Our online IDE, allowing you to write a single piece of code and try it on every supported board.
- A wide range of additional supported components such as sensors and screens.
IPv6 over Low power Wireless Personal Area Network (6LoWPAN) is an adaptation layer that enables the use of IPv6 - a standard data delivery method - on small, low-power devices that need wireless internet connectivity, but do not transfer huge amounts of data.
The Arm Mbed 6LoWPAN Stack
The industry leading Arm Mbed 6LoWPAN Stack is not only highly scalable and reliable, but also provides an unrivaled feature set with a compact source code base and optimal memory usage. Optional stack modules for security, protocols and embedded web services can be added or removed from the build as needed.
The Mbed 6LoWPAN stack and its documentation are available on GitHub.
The 6LoWPAN Stack offers optional security components that provide strong security mechanisms for data authentication and encryption, and device authentication and authorization. These allow the end device to be part of a full public key infrastructure (PKI) security scheme. The stack supports PANA, EAP, TLS1.2, SHA-256, ECC and X509.3.
Mesh networking with 6LoWPAN
6LoWPAN allows each device in a given area to connect to other devices in that area, creating a mesh network of all devices. Some of the devices are then connected to a border router - an access point that supports 6LoWPAN. The access point provides internet access to the devices that are directly connected to it, and through them to the other devices on the mesh network. In short, mesh networking means that you can cover huge areas with hundreds of devices, and they’ll access the internet using only a few routers.
For a demonstration of mesh networking with 6LoWPAN, and for a few words about the 6LoWPAN Gateway Router, see here.
Thread is a new wireless networking protocol for low-power devices in the home. It makes it easy to connect devices through a reliable and secure mesh network. Thread allows you to connect and remotely control devices such as appliances, energy managers, security systems and lighting.
Thread is founded on proven industry standards like IPv6 and 6LoWPAN, and uses 802.15.4 wireless technology, which is already present on millions of devices and continues to be supported by a large number of silicon platforms. This means that you can start using it today, without waiting for new hardware to take root in the market. But Thread is also extensible, and can be used with any overlaid technology, so you can innovate with it for years to come.
Mbed and Thread
Arm is one of the seven founding members of the Thread Group. With early access to the Thread specification, Mbed is already building Thread as an integral part of Mbed OS. Mbed OS with the complete Thread standard will be available to partners later this year. This implementation includes secure communication and a secure way to add and configure devices on your network.
To certify a product and use the Thread logo, developers must join the Thread Group.