Login / Signup
Cart
Your cart is empty
The Bi2C - 16-bit accelerometer is based around the Memsic MC3419 accelerometer and uses the Bi2C connection available on many recent iLabs Challenger feather-format boards. Learn more about Bi2C here.
This Bi2C module is only 10x12mm and is intended to be mounted with strong double-sided tape or glued into place. The module comes with one long flexible flat cable so that you can plug it straight into your Challenger board.
We’ve also used this accelerometer on our Challenger RP2040 WiFi/BLE board with accelerometer.
The MC3419 is a small form factor, integrated digital output 3-axis accelerometer with a feature set optimized for cell phones and consumer product motion sensing. Applications include user interface control, gaming motion input, electronic compass tilt compensation for cell phones, game controllers, remote controls and portable media products.
The accelerometer chip features a dedicated motion block which implements algorithms to support “any motion” and shake detection, tilt/flip and tilt 35 position detection. Low power consumption and small size are inherent in the monolithic fabrication approach, where the MEMS accelerometer is integrated into a single chip with the electronics integrated circuit. The internal sample rate can be set from 0.5 to 2000 samples / second and supports the reading of sample and event status via polling or interrupts.
Some of its features broken down are:
The module has true I2C daisy chaining capabilities which means you can connect as many Bi2C modules in one chain as you like. Or at least as many as can reliably work on the same I2C bus!
You also have the possibility to fully disable the pull-up resistors on the module by cutting the wire links on JP2. There should only be one device in the Bi2C chain that has the pull-up resistors enabled. All the other devices must have them disabled.
If you need to connect another Bi2C accelerometer device on the same Bi2C bus, you also have the possibility to configure the accelerometer to its second I2C address (0x6C). This is achieved by cutting the wire link on JP1 and creating a solder blob on the other two pads on the board.
The Bi2C (Bus I2C) concept is a spin-off from the existing Groove, Stemma and Qwiic ecosystems where we use an FFC (Flexible Flat Cable) instead of normal threaded cables to create the connection. This means that we can get away with connectors that have 0.5mm pitch which makes them super thin and compact. Read more about Bi2C here.
You can also use Bi2C with Qwiic/STEMMA QT boards using the Bi2C Qwiic/STEMMA QT adapter, giving you an ultra-thin cable option for compact projects and enclosures.
iLabs have forked a mCube library and adapted it to work in the standard Arduino environment making it accessible not only to all Challenger boards but also to any Arduino-compatible board. This library is available at https://github.com/PontusO/mc34x9_driver.
Currently, you need to clone or copy the library into the “libraries” folder of your Arduino directory but iLabs are working on getting it into the Arduino library manager. The library has an excellent example of how to use the driver API - iLabs recommend that you study it carefully if you want to use the sensor fully.
Below is a short snippet of code that shows how to create an instance of the driver and how to initialize it:
#include
MC34X9 MC34X9_acc = MC34X9();
#define USE_I2C 1
#define I2C_ADDRESS 0x4C
#define USE_SPI 0
void setup()
{
// Init MC34X9 Object
if (!MC34X9_acc.begin(USE_I2C, I2C_ADDRESS)) {
// Invalid chip ID
// Block here
while (true);
return;
}