Skip to main content

Better user interfaces using Bluetooth low energy

Bluetooth low energy


Many different industries and application areas make use of standalone devices. These are devices that without need for interactions are used to control local equipment. A good example is a heating control system hidden in the basement of a building, quietly doing its work without any need for interaction with the device. There are many similar devices in other areas as well, e.g. local medical devices, distributed pump controllers, and other control systems not connected to a network. There are many such devices out there, and this will still be the case even in the connected world of the Internet of Things.

Typically, these types of devices are constrained in cost, and as the systems seldom require interaction, a user interface is one of the areas for saving cost. Such devices typically have only a few buttons and a single line text display.

But during commissioning and maintenance of the device, the installer or the maintenance technician needs to interact with the system using a cumbersome user interface. He will also need to rely on a thick manual to know how to interact with the device and to understand strange numeric codes to identify the parameters the system needs to operate.

Use Bluetooth low energy to "solve" this!
Why not replace the buttons and single line display with a Bluetooth low energy connection? True, this is not a new use case, but I strongly believe that there are many more types of devices where this can be used than what we see today.

Bluetooth low energy was introduced as part of the Bluetooth standard when Bluetooth 4.0 was introduced and is a light‑weight radio technology that fits this use case well. The basic concept of reading and writing attributes that was introduced in Bluetooth low energy (called GATT, Generic Attribute Profile) suits this scenario very well. Configuration parameters and status indications can be represented as GATT attributes. Another possibility is to use a serial abstraction over Bluetooth low energy that many of the chip and module manufactures have in their offering. A simple protocol might be implemented on top of the serial abstraction to transfer configuration parameters and status information.

The enabler for a better user interface is of course the fact that Bluetooth low energy is supported in all standard phones, tablets and laptops in the market. All installers and service technicians have a user interface in their pockets. The device manufacturer needs to develop a phone/tablet app for their devices, which today is a rather straight‑forward task and not too expensive.

Bluetooth low energy

Benefits of using a Bluetooth low energy app as machine GUI
The basic benefit is of course that you have a full graphical user interface with many interaction possibilities using multi‑touch technologies. You may present historical data in graphs, represent the data from the device in a user‑friendly format and support multiple languages. Another option is to have multiple user interfaces, e.g. one interface for the installer and another for the maintenance technician.

As the phone or tablet normally is connected to the Internet, the installer/maintenance technician can always be up‑to‑date with the latest app changes. The Internet connection may be used to extend the user interface, e.g. by supplying the latest maintenance instructions online. The app can support an over‑the‑air firmware update (FOTA) of the device.

When the phone/tablet is connected, locally stored information can be uploaded to be used later for central analysis (e.g. for central evaluation used for preventive maintenance or to collect information for future product improvements). The same concept can be used to provide a connection between back‑office experts and the service technicians they assist.

Another benefit is that the device can be completely "head‑less". Adding buttons, displays and connectors is always a costly challenge for the devices operating in a tough environment. Adding a Bluetooth low energy connection through a chip or a module can be a lower cost solution, as it replaces expensive mechanical design and components for harsh environments.

Implementation of the Bluetooth low energy connection can be done by integrating a Bluetooth low energy chip or module into the device. Module integration can be an easy task, because the module is typically delivered as fully Bluetooth qualified with type approved components, thus relieving the device manufacturer from needing to have his own radio and Bluetooth low energy expertise.


The picture shows one example of a Bluetooth low energy module. The u‑blox NINA‑B1 is available with an antenna pin or an internal antenna. The antenna pin variant might be useful if there are mechanical issues that require the antenna to be placed elsewhere than the module (e.g. a full metallic housing).

The module/chip is typically connected to the device micro‑controller (MCU) through a serial interface (e.g. a UART interface), although there are other possibilities e.g. SPI, I2C or PIO interfaces.

The NINA‑B1 module supports different software interfaces to the device MCU. The u‑blox Serial Port Service (SPS) is a serial connection abstraction operating over the UART. Another possibility is to use the GATT Server functionality over the UART. This enables the device MCU to setup its own GATT attributes to be read/written over the Bluetooth low energy connection and updated from and notified to the device MCU. NINA‑B1 also provides support for the customers to write their own custom application code inside the NINA‑B1, e.g. using the ARM mbed development tools.

One "issue" often discussed with Bluetooth is the pairing association between the phone/tablet and a device. In the use case of controller devices, there will be many first time users needing to access a device securely, e.g. a service technician attending to a device for the first time. It is possible for the device to be discoverable all the time and the app may support a mode to search for the device. If there is only one device visible this might be a good enough option, but even better is to use Near Field Communication (NFC) to do association/pairing with the device. Bluetooth low energy supports a pairing method called Out‑Of‑Band pairing (OOB) to enable this. Move your phone close to the device ("touch" the device) and when you are close enough, an automatic secure pairing is accomplished. The u‑blox NINA‑B1 module supports NFC OOB pairing.