Sort by » date activity comments

280 blog posts

by Rose Martin

6 Things to Know about Bluetooth Beacons

Smartphones and tablets have revolutionized the manner in which people communicate with each other. Mobile applications with location-based features like Bluetooth beacons, WiFi, and GPS are helping people stay connected from any location.

An increasing number of companies are using innovative methods like Bluetooth beacons to touch base with their customers and engage them by offering contextual and personalized services. The Allied Business Intelligence Inc. estimates that the overall Bluetooth beacon market will cross 500 million units by 2021 with a compounded annual growth rate of 113 percent. Beacons will continue to gain importance as they find new applications in...

by Kristian Skordal

Creating a Keil project for a Bluetooth Mesh example


The newly released nRF5 SDK for Bluetooth Mesh does not provide Keil project files for its example projects. Fortunately, it's relatively easy to set up your own project from scratch. This guide will show you how.

While the list of steps below might seem overwhelming, most of the settings used here, such as the linker settings and defines, can be copied from the Segger Embedded Studio project provided with the mesh SDK. The SES project can be used as a template for which files to include and which settings to use when creating Keil projects for other mesh...

by David Edwin

Get started on PC Software for Mesh and Mesh DFU

nRF-connect-Mesh PC tool allows the user to demonstrate the nRF OpenMesh and the Mesh Device Firmware Update (DFU). The Mesh DFU will be used for nRF OpenMesh and the Bluetooth Mesh when it is made available. The nRF OpenMesh used is v0.8.7. The tool will be updated to support the Bluetooth Mesh when it is available.

image description

DFU quick start guide in the nRF OpenMesh repo

Tools Required


Any one of the below x 2 or more, all of the same type is best during the evaluation

  • nRF51-DK
  • nRF51-Dongle
  • nRF52-DK
  • USB Wall Charger or USB battery pack (optional...
by schef

Using millis() like in Arduino.

Here are two simple functions to use when you want to use timestamps for time measurement.

uint32_t millis(void)
  return(app_timer_cnt_get() / 32.768);

and for comperison of current with given timestamp with rollover correction

uint32_t millisPassed(uint32_t localMillis)
  uint32_t currentMillis = millis();
  if(currentMillis < localMillis)
    uint32_t overflow = 0xffffffff - localMillis;
    localMillis += overflow;
    currentMillis += overflow;
  return(currentMillis - localMillis);
by Nguyen Hoan Hoang

Flashing nRF5x firmware using any dumb terminal program via standard serial COM port

There are times that we needed to flash the nRF5x series on a PC where the development software were not installed. The problem could be worst when network access is limited. With a HEX file on hand, it is now possible to flash the nRF5x device using regular dumb terminal software such as CoolTerm, Putty,... through the COM port. This is the new feature of the IDAP-Link, a CMSIS-DAP compatible debug jtag. This feature is called 'Console Mode'. Please note that programming the nRF5x is actually done using SWD. The COM port is only for user interface.

To active the...

by Yaniv Nis

How to Debug the nRF52 Interrupts — Useful Tips

Debugging interrupts in not an easy task. During the development of Jumper's Emulator, we gather few useful tips that we think can help you all when debugging the nRF52 interrupts. Hope it will help you all.



As we are working on making our emulator better and better, we'd love to get your feedback. If you like what we are doing and want to share with us your thoughts, use this Google Form.

by Mohammad Afaneh

The ultimate guide to maximizing your BLE and Bluetooth 5 data throughput

image description

In my 2nd blog post in the series on Bluetooth 5, I go over one of the main features of Bluetooth 5: 2x speed.

The advertised 2x speed of Bluetooth 5 is great! BUT, what does that even mean? Is it 2x "1 Mbps" = 2 Mbps? Is that even achievable in terms of your application data throughput? How do you optimize for maximum throughput? How does it affect power consumption?

There are at least a few variables that determine your application throughout. In this blog post, I put them all in one list, explain each of them, and then detail...

by Yaniv Nis

How to build a monitoring and analytics system for your IoT embedded devices almost for free

Embedded devices are no longer ship and forget products. Once deployed, a connected embedded device is updated and provide with services and not just functionality. This paradigm shift requires adopting DevOps practices and requires monitoring devices' operation to mitigate production issues. Once you monitor your entire distributed embedded system, you can run analytics for product improvements and predictive maintenance.

The link below outlines a cookbook for building monitoring and analytics system for connected embedded devices. We've included a working sample for nRF52 based devices that use BLE GATT and a GW. We used services that are open source, and...

by Hung Bui

Segger Embedded Studio - A Cross Platform IDE

Download and Setup

Note: It is recommended, but not necessary, to use the most recent releases of the above software.

Importing a Keil uVision project

  • Open SEGGER Embedded Studio 3.10e
  • Select Tools -> Package Manager... and install the CMSIS-CORE Support Package

image description

  • Select File -> Import IAR EWARM / Keil MDK Project...
  • Navigate to your local nRF5 SDK and in NRF5_SDK/examples/ble_peripheral/ble_app_beacon/ select pca10040/s132/arm5_no_packs/ble_app_beacon_pca10040_s132.uvprojx
  • The Import Build Configuration window will pop-up...
by Elecfreaks

Micro:bit Experiment 01: LED Scroller —— Elecfreaks Mirco: bit Starter Kit Course


LED has wide applications. We can see most signal lights we saw in our daily life use LED as its major illuminate component. In today’s experiment, we are going to use Micro:bit to make 2 LED beads twinkle alternatively.

Components List:


1 X Micro: bit Board

1 X Micro USB Cable

1 X Microbit Breadboard Adapter

1 X Transparent Breadboard – 83*55 mm


2 X 100 Ohm Resistors

1 X Breadborad Jumper Wire 65pcs pack

Tips: If you have bought Elecfreaks Micro: bit Starter kit, it will conclude all of the above...

by Mohammad Afaneh

Bluetooth 5 e-book (plus video tutorials, exercises, and source code)

Do you get sick of scouring the internet for Bluetooth 5 and BLE resources? Do you feel lost or get stuck during the development of your BLE project? Are you excited about Bluetooth 5 and its possibilities but don't know where to start? Do you experience pain when referring to the official spec and its daunting 2,800+ pages??!

You're not alone... I've been there and experienced every single one of those pains myself! Back in March 2016, I decided to start a blog about Bluetooth Low Energy. I wanted to provide a one-stop resource for others...

by Jun Qing ZOU

Trying OpenWRT Chaos Calmer (15.05 RC1) on Raspberry Pi 2

 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M

The original guide to install Barrier Breaker (14.04) on Pi and Pi2 could be found here

Install official CHAOS CALMER (15.05 RC1) for Raspberry Pi2

(1) Grab the image from OpenWRT

This image works for BCM2709/BCM2836, while R.Pi2 uses BCM2836. Use Win32DiskImager to write...

by Alexis Duque

Make your Bluetooth Low Energy IoT device more secure with Visible Light Communication

About IoT security

Since the Internet of Things is still in the emerging phase, ensuring security and privacy is an important issue that must be addressed and resolved now.

The number of IoT and connected objects grows exponentially, so their security exploits will have more and more repercussions, making them very attractive for the hackers. Recent news and the growing IoT track at security conferences such as Blackhat, or Defcon perfectly illustrates this phenomenon.

About Bluetooth

In regards to Bluetooth, the SIG greatly enhanced the BLE security releasing at the end of 2014 the Bluetooth Core Specification 4.2. This...

by dansheme

How We Found a Bug In Nordic’s SDK Using Jumper’s Emulator


We were trying to run the PPI example from the nRF5 SDK on our emulator. We quickly revealed a bug in the configuration of one of the timers by having a look at the HW log: image description

Check out our Medium blog for the full story.

Note: I could not find any way to submit a bug report to Nordic but I'm sure it will be fixed soon

by JustinLee

MultiLink with Peripherals & Centrals in the nRF5 SDK v13

Introducing concurrent MultiLinks

I’d like to inform that it is possible to configure concurrent-multiple connections with several Centrals and Peripherals.
This behavior can be possible to use examples in the nRF5 SDK v13.
In the nRF5 SDK v13, “multiperipheral” example has been come newly.

So, “multilink_central” and “multiperipheral” can be used together.

MultiLink examples in the nRF5 SDK v13

There are two multilink examples for Central and Peripheral which are located in the nRF5 SDK v13.

  • “nRF5_SDK_13.0.0_04a0bfd\examples\ble_central\ble_app_multilink_central”

image description

  • “nRF5_SDK_13.0.0_04a0bfd\examples\ble_peripheral\experimental_ble_app_multiperipheral”

image description

These solutions allow multi-connections from Peripherals as the Central Role and...

by jmag999

ble_app_hrs_freertos running in Atollic TrueSTUDIO

This post describes how you can get the ble_app_hrs_freertos example project running in Atollic TrueSTUDIO 8.0 on a pca10040 board. This is a managed make build, it does not rely on the makefile provided by Nordic. No Nordic source files are changed and it even uses the existing gcc linker files from Nordic.


1) Download and install Atollic 8.0

2) Download and unzip nRF_SDK_14.0.0_3bcc1f7.

3) Download the project zip file.

by Krzysztof Chruściński

New Command Line Interface and enhanced Logger - part 2.

If you haven't yet get to know command line interface (nrf_cli) module significantly improved in nRF5 SDK 14.0.0 please check this blog post: New command line interface - part 1

Enhanced logger and console

It seems like a natural fit to use the console as a way of presenting logs to the user, as well as configuring which logs should be printed, to avoid flooding the console with logs. There are other natural fits for the logger, like storing logs to non-volatile memory, so logger could not be tightly coupled with the console. On the other hand, it...

by gamnes

Walkthrough of Nordic Thingy:52 Node.js Raspberry Pi demos

Thingy:52 Node.js Raspberry Pi Interface

This blog post is a follow up to the Nordic Thingy:52 node.js/Raspberry Pi demos blog post, and will described how you can run and what to expect from each of the Node.js examples that have been provided in the GitHub repository. It will also described an additional example of how you can use the Node.js library to post a tweet based on sensor data.

If you are looking for a Python interface instead of Node.js, please have a look at the following blog post for some more...

by gamnes

Nordic Thingy:52 Raspberry Pi Python Interface

Thingy:52 Python Raspberry Pi Interface

This blog is a follow up to both the Nordic Thingy:52 node.js/Raspberry Pi demos and the blog posts. It will go through how you can set up and develop Python Thingy:52 applications on the Raspberry Pi.

Raspberry Pi Setup

Please follow the setup as explained in Node.js walkthrough to make sure the Raspberry Pi is setup as assumed for this blog post. We will be running the Raspbian operating system.

Running the Example

GitHub Clone

The Thingy:52 Raspberry Pi python implementation...

by Mahesh Venkitachalam

Driving WS2812B LEDs using I2S on the Nordic nRF52832

image description

In this article, I use the I2S peripheral of the Nordic nRF52832 to generate the waveforms required to drive the popular WS2812B RGB LEDs.

1 2 3 ... 14 »