Mohammad Afaneh of NovelBits shares his recommendations

One of the biggest challenges of learning any new technology is knowing which tools you need to get started. Whether you’re a mobile developer or firmware developer working on a Bluetooth® low energy product, there is a set of essential tools that you will need to develop your application in the most efficient way. In this blog post, I will provide a list of the five most essential tools for developing a Bluetooth low energy product and app.

    1. GATT Design Tools
      Bluetooth Developer Studio (BDS), a free tool released by the Bluetooth SIG in late 2015, is the most prominent tool that both mobile and firmware developers can use to design and debug their Bluetooth low energy applications. It’s also a great place to get started learning about Bluetooth low energy.

      A few of the main advantages of using this tool are:

      • 100% free to use
      • Design your GATT services and characteristics
      • Vendor-agnostic and provides automatic source code generation via the free vendor plugins
      • Physical device testing using a Bluetooth dongle

      BDS can be a very useful tool for getting more acquainted with the Bluetooth low energy protocol and GATT services.

    2. Client Emulator App
      This can either be a mobile app (iOS or Android), or a desktop application connected through a Bluetooth low energy dongle (or internal Bluetooth low energy chip). This tool is very helpful, especially when you don’t have a companion mobile app ready. It’s also very helpful for testing out new changes and during development. These apps allow you to scan for nearby advertising Bluetooth low energy devices, connect to one of these devices, discover their services and characteristics, and read from/write to the characteristic values as well.

      The best two examples are:

    3. Bluetooth Sniffer
      A Bluetooth sniffer is one of the most useful tools and one that any Bluetooth developer can’t do without. The difference between a Bluetooth sniffer and the Client emulator apps mentioned previously is that sniffers can “spy” on the communication between your central and peripheral devices. Whereas, the Client emulator is usually used to act as a central location to read, write, and subscribe to notifications/indications of characteristic values of the peripheral device, the sniffer acts in the background (usually without requiring you to modify any of your system’s behavior).

      Bluetooth® Sniffers come in two main varieties:

      • Simple and low-cost sniffers (think in the range of $50-$100) that are usually based on development kits.
      • More advanced, higher-cost sniffers (anywhere in the range of $4,000-$30,000).

      The low-cost sniffers usually have limitations, such as the lack of advanced features on the desktop end as well as not being able to scan the three advertising channels simultaneously.

      Using a Bluetooth low energy sniffer can help tremendously in debugging problems with the connection and data transfer between the peripheral and the central device.

      Examples of sniffers include:

      1. Power Measurement Tools
        The “low energy” in Bluetooth® low energy is there for a reason. Bluetooth low energy is selected for two main reasons: the proliferation of Bluetooth low energy in smartphones and the low energy consumption that comes with it (allowing you to design devices that can last for years on tiny batteries). However, low power consumption doesn’t come by default, and both the firmware and hardware designs play an important role in how good your device is at minimizing power consumption.

        There are different tools that can be used to measure the power consumption during development and testing to help you optimize for low power. The two most common tools are:

        • Digital Multimeter (DMM): useful for measuring average current draw and peak current (e.g. Fluke 287 TRMS Multimeter).
        • Oscilloscope: used to get more accurate measurements and finer tuning of your power consumption.

        Another tool for power measurement is the Nordic Power Profiler Kit which can be used with the nRF51 and nRF52 Development kits, but can also be used with your custom board via a header connector.

      2. Bluetooth Specification Document
        While this is not considered a tool per se, it is still the main reference document for every Bluetooth developer – mobile or embedded. When you run into issues or have questions about certain technical aspects of Bluetooth low energy, the specification document is the best document to refer to. Access to the released Bluetooth specification docs is completely free. However, if you’re interested in accessing pre-released versions of a spec (such as 0.9 revisions), to get a head start on cutting edge adopted specs, then you can access them after signing up to be a member (also free), at the adopter level. The latest Bluetooth® specification can be accessed here.

I hope you’ve found this list helpful, especially if you’re just starting out with Bluetooth low energy. Feel free to share any other tools I may have missed in the list by commenting below.


Enhancing Bluetooth Location Services with Direction Finding

A new Bluetooth direction finding feature allows devices to determine the direction of a Bluetooth signal, thereby enabling the development of Bluetooth proximity solutions that can understand device direction as well as Bluetooth positioning systems that can achieve down to centimeter-level location accuracy.


Is Remote IOP Testing Here To Stay?

Like many organizations around the world, the Bluetooth Special Interest Group (SIG) has made…

Bluetooth 5.2新機能のポイントを10分で解説!(日本語字幕)

この動画では2020年1月に発表されたBluetoothバージョン5.2新機能の概要を中心に話します。Enhanced Attributeプロトコル(EATT)、LE Power Control (LEPC)、Isochronous (アイソクロナス)チャネルなど、これらの各機能について詳しく説明します。最後に、アイソクロナスチャネルを利用した「LE Audio」と呼ばれる次世代のBluetoothオーディオについて日本語翻訳付きで解説します。

The Bluetooth Internet Gateway Study Guide

According to the ABI report Installed Base of IoT Devices by Connectivity Technology, published…

Top Bluetooth Developer Resources of 2020

Every year, the Bluetooth® developer community challenges the limits of wireless connectivity, and each…

Wireless Connectivity Options for IoT Applications

When it comes to wireless connectivity, not every technology is a good fit for…

Designing and Developing Bluetooth® Internet Gateways

Design and implement your own Bluetooth® Internet Gateway (BIG) working prototype and see for yourself how BIGs allow applications to exchange data with Bluetooth devices from anywhere in the world.

Wireless Connectivity Options for IoT Applications - Asset Tracking

If you recall from the previous article in this series, we covered the application…

How Bluetooth Technology Uses Adaptive Frequency Hopping to Overcome Packet Interference

Interference is one of the biggest challenges for any wireless technology in providing reliable…

A Technical Overview of LC3

An Introduction to LE Audio Over the past two decades, since its inception, Bluetooth®

An Introduction to Bluetooth Low Energy for Swift Developers

All smartphones support Bluetooth® Low Energy (LE) and it is used in all manner…

Building a Sensor-Driven Lighting Control System Based on Bluetooth® Mesh

A technical examination of which Bluetooth mesh models to use in different types of…

Bluetooth Security and Privacy Best Practices Guide

This guide is intended to help implementers better understand why certain available security and…

Advanced Bluetooth for Android Developers

Android developers can take this guided tour of the most recent features and interesting…

How to Deploy BlueZ on a Raspberry Pi Board as a Bluetooth Mesh Provisioner

This step-by-step study guide will teach you: How to rebuild the kernel on a…

The Bluetooth LE Security Study Guide

Learn about fundamental security concepts, the security features of Bluetooth Low Energy, and gain some hands-on experience using those features in device code.

Bluetooth Direction Finding: A Technical Overview

This comprehensive overview examines how two new Bluetooth direction finding methods can enable location services solutions that support high-accuracy.