Creating and Securing Bluetooth Low Energy (BLE) Applications
1h 53mIntermediate2025-07-31
Authors

Israel Gbati
Course details
Bluetooth Low Energy is the dominant local wireless connection between devices, connecting device to device without needing a larger Wi-Fi network. Its low power consumption still lets it reach the same range as its Bluetooth predecessors, but it can work in a wider range of generally battery-powered devices. Like all networking approaches, BLE has a complex stack of layers for managing information through application, networking, and transmission. Join instructor Israel Gbati as he shows you how to build software and firmware into your devices for stable and reliable communications. This course is an ideal fit for developers building and supporting devices that need local communications connectivity.
Learning objectives
Plan your BLE approach for specific project situations.
Manage access and attributes through GAP and GATT.
Establish a development workflow for software and firmware development.
Protect your applications and their data from hostile attacks.
Optimize your project for efficient power consumption.
Learning objectives
Plan your BLE approach for specific project situations.
Manage access and attributes through GAP and GATT.
Establish a development workflow for software and firmware development.
Protect your applications and their data from hostile attacks.
Optimize your project for efficient power consumption.
Skills covered
Software Development SecurityApplication SecurityCybersecurityOne-Off
Concepts
0. Introduction
- 01 - The power of BLE applications
- 02 - What you should know
1. Introduction to the BLE Landscape
- 03 - What is BLE
- 04 - Key benefits of BLE
- 05 - BLE vs. Bluetooth classic
- 06 - BLE vs. other IoT protocols
- 07 - Core BLE concepts
- 08 - Understanding BLE device roles
- 09 - The role of the central device
- 10 - BLE market and typical use cases
- 11 - Recap of introduction to the BLE landscape
2. Understanding the BLE Architecture
- 12 - Module introduction
- 13 - Controller vs. host - Two main parts
- 14 - Understanding BLE stack splits (SoC and dual-chip)
- 15 - The BLE controller
- 16 - PHY options - 1M, 2M, and coded PHY
- 17 - The link layer (LL) - Managing the radio state
- 18 - Link layer (LL) states - From standby to connection
- 19 - Packets and channels
- 20 - The host controller interface (HCI) - The standard bridge
- 21 - Recap of understanding the BLE architecture
3. GAP - Advertising, Discovery, and Connections
- 22 - Module introduction
- 23 - What is GAP
- 24 - GAP advertising mechanisms
- 25 - Advertising packet types
- 26 - Advertising data fields
- 27 - Understanding connection parameters
- 28 - Recap of GAP - Advertising, discovery, and connections
4. GATT - Structuring Your BLE Data
- 29 - Module introduction
- 30 - Introduction to GATT and ATT
- 31 - The GATT hierarchy - Services, characteristics, descriptors
- 32 - Understanding UUIDs - Standard and custom
- 33 - The GATT server - Implementing data on the peripheral
- 34 - The GATT client - How centrals interact
- 35 - Characteristic properties - Defining data access
- 36 - Exploring Standard BLE Profiles and Services
- 37 - Recap of GATT - Structuring your BLE data
5. Setting Up the Development Environment
- 38 - Overview of the development board
- 39 - Setting up Arduino
- 40 - Setting the board package and BLE library
- 41 - Getting the BLE scanner app
6. Hands-On BLE Peripheral Development
- 42 - Project sketch setup
- 43 - Initializing and naming the peripheral
- 44 - Starting advertising
- 45 - Testing the BLE advertising sketch
- 46 - Generating a 128-bit UUID
- 47 - Creating a custom service
- 48 - Testing the custom service
- 49 - Defining a characteristic and its properties
- 50 - Adding the characteristic and advertising data
- 51 - Testing the characteristic and advertising data
- 52 - Defining the pins and char for the BLE chat application
- 53 - Implementing the chat logic
- 54 - Testing the chat application
- 55 - Testing the notify property
7. Designing Effective BLE Peripherals
- 56 - Module introduction
- 57 - Key design considerations for peripherals
- 58 - Power consumption optimization, part 1
- 59 - Power consumption optimization, part 2
- 60 - Balancing range vs. data rate trade-offs
- 61 - Accounting for environmental considerations
- 62 - Recap of designing effective BLE peripherals
8. Fundamentals of BLE Security
- 63 - Module introduction
- 64 - Understanding common threats and risks
- 65 - The security manager
- 66 - Core security concepts
- 67 - Understanding pairing methods, part1
- 68 - Understanding pairing methods, part2
- 69 - LE SC vs. legacy pairing
- 70 - Recap of fundamentals of BLE security
Conclusion
- 71 - Next steps in your BLE journey