All of the sensors on the Adafruit 9DOF breakout communicate via a two-pin I2C bus, making it relatively easy to setup with a minimum number of cables:
To interface with the sensor, you will need to solder in wire or header into the breakout row at the bottom. You cannot 'press fit' or 'twist' wires in, they will not make good contact! Soldering is required
Start by breaking the header down so it is 10 pins long. Sometimes we toss in a longer strip, but its easy to break it down, just use pliers or diagonal cutters to snap it down to 10 pins.

Place the long ends of the header into a solderless breadboard to keep them steady.
Place the 9DOF board right on top of the header so that the short pins are sticking thru the hole pads
Heat up your soldering iron and once it is ready, solder all 10 pads to the header, making sure to check that there is plenty of solder to make a mechanically strong connection and there's no solder bridging either.
That's it! you're done, continue on to the wiring step below

Basic Setup (5V Logic, Arduino Uno, etc.)

We'll be using an Arduino UNO here, but the code will work on a Mega or Leonardo just fine. Most other Arduino compatibles should have no problems either but we only support official Arduinos for code.
  • Connect the SCL pin on the breakout to the SCL pin on your Arduino. On an UNO & '328 based Arduino, this is also known as A5, on a Mega it is also known as digital 21 and on a Leonardo/Micro, digital 3
  • Connect the SDA pin on the breakout to the SDA pin on your Arduino. On an UNO & '328 based Arduino, this is also known as A4, on a Mega it is also known as digital 20 and on a Leonardo/Micro, digital 2
  • Connect the VIN pin on the breakout to 3.3V or 5V on your Uno (5V is preferred but if you have a 3V logic Arduino 3V is best)
  • Connect the GND pin on the breakout to the GND pin on your Uno
That's it! With those four wires, you should be able to talk to any of the I2C chips on the board and run any of the example sketches.

Advanced Setup

While most people probably won't need to use the pins below, we've also broken out a few extra pins for advanced users or for special use cases. If you need to use any of these pins, simply hook them up to a GPIO pin of your choice on the Uno:
  • GINT - The interrupt pin on the L3GD20 gyroscope
  • GRDY - The 'ready' pin on the L3GD20 gyroscope
  • LIN1 - Interrupt pin 1 on the LSM303DLHC
  • LIN2 - Interrupt pin 2 on the LSM303DLHC
  • LRDY- The ready pin on the LSM303DLHC
These pins are all outputs from the 9-DOF breakout and are all 3.3V logic, you can use them with 5V or 3V as 3.3V registers 'high' on 5V systems.

3V3 Setup

If you are using an MCU or board with 3V3 logic (instead of the 5V logic used by the Arduino Uno), you can still power the 9-DOF with the VIN pin or you can use the 3Vo pin, which will bypass the on-board 3V3 regulator and level shifting:
  • Connect Vin or 3Vo on the breakout to the 3.3V supply on your target MCU
  • Connect GND on the breakout to GND on the target MCU
Like other breakouts on Adafruit, the 9 DOF Breakout is fully level shifted, and you can safely use it on 3V3 or 5V systems.

This guide was first published on Feb 07, 2014. It was last updated on Feb 07, 2014.

This page (Connecting It Up) was last updated on May 26, 2022.

Text editor powered by tinymce.