Skip navigation
> RoadTest Reviews

Bluetooth 5 Radio SoC EVM - Review

Scoring

Product Performed to Expectations: 9
Specifications were sufficient to design with: 7
Demo Software was of good quality: 5
Product was easy to use: 7
Support materials were available: 7
The price to performance ratio was good: 8
TotalScore: 43 / 60
  • RoadTest: Bluetooth 5 Radio SoC EVM
  • Buy Now
  • Evaluation Type: Development Boards & Tools
  • Was everything in the box required?: Yes
  • Comparable Products/Other parts you considered: 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

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

    {gallery} Unboxing and First Impressions

     

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

    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).

     

    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.

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

     

    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.

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

    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

     

     

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

    {gallery} My Gallery Title

     

    IMAGE TITLE: THEN IMAGE DESCRIPTION

     

    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:

     

    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

     

    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

    Scan Me! badge in action

    Front

    Back

    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.

    (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


      • 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

    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


Comments

Also Enrolling

Enrollment Closes: Jul 1 
Enroll
Enrollment Closes: Jul 12 
Enroll
Enrollment Closes: Jun 25 
Enroll
Enrollment Closes: Jul 1 
Enroll
Enrollment Closes: Jul 16 
Enroll
Enrollment Closes: Jun 17 
Enroll
Enrollment Closes: Jun 17 
Enroll
Enrollment Closes: Jun 17 
Enroll