Blog
Bluetooth Articles & Tutorials
View our recent blog posts & tutorials here or visit the Learn page to browse articles by topic.
Understanding the “SweynTooth” BLE Vulnerabilities
About two weeks ago (February 11, 2020), a group of Singaporean researchers released a group of vulnerabilities discovered in quite a few BLE vendor SDKs.
Implementing Over-the-Air Device Firmware Update for nRF52 – Part 3
Introduction In the previous post, Implementing Over-the-Air Device Firmware Update for nRF52 – Part 2, we introduced the OTA DFU process on the nRF52. In
Implementing Over-the-Air Device Firmware Update for nRF52 – Part 2
Introduction In the previous post, Implementing Over-the-Air Device Firmware Update (OTA DFU) – Part 1, we gave an introduction to over-the-air device firmware update (OTA
Implementing Over-the-Air Device Firmware Update (OTA DFU) – Part 1
Introduction One of the most important and critical features of wirelessly-connected devices is the capability of over-the-air device firmware updates (aka OTA DFU). You may
Zephyr Tutorial: Bluetooth Low Energy Development
What is the Zephyr Project? Zephyr is an open-source real-time operating system (RTOS) meant for use on resource-constrained embedded systems. This can range from simple
nRF52 Development using Visual Studio Code [macOS]
Introduction When it comes to IDEs and advanced text editors we, developers, have so many choices… probably too many! But that’s not necessarily a bad
Prototyping BLE apps on the nRF52840 USB Dongle (Part B)
As a continuation of last week’s tutorial (Prototyping BLE apps on the nRF52840 USB Dongle (Part A)), where we covered the following: Adding header rows
Prototyping BLE apps on the nRF52840 USB Dongle (Part A)
In the previous post (The nRF52840 USB Dongle Tutorial (Part 1)), we explored how to use the new nRF52840 USB Dongle to enable nRF Connect PC
The nRF52840 USB Dongle Tutorial (Part 1)
When it comes to Bluetooth Low Energy modules, chipsets and development kits, prices are only getting lower. Take for example the new nRF52840 USB dongle.
A Recap of Bluetooth World 2018
This week’s blog post will be a bit different. I’ll be covering a recap of the yearly event that covers all things Bluetooth: Bluetooth World
How to build the simplest nRF52 BLE Central (Lightbulb use case)
In any BLE application, there are (at least) two devices involved: a BLE Peripheral device and a BLE Central device. Usually, the BLE Central is
How to build the simplest nRF52 BLE Peripheral application (Lightbulb use case)
Let’s face it… One of the hardest things when working with BLE is simply getting started. Whether it’s the setup of the IDE, the configuration
The complete cross-platform nRF development tutorial
In a previous blog post (The complete nRF Mac development tutorial), I went over how to set up your nRF development environment using the NetBeans
Bluetooth 5 Advertisements: Everything you need to know
You’ve probably heard so much about the recently released Bluetooth 5. You’ve seen all the hype on 2x Speed, 4x Range, and 8x Advertising data
The complete nRF52 Mac development tutorial
[Update] I’ve published a more up-to-date version of this blog post that covers all three major operating systems (macOS, Windows, and Linux) using a different
Understanding SN and NESN in a BLE Link Layer packet
In my previous video looking at connection data captured via a BLE sniffer, I missed explaining two bits in the data that can be confusing
How do I choose a UUID for my custom services and characteristics?
First, a few things to know: “A UUID is a universally unique identifier that is guaranteed to be unique across all space and all time”
What is the maximum size of data that can be encapsulated in a characteristic?
The answer: 512 bytes. But to understand where that came from, let’s first look at what a characteristic really is. Attributes are the generic term
BLE connection intervals and events in under 5 minutes
Understand BLE connection intervals and events in under 5 minutes A BLE connection interval is the time between two data transfer events (BLE connection events)