The Ultimate Bluetooth Mesh Tutorial (Part 1)

By Mohammad Afaneh | September 3, 2018 | 6 Comments
Bluetooth mesh network

Bluetooth has been around for a while. In fact, it recently it celebrated its 20th year anniversary! The introduction of the Bluetooth Low Energy (BLE) standard came in 2010 to address the rapid growth of use cases in the Internet of Things (IoT) field including sensors, wearables, medical devices, etc. However, one thing that BLE lacked since the beginning was the capability of supporting a many-to-many topology (often referred to as mesh), where multiple BLE devices can send each other messages and relay messages to other devices within a network. This all changed in July 2017 when the Bluetooth SIG released the Bluetooth mesh standard. We’ll be going over the most important basics you need to know to better understand Bluetooth mesh and how it works.…

Read More

How to build the simplest nRF52 BLE Central (Lightbulb use case)

By Mohammad Afaneh | June 5, 2018 | 11 Comments
nRF52 Remote Control (BLE Central) use case

In any BLE application, there are (at least) two devices involved: a BLE Peripheral device and a BLE Central device. Usually, the BLE Central is a smartphone, but that doesn’t mean it has to be! What if: you do not want to have to launch an app everytime you want to control a BLE Peripheral? you want to have a dedicated device that acts as the remote control for the Peripheral device? you want to utilize Bluetooth 5 features such as the long-range feature (Coded PHY)? (which currently does not exist in any smartphone) you want to learn more about how a BLE Central works and how to develop one yourself? In this case, a dedicated BLE Central device can make a lot more sense than using a…

Read More

How to build the simplest nRF52 BLE Peripheral application (Lightbulb use case)

By Mohammad Afaneh | May 29, 2018 | 20 Comments
BLE-Smart-LED-application-nRF52

Let’s face it… One of the hardest things when working with BLE is simply getting started. Whether it’s the setup of the IDE, the configuration of the project, or the implementation the BLE application. I’ve been there… I’ve felt lost, not knowing where and how to start… This is especially true since I was trying to learn the technology itself (BLE) in addition to learning an SDK, platform, and IDE all at once! It just felt overwhelming and way too many things to learn at one time. Lately, I’ve been focusing on one platform/chipset: Nordic’s nRF52. This is due to one main reason: I’ve found it to be the most developer-friendly platform out there. (It also helps that you get a FREE commercial license for a…

Read More

The complete cross-platform nRF development tutorial

By Mohammad Afaneh | April 10, 2018 | 19 Comments

In a previous blog post (The complete nRF Mac developmeent tutorial), I went over how to set up your nRF development environment using the NetBeans IDE on a Mac. The beauty with NetBeans is that it’s cross-platform and customizable to fit your needs. I had been using NetBeans for over a decade, so I was very comfortable with customizing and modifying the different settings and configurations to make it work. Unfortunately, the setup was quite lengthy and involved many changes to make it work, especially with on-target debugging. Even then, it wouldn’t work quite as well as I would like it to. Not to mention, the setup was different for each of the three main operating systems (Windows, macOS, and Linux). I started searching for a better, more…

Read More

Bluetooth 5 speed: How to achieve maximum throughput for your BLE application

By Mohammad Afaneh | September 6, 2017 | 20 Comments

Introduction In this second post in the series on Bluetooth 5, we cover the new feature of improved 2x speed along with a general overview of throughput for a BLE application (the previous post went over Bluetooth 5’s new features in general and more specifically covered the increased advertisement capacity feature). First, we need to understand that the speeds advertised (1 Mbps and the new 2 Mbps) are only theoretical and are cut down when it comes down to application throughput. This is due to multiple reasons which we’ll go over in the next section. The Bluetooth 5 “2x speed” feature requires a hardware update so older devices/chips/modules will not support it. It is also important to note that in order to achieve this higher…

Read More

 

 

Copyright © 2019 Novel Bits, LLC | All Rights Reserved