How does it work?
BLE 12 Click as its foundation uses the BM832A, a highly flexible, ultra low power Bluetooth module that provides BLE connectivity for any embedded application from Fanstel. The BM832A module is based on the Nordic nRF52 SoC, which integrates a 64MHz, 32bit ARM Cortex M4 processor with a floating-point unit (FPU), and a 2.4GHz multiprotocol radio (supporting Bluetooth 5.0, and an integrated PCB trace antenna), featuring -96dBm RX sensitivity (depending on data rate), alongside 192kB Flash memory and 24kB RAM.
BLE 12 Click provides the possibility of using both UART and SPI interfaces, with commonly used UART RX and TX pins as its default communication protocol for exchanging AT commands operating at 115200 bps by default configuration to transmit and exchange data with the host MCU. The selection can be made by positioning SMD jumpers labeled as COMM SEL to an appropriate position. Note that all the jumpers’ positions must be on the same side, or the Click board™ may become unresponsive.
The CMD pin routed on the PWM pin of the mikroBUS™ represents the communication-activation feature. A high logic state of the CMD pin allows the module to communicate with the MCU, while a low state allows data to be sent to a far-end device (for example, a smartphone) transparently. With the selected UART interface, power consumption can be reduced by sending the command “AT+STOP”. The CS pin needs to be set to a low logic state for 200μs or more to wake up the UART interface. Besides, it has an additional data-ready signal, labeled as REQ and routed on the INT pin of the mikroBUS™ socket, indicating that new data is ready for the host.
This Click board™ comes with worldwide regulatory certifications and offers enhanced performance, security, and reliability to support IoT products running on Bluetooth networks. Besides, at the center of the BLE 12 Click, an additional unpopulated header offers full support of debugging and programming capabilities. With this header, the user can use a Serial Wire Debug interface for programming and debugging, available through the SWD interface pins (SWDIO, SWCLK, and SWO).
In addition to the appropriate interfaces, this Click board™ also has some additional features. A Reset button routed to the RST pin on the mikroBUS™ socket puts the module into a Reset state, while the two additional LED indicators, yellow and red LEDs labeled as LED1 and LED2, can be used for optional user-configurable visual indication.
NOTE: To download up-to-date AT command codes for UART and SPI interfaces, the users can visit the official Fanstel website page.
This Click board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before use with MCUs with different logic levels. However, the Click board™ comes equipped with a library containing functions and an example code that can be used, as a reference, for further development.
Specifications
Type
BT/BLE
Applications
Can be used for low-cost Bluetooth low energy applications such as building automation and sensor networks, portable medical, connected home, and more
On-board modules
BM832A – highly flexible, ultra low power Bluetooth module that provides BLE connectivity for any embedded application from Fanstel Corp
Key Features
Bluetooth 5.0 Low-Energy (BLE) solution, complete RF solution with integrated antenna, SWD debug interface, enhanced security features, low power consumption, selectable interface, and more
Interface
SPI,UART
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V
Pinout diagram
This table shows how the pinout on BLE 12 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
LD2-LD3 | LED1-LED2 | – | User-Configurable LED Indicators |
JP1-JP2 | COMM SEL | Right | Communication Interface Selection SPI/UART: Left position SPI, Right position UART |
J1 | SWD | Unpopulated | SWD Interface Header for Debugging |
BLE 12 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | – | 3.3 | – | V |
Operating Range | – | – | 340 | m |
Frequency Range | – | – | 2.4 | GHz |
Data Rate | – | – | 1 | Mb/s |
Sensitivity | – | -96 | – | dBm |
Memory Size (Flash/RAM) | – | – | 192/24 | kB |
Operating Temperature Range | -40 | +25 | +85 | °C |
Software Support
We provide a library for the BLE 12 Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Library Description
This library contains API for BLE 12 Click driver.
Key functions
-
ble12_set_device_name
BLE 12 set device name function. -
ble12_set_op_mode
BLE 12 set operating mode function. -
ble12_send_cmd
BLE 12 sends the command function.
Example Description
This example reads and processes data from BLE 12 Click board™.
void application_task ( void )
{
ble12_process();
if ( app_buf_len > 0 )
{
log_printf( &logger, "%s", app_buf );
ble12_clear_app_buf( );
}
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Other Mikroe Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.BLE12
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MikroElektronika compilers.
mikroSDK
This Click board™ is supported with mikroSDK – MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.