How does it work?
Smart Sens Click as its foundation uses the BHI260 and BMM150, a programmable smart sensor combining accelerometer, gyroscope, and fusion software alongside standalone geometric sensor from Bosch Sensortec. The BHI260 is based on the 32-bit microcontroller (Fuser2) and is mainly intended as a coprocessor offloading the main CPU from any sensor data processing-related tasks, in this case, data from BMM150. It integrates Inertial Measurement Unit (6DoF IMU) and Event-Driven Software Framework, making the BHI260 a complete sensor subsystem and computing platform for always-on sensor data processing algorithms at the lowest power consumption.
The BMM150 is a geomagnetic sensor that allows measurements of the magnetic field in three perpendicular axes. An application-specific circuit (ASIC) converts the output of the geomagnetic sensor to digital results, which is then sent to the BHI260 for signal processing over the industry-standard digital I2C interface. The BMM150 can communicate with the BHI260 in two ways, by choosing the main or auxiliary I2C master interface. The selection can be made by positioning SMD jumpers labeled as BUS SEL to an appropriate position, AUX or M2I. Note that all the jumpers’ positions must be on the same side, or the Click board™ may become unresponsive.
Four magnetometer-based interrupt engines are integrated into the BMM150: Low-Threshold, High-Threshold, Overflow, mapped to the INT pin of the BMM150, and Data Ready mapped to the DRY pin of BMM150. By positioning SMD jumpers labeled as INT SEL to an appropriate position (INT or DRY), the user chooses which interrupt will be forwarded to BHI260 and with which BHI260 will perform data processing by BMM150.
Smart Sens Click allows using both I2C and SPI interfaces to communicate with 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. While the I2C interface is selected, the BHI260 allows choosing the least significant bit (LSB) of its I2C slave address using the SMD jumper labeled ADDR SEL. In addition to interface pins, this Click board™ also uses a Reset pin, RST pin on the mikroBUS™ socket, and INT pin of the mikroBUS™ socket, which indicates the data transfer request from the BHI260 to the MCU.
Since the BHI260 and BMM150 for operation requires a 1.8V logic voltage level to work correctly, a small regulating LDO is used, the SPX3819, providing a 1.8V out of mikroBUS™ power rails. That’s why voltage-level translators are also featured, the TXB0106 and PCA9306. The interface bus lines are routed to the dual bidirectional voltage-level translators, allowing this Click board™ to work with both 3.3V and 5V MCUs properly.
In addition, the onboard BOOT switch is used to select whether the host interface shall be used (HOST position) or whether the BHI260 shall attempt to boot from an onboard QSPI Flash memory, the W25Q32JW, and run in a Standalone operation mode (QSPI position). Besides, at the top of the Smart Sens Click, an additional unpopulated header is marked as cJTAG, which the user can use for debugging purposes, available through the JTAG interface pins (TCK and TMS).
This Click board™ can operate with both 3.3V and 5V logic voltage levels selected via the VCC SEL jumper. This way, it is allowed for both 3.3V and 5V capable MCUs to use the communication lines properly. However, the Click board™ comes equipped with a library containing easy-to-use functions and an example code that can be used, as a reference, for further development.
Specifications
Type
Environmental,Motion
Applications
Can be used for always-on sensor data processing algorithms at the lowest power consumption
On-board modules
BHI260 – programmable smart sensor combining accelerometer, gyroscope, and fusion software from Bosch Sensortec
BMM150 – standalone geometric sensor from Bosch Sensortec
Key Features
Smart sensor hub with integrated IMU sensor, environmental sensor and magnetometer, bus master interface selection, boot mode selection, selectable communication, JTAG debugging, and more
Interface
I2C,SPI
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V or 5V
Pinout diagram
This table shows how the pinout on Smart Sens 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 |
JP1 | VCC SEL | Left | Logic Level Voltage Selection 3V3/5V: Left position 3V3, Right position 5V |
JP2-JP5 | COMM SEL | Left | Communication Interface Selection SPI/I2C: Left position SPI, Right position I2C |
JP6-JP7 | BUS SEL | Left | Auxiliary/Master Interface Selection AUX/M2I: Left position AUX, Right position M2I |
JP8 | INT SEL | Left | Magnetometer Interrupt Selection DRY/INT: Left position DRY, Right position INT |
R13 | ADDR SEL | Left | I2C Address Selection 0/1: Left position 0, Right position 1 |
J1 | cJTAG | Unpopulated | JTAG Debug Interface Header |
T1 | BOOT | Right | Boot Mode Selection Switch |
Smart Sens Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | 3.3 | – | 5 | V |
BHI260 Acceleration Range | ±2 | – | ±16 | g |
BHI260 Accelerometer Resolution | – | 16 | – | bit |
BHI260 Accelerometer Sensitivity | 16384 | – | 2048 | LSB/g |
BHI260 Gyroscope Range | 125 | – | 2000 | °/s |
BHI260 Gyroscope Resolution | – | 16 | – | bit |
BHI260 Gyroscope Sensitivity | 16.4 | – | 262.4 | LSB/°/s |
BMM150 Magnetometer Range (X, Y) | – | ±1.3 | – | mT |
BMM150 Magnetometer Range (Z) | – | ±2.5 | – | mT |
BMM150 Magnetometer Resolution | – | 13 | – | bit |
Operating Temperature Range | -40 | +25 | +85 | °C |
Software Support
We provide a library for the Smart Sens 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 Smart Sens Click driver.
Key functions
$EXAMPLE_KEY_FUNCTIONS
Example Description $EXAMPLE_DESCRIPTION
$APPLICATION_TASK
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.SmartSens
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.