You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Enables BLE connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, and Arduino Nano 33 BLE.
5
+
Enables Bluetooth® Low Energy connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, and Arduino Nano 33 BLE.
6
6
7
-
This library supports creating a BLE peripheral and BLE central mode.
7
+
This library supports creating a Bluetooth® Low Energy peripheral & central mode.
8
8
9
9
For the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, and Arduino Nano 33 IoT boards, it requires the NINA module to be running [Arduino NINA-W102 firmware](https://github.com/arduino/nina-fw) v1.2.0 or later.
Copy file name to clipboardExpand all lines: docs/readme.md
+12-12
Original file line number
Diff line number
Diff line change
@@ -1,27 +1,27 @@
1
1
# ArduinoBLE library
2
2
3
-
This library supports all the Arduino boards that have the hardware enabled for BLE and Bluetooth 4.0 and above; these include Nano 33 BLE, Arduino NANO 33 IoT, Uno WiFi Rev 2, MKR WiFi 1010, Nicla Sense ME.
3
+
This library supports all the Arduino boards that have the hardware enabled for Bluetooth® Low Energy and Bluetooth® 4.0 and above; these include Nano 33 BLE, Arduino NANO 33 IoT, Uno WiFi Rev 2, MKR WiFi 1010, Nicla Sense ME.
4
4
5
5
To use this library
6
6
``#include <ArduinoBLE.h>``
7
7
8
8
## A quick introduction to BLE
9
9
10
-
Bluetooth 4.0 includes both traditional Bluetooth, now labeled "Bluetooth Classic", and the Bluetooth Low Energy (Bluetooth LE, or BLE). BLE is optimized for low power use at low data rates, and was designed to operate from simple lithium coin cell batteries.
10
+
Bluetooth® 4.0 includes both traditional Bluetooth®, now labeled "Bluetooth® Classic", and the Bluetooth® Low Energy. Bluetooth® Low Energy is optimized for low power use at low data rates, and was designed to operate from simple lithium coin cell batteries.
11
11
12
-
Unlike standard bluetooth communication basically based on an asynchronous serial connection (UART) a Bluetooth LE radio acts like a community bulletin board. The computers that connect to it are like community members that read the bulletin board. Each radio acts as either the bulletin board or the reader. If your radio is a bulletin board (called a peripheral device in Bluetooth LE parlance) it posts data for all radios in the community to read. If your radio is a reader (called a central device in Blueooth LE terms) it reads from any of the bulletin boards (peripheral devices) that have information about which it cares. You can also think of peripheral devices as the servers in a client-server transaction, because they contain the information that reader radios ask for. Similarly, central devices are the clients of the Bluetooth LE world because they read information available from the peripherals.
12
+
Unlike standard Bluetooth® communication basically based on an asynchronous serial connection (UART) a Bluetooth® LE radio acts like a community bulletin board. The computers that connect to it are like community members that read the bulletin board. Each radio acts as either the bulletin board or the reader. If your radio is a bulletin board (called a peripheral device in Bluetooth® LE parlance) it posts data for all radios in the community to read. If your radio is a reader (called a central device in Blueooth LE terms) it reads from any of the bulletin boards (peripheral devices) that have information about which it cares. You can also think of peripheral devices as the servers in a client-server transaction, because they contain the information that reader radios ask for. Similarly, central devices are the clients of the Bluetooth® LE world because they read information available from the peripherals.
13
13
14
14

15
15
16
-
Think of a Bluetooth LE peripheral device as a bulletin board and central devices as viewers of the board. Central devices view the services, get the data, then move on. Each transaction is quick (a few milliseconds), so multiple central devices can get data from one peripheral.
16
+
Think of a Bluetooth® LE peripheral device as a bulletin board and central devices as viewers of the board. Central devices view the services, get the data, then move on. Each transaction is quick (a few milliseconds), so multiple central devices can get data from one peripheral.
17
17
18
18
The information presented by a peripheral is structured as **services**, each of which is subdivided into **characteristics**. You can think of services as the notices on a bulletin board, and characteristics as the individual paragraphs of those notices. If you're a peripheral device, you just update each service characteristic when it needs updating and don't worry about whether the central devices read them or not. If you're a central device, you connect to the peripheral then read the boxes you want. If a given characteristic is readable and writable, then the peripheral and central can both change it.
19
19
20
20
## Notify
21
21
22
-
The Bluetooth LE specification includes a mechanism known as **notify** that lets you know when data's changed. When notify on a characteristic is enabled and the sender writes to it, the new value is automatically sent to the receiver, without the receiver explicitly issuing a read command. This is commonly used for streaming data such as accelerometer or other sensor readings. There's a variation on this specification called **indicate** which works similarly, but in the indicate specification, the reader sends an acknowledgement of the pushed data.
22
+
The Bluetooth® LE specification includes a mechanism known as **notify** that lets you know when data's changed. When notify on a characteristic is enabled and the sender writes to it, the new value is automatically sent to the receiver, without the receiver explicitly issuing a read command. This is commonly used for streaming data such as accelerometer or other sensor readings. There's a variation on this specification called **indicate** which works similarly, but in the indicate specification, the reader sends an acknowledgement of the pushed data.
23
23
24
-
The client-server structure of Bluetooth LE, combined with the notify characteristic, is generally called a **publish-and-subscribe model**.
24
+
The client-server structure of Bluetooth® LE, combined with the notify characteristic, is generally called a **publish-and-subscribe model**.
25
25
26
26
## Update a characteristic
27
27
@@ -35,7 +35,7 @@ Just as with writing to a characteristic, you could update your characteristics
35
35
36
36
## Services, characteristics, and UUIDs
37
37
38
-
A BLE peripheral will provide **services**, which in turn provide **characteristics**. You can define your own services, or use [standard services](https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx).
38
+
A Bluetooth® Low Energy peripheral will provide **services**, which in turn provide **characteristics**. You can define your own services, or use [standard services](https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx).
39
39
40
40
Services are identified by unique numbers known as UUIDs. You know about UUIDs from other contexts. Standard services have a 16-bit UUID and custom services have a 128-bit UUID. The ability to define services and characteristics depends on the radio you're using and its firmware.
41
41
@@ -84,8 +84,8 @@ The Bluetooth LE protocol operates on multiple layers. **General Attribute Profi
84
84
85
85
As the library enables multiple types of functionality, there are a number of different classes.
86
86
87
-
- BLE used to enable the BLE module.
88
-
- BLEDevice used to get information about the devices connected or discovered while scanning.
89
-
- BLEService used to enable the services board provides or interact with services a remote board provides.
90
-
- BLECharacteristic used to enable the characteristics board offers in a service or interact with characteristics a remote board provides.
91
-
- BLEDescriptor used to describe a characteristic the board offers.
87
+
-`BLE` used to enable the Bluetooth® Low Energy module.
88
+
-`BLEDevice` used to get information about the devices connected or discovered while scanning.
89
+
-`BLEService` used to enable the services board provides or interact with services a remote board provides.
90
+
-`BLECharacteristic` used to enable the characteristics board offers in a service or interact with characteristics a remote board provides.
91
+
-`BLEDescriptor` used to describe a characteristic the board offers.
Copy file name to clipboardExpand all lines: library.properties
+2-2
Original file line number
Diff line number
Diff line change
@@ -2,8 +2,8 @@ name=ArduinoBLE
2
2
version=1.2.1
3
3
author=Arduino
4
4
maintainer=Arduino <info@arduino.cc>
5
-
sentence=Enables BLE connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, Arduino Nano 33 BLE and Nicla Sense ME.
6
-
paragraph=This library supports creating a BLE peripheral and BLE central mode.
5
+
sentence=Enables Bluetooth® Low Energy connectivity on the Arduino MKR WiFi 1010, Arduino UNO WiFi Rev.2, Arduino Nano 33 IoT, Arduino Nano 33 BLE and Nicla Sense ME.
6
+
paragraph=This library supports creating a Bluetooth® Low Energy peripheral & central mode.
0 commit comments