RN4870 Bluetooth® Low Energy (BLE) Module
Overview
Microchip's RN4870 Bluetooth® Low Energy (BLE) Module is a fully certified Bluetooth Smart module offering Bluetooth 4.2 connectivity in a compact form factor. Its advanced features allow BLE connectivity to be included in designs with minimal engineering. The RN4870 module uses Microchip's IS1870 BLE Radio Frequency (RF) Integrated Circuit (IC).
The primary difference between the RN4870 firmware and the IS1870S factory firmware is that the RN4870's control interface is based on ASCII commands sent over the Universal Asynchronous Receiver Transmitter (UART). Interactive ASCII commands allow for the RN4870 to be configured without complex configuration tools.
The RN4870 supports both peripheral and central Generic Access Profile (GAP) roles, actively scanning for other connectable devices instead of waiting for incoming connection requests.
The RN487x series also supports onboard scripting to automate basic operations without a host microcontroller. Also, there are different packaging options for the RN4870/71 family; both shielded and unshielded modules are available.
Additional features include:
- Fully Qualified Bluetooth Smart Module
- On-board Bluetooth 4.2 Low-Energy Stack
- ASCII Command Interface Application Programming Interface (API) over UART
- Scripting Engine for Hostless Operation
- Compact Form Factor
- Beacon Private Service for Beacon Services
- UART Transparent Service for Serial Data Applications
- Remote Commands Over the Air
Block Diagram
Below you will find the block diagram for the RN4870 which shows all its key elements.
MCU Interface
The picture below illustrates the basic interface between PIC® microcontroller and the RN4870 module. The minimum interface consists of UART TX/RX and UART CTS/RTS lines. This enables the microcontroller to communicate with the RN4870 module using ASCII command API.
The command API can be found in Chapter 2 of the "RN4870/71 Bluetooth Low Energy Module User's Guide".
The diagram above describes the RN4870 pin's default functions. However, the GPIO pins of the module can be configured to different functions using the ASCII command interface. Some of the configurable functions include:
- Low Battery Notification
- Received Signal Strength Indicator (RSSI)
- RF Active Indication
- Pairing Key
- UART RX Indication
- Link Drop
Table 1-4 on the RN4870 datasheet found under the Documentation tab on the RN4870 Landing Page provides details on each of the functions available.
Supported Services
The RN4870 supports four built-in Generic Attribute Profile (GATT) services which include:
- Device Information public service
- Airpatch private service
- BeaconThings
- UART Transparent private service
In addition to the above predefined private services, the RN4870 provides the ability to create up to five public and four private custom-designed services. Each custom-defined service allows up to eight custom-defined characteristics. All service definitions will be saved in on-board Non-Volatile Memory (NVM), so the module only needs to be set up once.
Documentation
The following core documentation is required to work with the module and it can be found on the Microchip RN4870 page.