Skip to content

Bluetooth

Why BLE

For our project we are going to use BLE, because its for our use case the best possible solution(you can find the research in the sprint1.md from Jack which is in the journal directory). On this page we will document everything that is important to know about BLE on the embedded part.

BLE

Bluetooth

Bluetooth is a useful technology for wireless file sharing and offers an upgrade from infrared. It eliminates the need for cables and is cost-effective.

Bluetooth is built into various devices like smartphones, laptops, and headsets, enabling file and music sharing, and connecting to other Bluetooth devices.

However, Bluetooth drains device batteries. Bluetooth Low Energy (BLE) addresses this by using less power. Although BLE is slower for large file transfers, it is ideal for devices that require long battery life. BLE is commonly used in health, fitness, and security industries for short-range connections.

UUID’s

BLE utilizes UUIDs. A service UUID is used to subscribe to a specific service for data reception and functionality access. A characteristic UUID identifies and interacts with specific attributes within the service, facilitating seamless communication and data exchange.

#define SERVICE_UUID        "4fafc201-1fb5-459e-8fcc-c5c9c331914b"
#define CHARACTERISTIC_UUID "beb5483e-36e1-4688-b7f5-ea07361b26a8"
With these UUID’s we can we can subscribe to the service and also tell the BLE server which characteristics to use. For own usage UUID’s can be generated on this site: Uuidgenerator

Services

A service is a collection of data and associated behaviors to accomplish a particular function or feature. A service definition may contain mandatory characteristics and optional characteristics.

Characteristics

characteristics A characteristic is a value used in a service along with properties and configuration information about how the value is accessed and information about how the value is displayed or represented

Because our embedded device is a remote we would only need the notify characteristic to notify the receiver that a signal has been sent.

Sources

https://devzone.nordicsemi.com/guides/short-range-guides/b/bluetooth-low-energy/posts/ble-services-a-beginners-tutorial https://blog.logrocket.com/using-react-native-ble-manager-mobile-app/ https://randomnerdtutorials.com/esp32-bluetooth-low-energy-ble-arduino-ide/ https://randomnerdtutorials.com/esp32-bluetooth-classic-arduino-ide/


Last update: June 27, 2023