Silicon ChipRNBD451 Bluetooth LE Module - May 2025 SILICON CHIP
  1. Outer Front Cover
  2. Contents
  3. Publisher's Letter: Using WinCompose for typing special symbols
  4. Feature: Digital Scent and Taste by Dr David Maddison, VK3DSM
  5. Project: Versatile Battery Checker by Tim Blythman
  6. Feature: Electronex 2025 by Noel Grey (AEE)
  7. Project: Tool Safety Timer by Phil Prosser
  8. Project: RGB LED Analog Clock by Nicholas Vinen
  9. PartShop
  10. Project: USB Power Adaptor by Nicholas Vinen
  11. PartShop
  12. Review: RNBD451 Bluetooth LE Module by Tim Blythman
  13. Feature: Precision Electronics, Part 7: ADCs by Andrew Levido
  14. Subscriptions
  15. Serviceman's Log by Various
  16. Vintage Radio: Emerson 888 mini-mantel set by Ian Batty
  17. Market Centre
  18. Advertising Index
  19. Notes & Errata: Pico/2/Computer, April 2025; Surf Sound Simulator, November 2024
  20. Outer Back Cover

This is only a preview of the May 2025 issue of Silicon Chip.

You can view 54 of the 112 pages in the full issue, including the advertisments.

For full access, purchase the issue for $10.00 or subscribe for access to the latest issues.

Items relevant to "Versatile Battery Checker":
  • Versatile Battery Checker PCB [11104251] (AUD $5.00)
  • PIC16F18146-I/SO programmed for the Versatile Battery Checker [1110425A.HEX] (Programmed Microcontroller, AUD $10.00)
  • 1.3-inch blue OLED with 4-pin I²C interface (Component, AUD $15.00)
  • 1.3-inch white OLED with 4-pin I²C interface (Component, AUD $15.00)
  • Versatile Battery Checker kit (Component, AUD $65.00)
  • Versatile Battery Checker front panel [11104252] (PCB, AUD $7.50)
  • Versatile Battery Checker firmware (Software, Free)
  • Versatile Battery Checker PCB pattern (PDF download) [11104251] (Free)
  • Versatile Battery Checker panel drilling diagram (Panel Artwork, Free)
Items relevant to "Tool Safety Timer":
  • Tool Safety Timer PCB [10104251] (AUD $5.00)
  • PIC16F15214-I/P programmed for the Tool Safety Timer [1010425A.HEX] (Programmed Microcontroller, AUD $10.00)
  • Tool Safety Timer firmware (Software, Free)
  • Tool Safety Timer PCB pattern (PDF download) [10104251] (Free)
  • Tool Safety Timer panel artwork & drilling diagrams (Free)
Items relevant to "RGB LED Analog Clock":
  • RGB LED 'Analog' Clock PCB (19101251) (AUD $15.00)
  • PIC16F18146-I/SO programmed for the RGB LED 'Analog' Clock [1910125A.HEX] (Programmed Microcontroller, AUD $10.00)
  • BZ-121 miniature GNSS receiver (Component, AUD $30.00)
  • RGB LED 'Analog' Clock kit (Component, AUD $65.00)
  • RGB LED 'Analog' Clock firmware (Software, Free)
  • RGB LED 'Analog' Clock PCB pattern (PDF download) (19101251) (Free)
Items relevant to "USB Power Adaptor":
  • USB Power Adaptor PCB [18101251] (AUD $2.50)
  • USB Power Adaptor kit (Component, AUD $10.00)
  • USB Power Adaptor PCB pattern (PDF download) [18101251] (Free)
Articles in this series:
  • Precision Electronics, Part 1 (November 2024)
  • Precision Electronics, Part 2 (December 2024)
  • Precision Electronics, part one (January 2025)
  • Precision Electronics, Part 3 (January 2025)
  • Precision Electronics, part two (February 2025)
  • Precision Electronics, Part 4 (February 2025)
  • Precision Electronics, Part 5 (March 2025)
  • Precision Electronics, part three (March 2025)
  • Precision Electronics, part four (April 2025)
  • Precision Electronics, Part 6 (April 2025)
  • Precision Electronics, Part 7: ADCs (May 2025)
  • Precision Electronics, part five (May 2025)
  • Precision Electronics, part six (June 2025)

Purchase a printed copy of this issue for $13.00.

Microchip’s RNBD451 Bluetooth Module and EV25F14A Evaluation Board There are a few different ways to connect to your device via Bluetooth, including the wellknown HC-05 and HC-06 modules. Microchip’s RNBD451 Bluetooth module is another option that offers many more features. Review by Tim Blythman B luetooth technology has been around for about 20 years and is incorporated into many modern devices. It uses the 2.4GHz ISM (industrial, scientific and medical) license-free radio band and is well suited to use over short distances; up to 10m is the typical range. ‘Classic Bluetooth’ supports several ‘profiles’ that encapsulate the needs of a specific interface. For example, the handset profile (HSP) allows an external Bluetooth headset to communicate via the voice channel of a mobile phone, while the serial port profile (SPP) provides a serial link. Hobbyists have had access to Bluetooth modules for a while now. One of the better-known implementations of the serial port profile is the HC-05 module, based on a Cambridge Silicon Radio chip loaded with a custom firmware. That allows these modules to behave as a UART (universal asynchronous receiver/transmitter) bridge. They have an AT-command interface so they can be configured over the serial port, The RNBD451 module is a small PCB (shown adjacent at actual size) with a metal shield covering just about everything except a PCB trace antenna. Connections are made via pads on the underside of the board. The WBZ451 marking indicates the part on which this module is based. 82 Silicon Chip allowing custom device names, baud rates and security settings. The RNBD451 Bluetooth module is similar in that it can emulate a serial port, but it has quite a few other features too. In particular, it uses lowpower BLE (Bluetooth Low Energy) technology. RNBD451 Bluetooth module The RNBD451 is a compact module at 15.5 × 20.7mm. It is in the form of a PCB with trace antenna and a metal can housing the RF components. Connections are made via SMT pads on the underside of the module. It is currently available for just over $10, so it is on par with prices for similar modules. It is based on Microchip’s PIC32CX-BZ2 BLE SoC (Bluetooth Low Energy System on a Chip), a 32-bit ARM processor with an integrated 2.4GHz RF transceiver. Like the HC-05 modules, the processor has integrated flash memory that is loaded with a program to provide its features. Fig.1 shows the block diagram of the RNBD451 module. Although not supported in this module, the PIC32CX-BZ2 SoC can also work with other protocols that operate in the 2.4GHz ISM radio band, like Zigbee and Thread. Unlike the sparse and sometimes inaccurate documentation that exists for the HC-05 modules, the RNBD451 has a 200-page user guide fully describing its many features, which easily surpass those of the HC-05. We initially took an interest in the RNBD451 as a replacement for HC-05 modules. In most cases, they are permanently connected to a microcontroller and translate a logic-level UART serial data link wirelessly using Bluetooth. The Bluetooth link replaces a hard-wired connection, turning a wired connection into a wireless one. An example of this is the “Micromite to a Smartphone via Bluetooth” project (September 2021; siliconchip. au/Article/15031). It explains how the HC-05 can allow a Micromite to communicate with a mobile device. You can use such a wireless link to program the Micromite, send Fig.1: as well as a 32-bit ARM processor, the RNBD451 has power, oscillator and RF blocks, among others. The power stage at upper left can be switched between a buck (step-down) or LDO (linear) regulator by sending the appropriate command. Australia's electronics magazine siliconchip.com.au commands to it, receive data from it, or even modify the program in place using the Micromite’s fullscreen editor. In this article, we will similarly explain what is involved in configuring the RNBD451 modules to work with devices that expect a serial connection. It’s also possible to pair two RNBD451 modules to completely replace a wired serial link with a wireless Bluetooth link. Fig.2 shows a few of these scenarios. We’ll also cover some of the numerous options and settings that the module offers, plus some other Bluetooth features. As the RNBD451 modules use the newer BLE (Bluetooth Low Energy) standards, they should use less power to achieve similar range. BLE does not support the traditional serial port profile, so this device will not necessarily be a drop-in replacement for the HC-05 or other SPP devices. Instead, like many BLE devices, it uses the so-called Generic ATTribute profile (GATT) to pass serial data. Three GATT ‘characteristics’ are provided, each of which has an associated 128-bit UUID (universally unique identifier). The three GATT characteristics provide a serial transmit channel, a serial receive channel and a control channel. Each characteristic can only pass 20 bytes at a time, so the data is effectively sent in 20-byte packets. Other devices communicating with the RNBD451 modules must conform to the specific service characteristics that it provides. A second RNBD451 is one of the ways to achieve that. Interestingly, the so-called HM-10 serial Bluetooth modules use much the same scheme, although they use different services and characteristics. That explains why they are less widely used than the HC-05 modules; they do not support the classic Bluetooth serial port profile that the HC-05 does. App support Programs on other devices can also interoperate with the RNBD451’s service characteristics. Microchip provides the Microchip Bluetooth Data app for Android and iOS, which has a serial terminal program for communicating with the RNBD451 modules. This app can also be used to test various BLE features as well as perform firmware updates on modules. OTA (over the air) updates for the module are sent via the Bluetooth link. siliconchip.com.au Fig.2: Bluetooth allows wireless communication in several different scenarios. Using a Bluetooth serial device like the RNBD451 module adds the possibility of using Bluetooth with a device that might not be natively equipped. We were also able to use the Serial Bluetooth Terminal Android app (by Kai Morich) to communicate with the RNBD451 modules. This is an app we previously used with HC-05 modules. Like the Microchip app, it identifies that the connected BLE device provides the specific service characteristics and communicates through them. EV25F14A Evaluation Board The EV25F14A Evaluation Board contains an RNBD451 module plus some extra circuitry to allow you to easily test it out and communicate with it. It is also described as an RNBD451 Add-on Board. There is an MCP1727 LDO (low dropout) regulator for 3.3V and an MCP2200 USB-serial chip to connect to the serial interface. The MCP2200 thus provides a virtual serial port at the operating system level (eg, a COM port on Windows or /TTY device on Linux) so it can be accessed by a serial terminal emulator, like TeraTerm, the Arduino IDE serial monitor or the MMEdit console. There are some onboard indicator LEDs and a few breakout headers, including a ‘mikroBUS Click’ header. The Click header provides two 8-pin 2.54mm pitch headers, suitable for plugging into a breadboard or matching socket header on a project PCB. While the Click standard can work with SPI and I2C, the Click header on the EV25F14A only breaks out power, the serial bus (including flow control lines) and some digital status & control Australia's electronics magazine The EV25F14A Evaluation Board (shown at twice actual size) contains an RNBD451 module and a USB-serial adaptor to allow the module’s features to be easily tested from a computer. A 16-pin ‘Click’ header can plug into a breadboard or PCB, while the jumper shunt selects the power source (from the Click header or USB power regulated down to 3.3V). May 2025  83 pins. All logic levels are 3.3V and its pinout (from above) is shown in Fig.3. Testing Fig.3: the ‘Click’ header on the EV25F14A Evaluation Board follows a standard layout, allowing Click modules and boards to easily interoperate. Other Click boards include SPI or I2C on the pins that the EV25F14A uses for serial ancillary functions. The header could be used to connect this board to another PCB, while the wiring here shows how it could be connected to another serial device. The underside of the EV25F14A Evaluation Board (shown at twice actual size). 84 Silicon Chip Using the USB-serial converter built in to the EV25F14A allowed us to easily check the operation of the RNBD451 module in a serial terminal program. We used TeraTerm under Windows, but any program that can connect to a virtual USB-serial port should work. The default settings for the serial port are 115,200 baud, eight bits, no parity and one stop bit; in TeraTerm we just needed to change the baud rate. The commands expect CR (carriage return) only as their line ending. The RNBD451 uses a scheme similar to the old Hayes-compatible dial-up modems to switch between data and command mode. In command mode, the serial data is treated as commands, while in data mode, the serial data is passed to the remote device. The string ‘$$$’ switches to command mode. The commands are similar to those of the Hayes modems, being a short sequence followed by parameters separated by commas if they are needed, although the RNBD451 command set has different needs to that of a modem. The sequence shown in Screen 1 was sufficient to pair with a second EV25F14A on another serial port. The yellow text is entered into the terminal window, while the white text is produced by the EV25F14A. Entering the sequences “$$$” followed by “D<CR>” switches the module to command mode and shows the six lines of local status information. The command “SR,0001<CR>” enables the Bluetooth status LED on the EV25F14A; the AOK response is the typical for successful command execution. Many ‘set’ commands, like “SR<CR>” have a corresponding ‘get’ command with a ‘G’ prefix; “GR<CR>” will report back the results of using the “SR<CR>” command. This command requires a reboot to take effect, so “R,1<CR>” is entered, followed by another “$$$” to re-enter command mode after the reboot. The command “C,0,9C956E4426C4<CR>” connects to the device with that specific hardware address. You could find the hardware address by running the “D<CR>” command Australia's electronics magazine on the remote device or running the scan command, “F<CR>”, locally. Both terminals then show a flurry of activity, with responses bracketed by % characters. With the %STREAM_OPEN% response, the EV25F14A reverts to data mode. You would not know that, except by seeing that data is sent to the remote device instead of being taken as a command. Another “$$$”, followed by “B<CR>”, bonds to the remote device. You can see the remote device’s actions in the lower terminal window. The command to exit command mode is “---<CR>” (three dashes). At this stage, the two modules are paired and will behave as a transparent serial link. With the intended role of the RNBD451 module being to connect with a microcontroller, such a microcontroller would have to send these commands, plus perhaps a few more, to the module in order to control it. Fewer commands would be required if the modules were permanently paired to a single device. There are also commands to manually connect and disconnect from remote devices. They could be handy if you are using one device to communicate with several others. Up to eight devices can be paired, but only one can be connected at a time. There are also modes to modify the security and visibility of the modules; they might need to be appropriately set to ensure that unauthorised access is not possible. There are commands to change the command and data delimiters (eg, ‘$’, ‘-’ and ‘%’) so that they don’t conflict with any data format you might be using. Many more commands exist; the complete reference is available online at siliconchip.au/link/ac07 The delimiters can also be cleared, which means that many of the status strings will be disabled. That may be preferable for simple applications. The SR options command can also configure one of the I/O pins to be used to switch between command data modes. Another option for setting up multiple devices is the remote control mode, which allows remote commands to be sent over the Bluetooth link between two RNBD451 modules. Like the HC-05 modules, there are commands to change the baud rate, serial data format, device name, PIN siliconchip.com.au Screen 1: with two EV25F14A Evaluation Boards connected to serial terminals, we can observe the process of pairing and connecting. The yellow text marks commands entered into the terminal window, while the white text is their output. No action is needed on the second module. Screen 2: the main ◀ page of the Microchip Bluetooth Data app has numerous options. This app is intended to be used with a wide range of Microchip’s Bluetooth equipped devices. access code and so forth. The syntax is a bit different, but simple enough. We made good use of the factory reset command (“SF,2<CR>”) during testing. One handy command allows the device name to be set using the last four nybbles (half-bytes) of the device MAC address as a suffix. This means that numerous devices could be easily set to have unique names based on the same prefix. We also tested wiring a CP2102based USB-serial converter to the EV25F14A (instead of its onboard USB-serial chip) and the connections we used are shown in Fig.3. Note that the jumper shunt on the EV25F14A needs to be changed over to take power from the Click header. These minimal connections might be all that is needed to add the evaluation board to a project to give it a wireless serial link, and would be much easier than soldering the tiny RNBD451 module. Using the apps The mobile device apps can be used to connect to the RNBD451 or EV25F14A. This could make things simpler, since pairing and configuration can be done on the mobile device. We started with the Microchip Bluetooth Data app, shown in Screen 2. We tested this on Android but expect the iOS version to be similar. Next, we selected the BLE UART option, siliconchip.com.au followed by the PIC32CXBZ option seen in Screen 3. Running a SCAN (Screen 4) showed the compatible devices that were in range. Tapping on a device will bring you to Screen 5. If the remote device is an EV25F14A connected to a serial terminal program, you should see the connection status reports as the app connects to the remote device. Screen 5 shows the results of a Burst Mode test, which sends a 100kiB file over the BLE link to test its speed. The resulting 11.38kiB/s is consistent with the 115,200 baud limit on the downstream serial port. The Text Mode button provides a simple serial terminal interface for text communication with the remote device. This could be used, for example, to connect to a device and interact with it, running commands or reading status information, as you might with a wired serial connection. This is not a fully-featured terminal program like TeraTerm; it is a simple line terminal, sending and receiving plain text. It does not provide features like VT100 terminal emulation that some devices require, such as the Micromite’s fullscreen editor facility. Other Microchip app features The BLE Smart menu option (seen in Screen 2) simply provides a scan of nearby BLE devices, as shown in Screen 6. Selecting one of the Australia's electronics magazine Screen 3: with the RNBD451 module being based on the PIC32CX-BZ2 processor, this is the option that should be chosen from the BLE UART screen. Screen 4: a scan shows the hardware (MAC) address of nearby compatible devices and the corresponding RSSI (received signal strength indicator) readings. May 2025  85 EV25F14A boards and connecting to it provides further information about the services provided. The BLE Connect option offers a similar scan and report about nearby devices. The serial command interface of the RNBD451 can also conduct a scan and get a response in text format about nearby devices. We mentioned the OTA DFU (over the air device firmware update) option earlier, which can be seen in Screen 8. We didn’t see any need to try it out, but it could be helpful if newer features become available in the future. It’s also possible to apply firmware updates over the serial connection. It is apparent that the Microchip app can work with many more devices that just the RNBD451 and EV25F14A. Microchip also has some software examples and libraries available at https://github.com/MicrochipTech A search for RNBD451 finds an Arduino library and sample projects for interfacing with the RNBD451. The source code for the Android and iOS apps is also available. Serial Bluetooth Terminal Screen 5: the burst data transmission test runs practically at the limit of the 115,200 baud hardware serial link. Screen 7: selecting a device from the BLE Devices scan shows the services and characteristics it provides. Some of these are used to implement the serial communication interface of the RNBD451. We have used this app on Android devices for many years, and it even works with devices like the HM-10 and HC-05. Screen 9 shows how a device can be selected for connection. Note that there are separate tabs for Bluetooth Classic (eg HC-05 devices) and BLE devices (most others). Screen 10 shows the terminal window; like the Microchip app, it does not provide all the terminal emulation features that you would have on programs like TeraTerm. Computer applications Screen 6: the BLE Devices option in the Microchip Bluetooth Data app can scan for all nearby Bluetooth devices. 86 Silicon Chip Screen 8: an OTA DFU (over the air device firmware update) can be performed from the Microchip Bluetooth Data app using the Bluetooth link. Australia's electronics magazine The one thing that stands out from all this is the lack of a fully-featured terminal program that can interact with devices that offer terminal emulation facilities, like the fullscreen editor of the Micromite. Under Windows, it is possible to create a virtual serial port to connect to a traditional Bluetooth SPP device. However, that does not appear to be the case for devices using custom BLE services. We found a project that appears to bridge this gap at https://github.com/ Jakeler/ble-serial although it’s not clear if it supports the characteristics used by Microchip, and it is still not as straightforward as for SPP devices. siliconchip.com.au The simplest way we found to get around this was to use the USB-serial adaptor of the EV25F14A board and connect to it using TeraTerm on Windows. Any other terminal program that can communicate with virtual USB-serial ports should work with the EV25F14A. In this case, connecting to devices and pairing must be done through the terminal interface, rather than a menu on the computer. However, that is easy enough when you become familiar with a few basic commands. to near 18mA during long periods of transmission. Internally, the module can use a buck or LDO regulator; the LDO is used by default. We found that the buck regulator saves around 5mA, although the module is only rated to operate down to 2.4V when using the buck regulator. There are several power-saving modes that can be activated through the command interface. Some modes will automatically wake up at intervals, or the device can be woken by a signal on one of the I/O pins. Other features GPIO pin control The hardware data sheet for the module (siliconchip.au/link/ac0a) and the data sheet for the EV25F14A Evaluation Board (siliconchip.au/link/ ac09) relate to the hardware and such things as pinouts. You can also find circuit diagrams for parts of the EV25F14A Evaluation Board, which will be very handy for creating a design which similarly incorporates the RNBD451 module. The user guide for the RNBD451 module stretches to over 200 pages (siliconchip.au/link/ac08). This is where you will find information about the command interface and software operation of the module (and thus the evaluation board). This document describes (in chapter 7) the ability to set up custom GATT services and characteristics. That may suit a simple application that needs to exchange infrequently changing status information. It might also be possible to emulate other existing BLE devices by mimicking their characteristics. The RNBD451 can also be configured to offer lowpower beacon advertisements. There are many ways to use BLE devices to create a positioning system (say, like GPS, but indoors), using relative signal strength (RSSI) as a proxy for distance. The RSSI of remote or scanned devices can be read through the command interface. The RNBD451 module has many more pins than are needed for a simple serial interface, so some can be configured as GPIO (general purpose input/output) pins. Using commands over the serial data link, pins can be set high or low or their status read back. One pin is also connected to an ADC (analog-to-digital converter), so an analog level, such as a battery voltage, can be read too. Some pins can be configured to change state if serial data arrives, allowing the main microcontroller to remain in a low-power sleep mode. It can be woken up before the RNBD451 module sends the data it has received. Power supply The RNBD451 datasheet notes it can operate between 1.9V and 3.6V, so it would be well-suited to use in battery-powered scenarios with a 3V supply, or taking power from a lithium battery via a low-dropout regulator. Operating from a 3.3V supply, we found that a bare RNBD451 module consumed around 13mA, jumping up siliconchip.com.au Screen 9: the Serial Bluetooth Terminal app can scan for and connect to a number of BLE and Bluetooth Classic devices. Conclusion The RNBD451 module is not quite a drop-in replacement for the likes of the HC-05 Bluetooth serial modules, but can be configured to provide most of the same features and more. The modules don’t have native Bluetooth support under Windows (as virtual COM ports), so we recommend using an EV25F14A as a bridge to allow communication with fully featured serial terminal emulators like TeraTerm. The remote control and configuration features of the RNBD451 module are very handy when they are used in pairs. With the ability to configure custom services and characteristics, the RNBD451 can be used for many other tasks beyond simple serial communication. The RNBD451 module and EV25F14A Evaluation Board are available from DigiKey and Mouser: • DigiKey 150-RNBD451PEI110-ND • DigiKey 150-EV25F14A-ND • Mouser 579-RNBD451PE-I110 • Mouser 579-EV25F14A SC Australia's electronics magazine Screen 10: the Serial Bluetooth Terminal app provides a simple linebased means of sending and receiving data from a remote device. May 2025  87