BLE Scanner with RSSI and MAC Address

This blog is to give a demo how to scan the ble advertiser and show the RSSI and MAC address in sorting order. Basically, I used the demo firmware ble_app_blinky example and added the observer role (passive scanner). static ret_code_t scan_init(dm_ble_scan_t * const p_scan_ctx) { VERIFY_PARAM_NOT_NULL(p_scan_ctx); /* We expect better performance when using extended advertising/scanning. … Continue reading BLE Scanner with RSSI and MAC Address

BLE Scan Request Filter Demo

This blog is to show how to add the scan request filter on the BLE advertiser. In BLE (bluetooth Low Energy), basically, it has two difference modes on the scanning mode. On the BLE observer, it can be either passive scanning or active scanning. If the observer plays as the active scanning, it would send … Continue reading BLE Scan Request Filter Demo

Radio Timeslot API for the Multiple Protocols

This blog is to describe more details how to use the Radio Timeslot API usage. The Radio Timeslot API was introduced since Nordic Softdevice S110v6.0 or later. It can be used to implement the concurrent multiprotocol with BLE together. All the timeslot API are based on the framework of Nordic Bluetooth Softdevice stack. For example, … Continue reading Radio Timeslot API for the Multiple Protocols

How to work with BLE Codec 1Mbps , 2Mbps and Codec PHY on nRF52 Series

This blog is to introduce the Bluetooth Low Energy with difference codec configuration on Nordic nRF52 SDK. Bluetooth 5.0 had introduced the long range (Codec Phy 125kbps, 500kbps) and high speed 2 Mbps (uncoded PHY). Here are the topics in this blog: Basic introduction on the difference Coded/Uncoded Phy on the Bluetooth 5.0 specificationHow to … Continue reading How to work with BLE Codec 1Mbps , 2Mbps and Codec PHY on nRF52 Series

Swift Pair on the Windows 10

This blog is to describe the Swift Pair on the Windows 10 particular it was introduced version 1803. I would like to collect all the information about this feature and how to enable on the Nordic SDK to support this. Most of the materials are referred to Microsoft documentation as below. https://docs.microsoft.com/en-us/windows-hardware/design/component-guidelines/bluetooth-swift-pair Swift Pair Introduced … Continue reading Swift Pair on the Windows 10

PDM Microphone on nRF5 Series

This blog is to describe how to add the PDM Microphone on Nordic nRF52 Series. The PDM is started to support on the nRF52832. The pulse density modulation (PDM) module enables input of pulse density modulated signals from external audio frontends, for example, digital microphones. The PDM module generates the PDM clock and supports single-channel … Continue reading PDM Microphone on nRF5 Series

USB Audio Class

This blog is to give some background knowledge on the USB Audio Class. I will try to collect some information from internet about the USB Audio Class 1 and USB Audio Class 2 and then give the description on this blog. Introduction Universal Serial Bus (USB) is a serial bus standard to interface devices. USB … Continue reading USB Audio Class

Enhanced ShockBurst ESB Protocol on nRF52 Series

This blog is to describe more about the proprietary radio protocol on the nRF52 series. On the Nordic nRF5 SDK, it has two difference protocols. Enhanced ShockBurst (ESB)Gazell In this blog, I would mainly focus on the ESB because it provides full source code instead of library. Also, it can do much more flexible to … Continue reading Enhanced ShockBurst ESB Protocol on nRF52 Series

Over the air upgrade through Nordic nrfUtil

This blog is to introduce how to use the nRFUtil for Over The Air upgrade (OTA) in between host and device. I would focus on the BLE OTA only. It uses the nRF52 DK to connect to PC / Linux / MacOS. And then the nRFUtil tool would be the OTA host application. nRFUtil The … Continue reading Over the air upgrade through Nordic nrfUtil

Logger System / Flash Log / Crash Log on Nordic nRF5 SDK

This blog is to describe how to use the logging system on the Nordic nRF5 SDK. I would cover how to do the print log through UART or RTT with difference debugging level. Also, I would introduce how to use the flash log or crash log to store the log inside the internal flash system. … Continue reading Logger System / Flash Log / Crash Log on Nordic nRF5 SDK

Advanced Pulse Width Modulation (PWM) on Nordic nRF52 Series

In this blog, I would like to describe more details how to use the PWM module on Nordic nRF52 Series MCU. Basically, nRF52 has started to support hardware PWM modules. If someone would like to generate some complicated duty cycle or waveform, it is better to know how to use the PWM module inside nRF52. … Continue reading Advanced Pulse Width Modulation (PWM) on Nordic nRF52 Series

Using External Flash to Store bonding info on nRF52 Series

This blog is to show how to use the external flash for storing the bonding information instead of using the internal flash. I would base on the Nordic SDK 16.0 and use the nRF52840 DK as the baseline to show how it works. By using the external flash for bonding storage, it can save at … Continue reading Using External Flash to Store bonding info on nRF52 Series