BerryIMU Quick Start Guide

Topics covered in the BerryIMU Quick Start Guide;

 

 

How to assemble BerryIMU

BerryIMU comes with one 4 pin male header and a 2×3 pin female header;

BerryIMU Headers

 

At least one of these headers needs to be soldered to the BerryIMU to allow it to interface with a Raspberry Pi. You can also solder both if you like.

The 4 pin male header is used to connected BerryIMU to the Raspberry Pi via jumper cables. The 4 pin header is soldered to the underside of BerryIMU at the P2 designation highlight in red below;

 

BerryIMUMaleHeaderPlacement2

 

The 3 pin 2 row female header is used to allowed BerryIMU to connect right onto the GPIO pins of the Raspberry Pi and it is soldered on the underside of BerryIMU at the P1 designation highlighted in red below;

BerryIMU Header

 

Note. There are 5 remaining pins at P5, no male pins were supplied for these locations as in 99% of all use cases these pin locations will not be used.  However, if you plan to use the Data Ready and Interrupt functions of the sensors, please feel free to solder some male headers here.

Connecting BerryIMU to a Raspberry Pi

 

BrryIMU can connect via the jumper cables to the Raspberry Pi as shown below;
Raspberry Pi BerryIMU

IMU Raspberry Pi Accelerometer gyro
Or BerryIMU can sit right on top of the GPIO pins on a Raspberry Pi A, B, B+ and A+.   The first 6 GPIOs are used as shown below.

IMU Raspberry Pi Accelerometer gyro

Connecting BerryIMU to more Microcontrollers

BerryIMU Arduino Wiring

Sparkfun Thing Dev Hookup

Sparkfun Thing IMU

Adafruit Feather Huzzah! Hookup

Adafruit Huzzah IMU

Datasheets for BerryIMU

LSM9DS0 – Magnetometer, accelerometer and gyroscope datasheet can be found here.
BM180 – Pressure sensor datasheet can be found here.

BerryIMU i2c Addresses

The default i2c addresses of BerryIMU are;

  • 0x1E for the magnetometer and accelerometer
  • 0x6A for the gyroscope
  • 0x77 for the pressure sensor

The first two addresses above can be changed by soldering  close the appropriate address pads on the BerryIMU.

The image below shows where these pads are located on the PCB.

ADDR2, when soldered together,  the address for the  magnetometer and accelerometer will change from 0X1E to 0x1D.

ADDR1, when soldered together,  the address for the gyroscope will change from 0x6A to 0x6B.

BerryIMU change i2c

 

Mechanical Dimensions

BerryIMU Dimensions

Sample Code

Git repository here
The code can be pulled down to your Raspberry Pi with;

pi@raspberrypi ~ $ git clone http://github.com/mwilliams03/BerryIMU.git

Guides and Tutorials

In this order;
Guide to interfacing a Gyro and Accelerometer with a Raspberry Pi
Guide to interfacing a Gyro and Accelerometer with a Raspberry Pi – Kalman Filter
Create a Digital Compass with the Raspberry Pi – Part 1 – “The Basics”
Create a Digital Compass with the Raspberry Pi – Part 2 – “Tilt Compensation”
Create a Digital Compass with the Raspberry Pi – Part 3 – “Calibration”
Create a Digital Compass with the Raspberry Pi – Part 4- “Smartphone Replica”
Converting values from an Accelerometer to Gs – “ Proper Acceleration”

How to Create an Inclinometer using a Raspberry Pi and an IMU
Raspberry Pi Digital Spirit Level

Blip, blop, bloop…