Adding Bluetooth LE functionality to your app can be intimidating. Dealing with hardware connections is always a bit of a mystery.
CoreBluetooth really helps simplify the details and the heavy lifting. It boils down the connection and communication to something more familiar to most developers.
The course:
@Linkedin Learning
However, there are still a lot of concepts that are new and different if you haven’t done it before. Its still a LOT easier than Classic Bluetooth.
BLE has the concept of Central and Peripheral. Peripherals are devices that advertise they have data and settings to serve. A heart rate monitor is a good example of a peripheral.
Centrals scan for peripherals, connect to them and then access their services like RGB lights, heart rate and other standard and custom data. Services have characteristics that store the actual data, configuration values and settings.
CoreBluetooth in iOS manages the scanning and each step of the way is sent to the app: discovery of a device, services and characteristics. At each step, the app can decide (based on the data passed in) if it wants to continue that given device, service or characteristic.
In the course I cover how to perform each of these steps and then communicate with a BLE device. I use a SensorTag to perform the operations using things like light sensors and LEDs.
You’ll learn real-world skills to communicate with BLE devices. Also, you’ll learn how to make your app the peripheral (instead of the central) and receive requests, set/return data and more.
Sample video on scanning for peripherals:
Scan for peripherals from iOS Core Bluetooth for Developers by Bear Cahill