Bluetooth 5 Radio SoC EVM - Review

Table of contents

RoadTest: Bluetooth 5 Radio SoC EVM

Author: Attila Tőkés

Creation date:

Evaluation Type: Development Boards & Tools

Did you receive all parts the manufacturer stated would be included in the package?: True

What other parts do you consider comparable to this product?: Nordic nRF52 series

What were the biggest problems encountered?: Finding the product page / documentation on www.onsemi.com

Detailed Review:

Hi Element14 Comunity,

 

Here is my RoadTest for the RSL10 Bluetooth 5 SoC:



Unboxing and First Impressions
image

Lets see what we got:
(please see the description from the gallery)

{gallery} Unboxing and First Impressions

 

image

Packaging: The RSL10 Evaluation Board comes in a cardboard box.

image

Packaging: Inside the box we get some plastic foam (not so eco friendly) and some instructions (+marketing). The instructions could be a little bit more complete, as the www.onsemi.com site does not really helps us to find the product page (more details later).

image

 

Packaging: Under the plastic foam top we got the main board and an USB cable.
The box is little bit over-sized in my opinion. Unless you have a lot o spare space It's not really suitable to store the board in it.

image

Packaging: the board comes in a anti-static bag, the USB cable in the plastic bag

image

 

First Impressions: The board seems to be pretty well build. The solder joints, except some of trough hole ping, looks good. The board comes with a nice green solder mask. The The USB cable is about 50 cm in length and seem to be OK in quality.

image

Main Board (top): on the of the board we find the RSL10 IC, a PCB antenna, some connections and jumpers

image

Main Board (bottom): on the bottom we have the battery holder and Atmel micro-controller for debugging

 

The board comes with some kind of demo application. After connecting the USB cable, the on-board LED starts blinking and the board shows up as a Bluetooth device on a scan. Unfortunately, I did found any information on what to do with this application...

 

About the RSL10

After the unboxing I took a look on the Product Page of the RSL10. The page describes the RSL10 as:

RSL10 is a Bluetooth 5 certified, multi-protocol radio System on Chip (SoC) which brings ultra-low-power Bluetooth Low Energy to wireless applications.

 

Offering the industry’s lowest power consumption, RSL10 helps provide devices like heart rate monitors with advanced wireless features while optimizing system size and battery life.

 

Unlike most other multi-protocol radio SoCs, RSL10 is specifically designed for applications using 1.2 and 1.5 V batteries, and supports a voltage supply range between 1.1 and 3.3 V without a required DC/DC converter. The highly-integrated radio SoC features a dual-core architecture and a 2.4 GHz transceiver, providing the flexibility to support Bluetooth Low Energy and 2.4 GHz proprietary or custom protocols.

with the following highlighted features:

  • Ultra-Low-Power:
    • Industry's lowest power consumption in Deep Sleep Mode (62.5 nW) and Rx in Receive Mode (7 mW)
    • Industry's best EEMBC® ULPMark™ scores (1090 ULPMark CP @ 3 V; 1260 @ 2.1 V)
  • Advanced Multi-Protocol Wireless Functionality:
    • Rx Sensitivity: - 94 dBM
    • Transmitting Power: -17 to +6 dBm
    • Supports Bluetooth Low Energy and 2.4 GHz proprietary/custom protocols
    • Supports Firmware Over The Air (FOTA)
  • Flexible Voltage Supply Range (1.1 and 3.3 V):
  • Supports devices using 1.2 and 1.5 V batteries without a required external DC/DC converter
  • Ultra-Miniature:
    • RSL10 is offered in a 5.50 mm2 WLCSP and a 6 x 6 mm QFN. For added miniaturization, the radio SoC is also available in a complete System-in-Package (SiP) solution.
  • Sophisticated Dual-Core Architecture:
    • Features a programmable Arm Cortex-M3 processor for clocking speeds up to 48 MHz and the flexibility to support 2.4 GHz proprietary and custom protocol stacks. An embedded Digital Signal Processor (DSP) enables signal processing intensive applications, such as wireless audio codecs.
  • On-Chip and Software Wireless Support:
    • Features a 2.4 GHz Radio Frequency Front-End (RFFE) and a Bluetooth 5 certified baseband controller which supports 2 Mbps data rates. A wide range of supported Bluetooth low energy protocols are provided in the RSL10 development tools kit.
  • Highly-Integrated System-on-Chip (SoC):
    • The powerful dual-core architecture is complemented by high-efficiency power management units, oscillators, flash, and RAM memories, a DMA controller, and peripherals and interfaces.
  • Other Key Technical Features:
    • 384 kB of flash memory
    • IP protection feature to secure flash contents
    • Configurable analog and digital sensor interfaces (GPIOs, LSADs, I2C, SPI, PCM)

Next, I wanted find the Evaluation board's product page. I had a little bit of headache with this, as the ON Semiconductors website does not seems to be too well organized. In the end, I found it after some googling. Unfortunately, the page does not contains too much useful information, so I decided to go with the the User Guide linked in the RoadTest's page. This provides some information about the board's features:

The Evaluation and Development Board enables developers to evaluate the performance and capabilities of the RSL10 radio SoC in addition to developing, demonstrating and debugging applications.

 

Key features of the board include:

• J−Link onboard solution provides a SWJ−DP (serial-wire and/or JTAG) interface that enables you to debug the board via a USB connection with the PC

• Alternate onboard SWJ−DP (serial-wire and/or JTAG) interface for Arm® Cortex®−M3 processor debugging

• Access to all RSL10 peripherals via standard 0.1″ headers

• Onboard 4-bit level translator to translate the LPDSP32 debug interface at low voltage to a 3.3 V JTAG debugger

• Antenna matching and filtering network

• Integrated PCB antenna

 

In addition, the QFN board provides:

• Compliance with the Arduino form factor

• Support for PMOD (i.e., J4 is a standard connector)

 

The User Guide also contains circuit diagrams and instructions for the power options, debugging interfaces and other features of the board.

 

Comparison with the Nordic nRF52 series

 

Next, I wanted to take a closer look at the specs. To have some reference for comparison, I also compared the specs with an another Bluetooth 5 SoC-s, the nRF52 series.

 

In the maker community the most popular SoC for BLE applications is probably is the Nordic nRF51 / nRF52 series. They are cheap, has good software support and the nRF52 series also support Bluetooth 5 features.

 

Here is comparisons between the RSL10 and nRF52 series, based on a (not necessary representative) set of features extracted from the datasheets:

 

RSL10nRF52832nRF52840nRF52810/11
Price

10+ pcs price tier, Farnell

€ 6,12€ 4,06€ 5,96€ 2,75
Core
Processors

ARM® Cortex®-M3 @48 Mhz

(159 EEMBC CoreMark®)

 

LSDSP32 - audio processing
(133 EEMBC CoreMark)

 

Baseband controller

 

ARM® Cortex®-M4 @ 64Mhz with FPU

(215 EEMBC CoreMark®)

 

ARM® Cortex®-M4 @ 64Mhz with FPU

(215 EEMBC CoreMark®)

 

ARM® Cortex®-M4 @ 64Mhz no FPU

SRAM

76 kB program + 88 kB data64 / 32 kB256 kB24 kB

Flash memory

384 kB512 / 256 kB1 MB192 kB
Radio

Protocols

Bluetooth 5
IEEE 802.15.4 (Thread, ZigBee)
Bluetooth 5Bluetooth 5
IEEE 802.15.4 (Thread, ZigBee)
Bluetooth 5
Bluetooth 5 features

2 Mbps

CSA #2

Advertising Extensions

Long Range

2 Mbps

CSA #2

Advertising Extensions

2 Mbps

CSA #2

Advertising Extensions

Long Range

2 Mbps

CSA #2

Advertising Extensions (*)

Long Range (*)

(* - planned for the nRF52811)

RX sensitivity

-94 dBm-96dBm-95dBm-96 dBm

Data rate

62.5 to 2 Mbps

1 Mbps, 2 Mbps

125 kbs, 500kbs, 1M, 2M

1 Mbps, 2 Mbps

TX power

-17 to +6 dBm

-20 to +4 dBm

-20 to 8 dBm

-20 to +4 dBm

I / O

16 x GPIO32 x GPIO48 x GPIO32 / 16 x GPIO

 

I2C

UART

2 x SPI

PCM

2 x PWM

 

3 x SPI

3 x 4ch PWM

2 x I2C

I²S

USB 2.0

 

4 x SPI master/slave,

2 x TWI master/slave

2 x UART,

4 x PWM

QPSI

I²S

QDEC

 

 

SPI master/slave

TWI master/slave

UART

PWM

QDEC

PDM

2 x digital microphone interface (DMIC)Digital microphone interface (PDM)Digital microphone interface (PDM)Digital microphone interface (PDM)

 

output driver (OD)  - what's this for?NFC-A tag emulationNFC-A tag emulation-
Power

Supply voltage

1.1 – 3.3V1.7V – 3.6V1.7V – 5.5V1.7V – 3.6V

Current Consumption

deep sleep (IO Wake)

25nA @ 3V

50nA @ 1.25V

300 nA @ 3V400nA @ 3V300 nA @ 3V

deep sleep (RAM retention)

100nA @ 3V + 8kB

300nA @ 1.25V  + 8kB

700 nA @ 3V + 64 kB1.86 µA @ 3V + full RAM

 

peak RX current

3mA @ 3V + 1mpbs
3.4mA @ 2mbps

5.6mA @1.25

5.4mA @ 3V4.6 mA @ 3V, 1Mbps
5.2 mA @ 3V, 2 Mbps

peak TX current @ 0 dBm

4.6mA @ 3V

8.9mA @1.25V

5.3mA @ 3V4.8 mA @ 3V4.8 mA @ 3V

RSSI ressolution

2.4 dB1 dB1 dB1 dB

Packaging

QFN48, WLCSP51QFN48, WLCSPaQFN73, WLCSP93QFN32, QFN48, WLCSP93

 

The RSL10 has a wide supply voltage range that allows running from 1.2 / 1.5 V batteries. On the other hand the nRF52 seems to be designed to work with 3V lithium based batteries.

 

Compared to nRF52-s, in deep sleep modes the RSL10 datasheet claims to have about 5-10x lower power consumption. But, for both SoC the power consumption is low enough to run for years from coin cell batteries.

In active modes the RSL10's advantage would be about ~50% on RX and ~15% on TX peak loads.

 

In processing power, the nRF52 in theory is better than the RSL10 (if we not count the DSP). In terms of SRAM the RSL10 with its 76+88 kB, places between the nRF52832 (64kB) and nRF52840 (256kB).

 

In terms of the GPIO-s the RSL10 with its 16 GPIO pins is a little bit low, considering that uses a 48 (/51) pin package. On the other hand the nRF52810 / nRF52832 has 32 available GPIO pins on the same QFN48 package. Both the RSL10 and the nRF52 have support for the standard digital communication interfaces (I2C, SPI, etc.).

 

As extra features the nRF52832 comes with NFC-A tag emulation, and the nRF52840 has an USB 2.0 interface along this.

 

The RSL10 with its € 6,12 is the most expensive. At about the same price, € 5,96 comes the nRF52840 with significantly more features (USB, NFC, most RAM + GPIO-s). The nRF52832 (€ 4,06) and nRF5281x (€ 2,75) are considerably cheaper, but have less features.


Development Environment

 

This turned out to be the harder then, I though:

  • after some time, I found the the document list page linked by shabaz's in its comment

 

To program the board first we need to install the RSL10 SDK. As the SDK download on www.onsemi.com is only Windows, I started with this. The installation process was pretty straight forward:

 

{gallery} Installing RSL10 Dev Tools on Windows

image

image

image

image

image

image

 

 

The next step would be to import one of the example project, like the blinky example:

{gallery} My Gallery Title

image

 

IMAGE TITLE: THEN IMAGE DESCRIPTION

 

image

IMAGE TITLE: THEN IMAGE DESCRIPTION


The project was successfully built, so I tried to Debug it with SEGGER J-Link.

 

Note: the board comes with an example that puts the RSL10 in Sleep Mode. This causes the on-board J-LInk debugger not to work. The overcome this issue connect DIO12 to GND, and reset the board. This will tell the example application not to put the device in sleep mode.

 

Unfortunately, under Windows I encountered problems with connecting J-Link Debugger to the board. The Windows was running in a VirtualBox VM, but the USB device was successfully detected. I think the culprit may be the SEGGER J-Link driver...

 

At this point I decided to move to Linux, the OS I normally use. Also, I knew that on Linux I have a working SEGGER J-Link setup.

The IDE is just an Eclipse IDE for C/C++ Developers with some additional plugins:

image

 

To move the installation to Linux:

  • I copied the C:\Program Files (x86)\ON Semiconductor folder to the Linux file system
  • launched Eclipse IDE for C/C++ in a new workspace
  • imported the blinky example as before
    • after I changing some paths in the Project Properties, the project successfully compiles
  • here I was able to Debug the program using the SEGGER J-Link

 

{gallery} My Gallery Title

image

image

image

image

image

image

image

image

image

 

As it worked, I decided to move on to some more interesting stuff.

 

Bluetooth 5 Features and Examples

 

Bluetooth 5: New Features

 

The Bluetooth 5 (LE) adds the following new features over the Bluetooth 4.2 (LE):

  • Higher Data Rate - 2 Mbps, vs. 1 Mbps with Bluetooth 4.2
  • Long Range Mode - two new data rates 500 kbps and 125 kbps, with double (120 m) and four times (240 m) the range at same output power
  • Improved Broadcast Capability - 8 x data length advertising packages
  • Improved Channel Selection Algorithm (CSA #2) - provides better channel coordination and coexistence
  • Audio over Bluetooth Low Energy

the nRF52 Device: Scan Me! badge


To test the Bluetooth 5 features and to do the comparison between the nRF52 and the RSL10, I wanted to use a badge I made a couple of moths ago:

Scan Me! - Wire / Contactless Badge

 

 

{gallery} Scan Me! badge

image

Scan Me! badge in action

image

Front

image

Back

image

Schematics

 

 

The badge is based on the nRF52832 SoC, and uses the NFC tag emulation and DC/DC converter features of the SoC.

 

For the sake of the test, the OLED screen was temporary removed. This way it will not affect the current consumption measurements.

 

On the software side I used Arduino with the arduino-nRF5 core and the arduino-BLEPeripheral library.


More information about the badge can be found on its Hackster.io project page.

 

Bluetooth 5 Examples

 

The RSL10 SDK comes with a list of examples. Looking at the readme files, there are 2 examples which claims to use Bluetooth 5 features:

  • peripheral_server_uart
  • central_client_uart

According to the readme both will try to use 2 Mb/s data rate, if the connected device supports it.

 

The peripheral_server_uart application is running on the RSL10 and implements the Battery GATT Service. The application also implements a custom UART GATT service.

image

(BLE Scanner app screenshot showing the GATT services)

 

The central_client_uart app is could be run on a second RSL10 and would interact with peripheral_server_uart application.

 

As, I don't have a second RSL10, I thought to implement a simplified version of the central_client_uart app on the nRF52.

(Unfortunately, I did not had the time to do this yet...)

 

Current Consumption Experiments


For battery powered applications the current / power consumption is critical, as it directly affects the battery life.

 

To compare the RSL10 with the nRF52, I though to measure their current consumption in different scenarios.

 

I also tried out multiple supply voltages to see how it affects the current / power consumption.

 

Measuring Current Consumption of the RSL10

 

The user guide recommends measuring current using the dedicated Current Measurement Header from the board.

 

The process would be something like:

  • remove the SWD jumpers, to avoid powering the RSL10 from the SWD pins
  • measure the consumed current using a multimeter

 

But there is problem with this approach:

  • using the dedicated header we can only measure the current consumption on the VBAT pin of the IC
  • but there is an another pin, VDDO on which the IC receives power (for the I/O stuff)
  • so, to measure the full current consumption of the IC we are kind of forced to do "hacks"
    • my first idea was to use the external power header


      image
    • an another idea (in order to reduce track/wire lengths) would be to power the RSL10 directly, (miss)using the VDDO Select and Current Measurement Headers
      image

In the end, I went with the 1st approach as it was easier to implement from the cabling point of view.

 

Measuring Current Consumption of the nRF52832

 

The current measurement of the nRF52832 is much simpler. With the OLED screen removed from the badge. there are no other devices that could consume additional current.

 

The current consumption of the device was measured by connecting the multi-meter in the supply chain.

 

Results

Here are the current measurement for some uses I managed to test:

 

Use CaseRSL 10nRF52832
Deep Sleep with RAM retention

0.4 - 0.5μA @ 3.3V

0.4 - 0.5μA @ 2.0V

0.3 - 0.5μA @ 1.3V

 

(sleep_RAM_retention)

 

0.6μA @ 3.3V

0.5 - 0.6μA @ 2.2V

while (true);

0.64 mA @ 3.3V

0.62 mA @ 2.0V

0.61 mA @ 1.3V

(sleep_RAM_retention with DIO2 connected to GND)

4.7 mA @ 3.3V

5.52 mA @ 2.0V

BLE, waiting for connection, 0 dBm

without DC-DC converter:

10.52 mA @ 3.3V

1.15 mA @ 2.0V

0.92 mA @ 1.3V

 

(peripheral_server_uart)

 

with DC-DC converter:

0.29 mA @ 3.3V

0.44 mA @ 2.0V

0.65 mA @ 1.3V

 

(peripheral_server_sleep)

with DC-DC converter:

 

5.53 @ 3.3V

4.75 @ 2.0V

5.54 @1.7V

BLE, connected, 0 dBm

10.33 mA @ 3.3V

0.89 mA @ 2.0V

0.65 mA @ 1.3V

 

(peripheral_server_uart app)

 

with DC-DC converter:

0.23 mA @ 3.3V

0.34 mA @ 2.0V

0.52 mA @ 1.3V

with DC-DC converter:

 

5.47 @ 3.3V

4.86 @ 2.0V

5.62 @ 1.7V

BLE, continuous TX, 0 dBm

(TODO: need to find a app to simulate this)

(TODO)

BLE, continuous RX

(TODO: need to find a app to simulate this)

(TODO)

 

Note: The multimeter used (a Vici VC99) has a resolution of 0.1 μA (100 nA) in the μA measurement mode. I'm not sure about the precision...

 

Conclusions


The main selling point of the RSL10 seems to be the low current consumption and wide supply voltage range that it allows running from 1.2 / 1.5 V batteries. The power consumption in real-word applications (sleep + active modes) it really depends from the use case, but if want to get the best possible run-time with a given battery the RSL may have an advantage over the nRF52-s.

 

On the features side, the nRF52 stays better with more GPIO pins, peripheral interfaces, NFC tag emulation and USB. Also, depending on the model the nRF52 is usually cheaper than the RSL10.

 

Resources

Anonymous