In this tutorial series, I will give you a basic idea you need to know about Bluetooth Low Energy and I will show you how you can make Arduino BLE Chipset to send and receive data wirelessly from mobile phones and other Arduino boards. Let’s get started.Arduino Nano 33 BLE Sense
Today, I am here with a new version of Arduino Nano – Arduino Nano 33 BLE Sense, Nano with BLE connectivity focussing on IOT, which is packed with a wide variety of sensors such as 9 axis Inertial Measurement Unit, pressure, light, and even gestures sensors and a microphone.
It is powered by Nina B306 module that support BLE as well as Bluetooth 5 connection. The inbuilt Bluetooth module consumes very low power and can be easily accessed using Arduino libraries. This makes it easier to program and enable wireless connectivity to any of your projects in no time.You won’t have to use external Bluetooth modules to add Bluetooth capability to your project. Save space and power.Arduino BLE – Bluetooth Low Energy Introduction
BLE is a version of Bluetooth which is optimized for very low power consuming situations with very low data rate. We can even operate these devices using a coin cell for weeks or even months.
Arduino have a wonderful introduction to BLE but here in this post, I will give you a brief introduction for you to get started with BLE communication.
Basically, there are two types of devices when we consider a BLE communication block.
- The Peripheral Device
- The Central Device
Peripheral Device is like a Notice board, from where we can read data from various notices or pin new notices to the board. It posts data for all devices that needs this information.
Central Devices are like people who are reading notices from the notice board. Multiple users can read and get data from the notice board at the same time. Similarly multiple central devices can read data from the peripheral device at the same time.
The information that is given by the Peripheral devices are structured as Services. And These services are further divided into characteristics. Think of Services as different notices in the notice board and services as different paragraphs in each notice board.
If Accelerometer is a service, then their values X, Y and Z can be three characteristics.
Now let’s take a look at a simple Arduino BLE example.Arduino BLE Example 1 – Battery Level Indicator
In this example, I will explain how you can read the level of a battery connected to pin A0 of an Arduino using a smartphone via BLE. This is the code here. This is pretty much the same as that of the example code for Battery Monitor with minor changes. I will explain it for you.
First you have to install the library ArduinoBLE from the library manager.
Find Complete Code and Explanation for Arduino BLE Battery Level Indicator here.