This is revision A of the IMU1 module.

IMU1 Module (Revision A)

Table of Contents

1. Introduction

The IMU1 module can accept a number of the Inertial Measurement (Gyros and/or Accelerameters) boards sold by Spark Fun Electronics.

The table below summarizes the various boards and their pin outs:

Module SKU# Pin 1 Pin 2 Pin 3 Pin 4 Pin 5 Pin 6 Pin 7 Pin 8 Pin 9 Pin 10
ADXL202JE +/-2g SEN-00400 3.3V? GND XA YA XP YP ST
IMU5 SEN-00741 3.3V GND X-Rate Y-Rate VRef ST Z Accel Y Accel X Accel
IDG300 SEN-00698 3.3V GND Yout VRef Xout
ADXRS401 SEN-00394 5V GND Rate 2.5V TEMP ST1 ST2
ADXRS300 SEN-00395 5V GND Rate 2.5V TEMP ST1 ST2
ADXRS150 SEN-00396 5V GND Rate 2.5V TEMP ST1 ST2
LIS3LV02DQ SEN-00758 VDD GND INT SDO SDI SCL CS CK
ADXL203/ADXRS150 SEN-00838 5V GND Rate 2.5V TEMP ST2 ST1 ST3 Y Accel X Accel
ADXL203/ADXRS300 SEN-00837 5V GND Rate 2.5V TEMP ST2 ST1 ST3 Y Accel X Accel
ADXL203/ADXRS401 SEN-00836 5V GND Rate 2.5V TEMP ST2 ST1 ST3 Y Accel X Accel
ADXL320/ADXRS401 SEN-00839 5V GND Rate 2.5V TEMP ST2 ST1 ST3 Y Accel X Accel
ADXL320/ADXRS300 SEN-00841 5V GND Rate 2.5V TEMP ST2 ST1 ST3 Y Accel X Accel
ADXL320/ADXRS150 SEN-00842 5V GND Rate 2.5V TEMP ST2 ST1 ST3 Y Accel X Accel
ADXL213AE SEN-00843 VDD GND XA YA XP YP ST
ADXL203CE +/-1.5g SEN-00844 VDD GND XA YA XP YP ST
ADXL3111 +/-2g SEN-00845 VDD GND XA YA XP YP ST
ADXL210AE +/-10g SEN-00846 VDD GND XA YA XP YP ST
ADXL320 +/-5g SEN-00847 VDD GND X Y Z ST
ADXL321 +/-18g SEN-00848 VDD GND X Y Z ST
ADXL322 +/-2g SEN-00849 VDD GND X Y Z ST
ADXL330 SEN-00692 VDD GND X Y Z ST
ADXL311 SEN-0085 VDD GND XA YA XP YP ST
And more ...
Summary 3.3V/
5V
GND ADC0 ADC1/
2.5V
ADC2/
VRef
ADC3/
ST1
ADC4
ST2
ADC3/
ST3
ADC2 ADC1
The basic concept is that there are up to 10 pins on the Spark Fun Adaptor Board. Some of the pins can be jumpered between a pair of options. For example, pin 1 can be either 3.3V or 5V. As another example, pin 4 can be jumpered between ADC1 and 2.5V.

2. Programming

{TBD}

3. Hardware

As another twist, the processor can be either a Microchip PIC16F876A or an Atmel ATmega168. The table below shows the various pin binding differences between the two processors. The last two columns specify the signal usage that the IMU1 board uses the pins for:

Pin PIC16F876A ATMegax168 PIC Signal AVR Signal Sharable
1 MCLR/VPPTHV PC6 (PCINT14/RESET) RESET Reset
2 RA0/AN0 PD0 (PCINT16/RXD) ADC0 RXD RA0=PD0 (RXD)
3 RA1/AN1 PD1 (PCINT17/TXD) ADC1 TXD RA1=PD1 (TXD)
4 RA2/AN2/VREF- PD2 (PCINT18/INT0) ADC2 RA2=PD2
5 RA3/AN3/VREF+ PD3 (PCINT19/OSC2B/INT1) ADC3 RA3=PD3
6 RA4/T0CKI PD4 (PCINT20/XCK/T0) RA4=PD4
7 RA5/AN4/SS VCC ADC4 +5V +5V
8 VSS GND GND 0V
9 OSC1/CLKIN PD6 (PCINT6/XTAL1/TOSC1) XTAL1 OSC1=XTAL1
10 OSC2/CLKOUT PD7 (PCINT7/XTAL2/TOSC2) XTAL2 OSC2=XTAL2
11 RC0/T1OSO/T1CKI PD5 (PCINT21/OC0B/T1) RC0=PD5
12 RC1/T1OSI/CPP2 PD6 (PCINT22/OC0A/AIN0) RC1=PD6
13 RC2/CCP1 PD7 (PCINT23/AIN1) RC2=PD7
14 RC3/SCK/SCL PB0 (PCINT0/CLKO/ICP1) ST1 RC3=PB0
15 RC4/SDI/SDA PB1 (OC1A/PCINT1) ST2 RC4=PB1
16 RC5/SDO PB2 (SS/OC1B/PCINT2) ST3 RC5=PB2
17 RC6/TX/CK PB3 (MOSI/OC2A/PCINT3) TXD RC6=PB3 (TXD)
18 RC7/RX/DT PB4 (MISO/PCINT4) RXD RC7=PB4 (RXD)
19 VSS PB5 (SCK/PCINT5) 0V
20 VDD AVCC +5V +5V
21 RB0/INT AREF +5V +5V
22 RB1 GND GND 0V
23 RB2 PC0 (ADC0/PCINI8) ADC0 RB2=PC0
24 RB3/PGM PC1 (ADC1/PCINT9) ADC1 RB3=PC1
25 RB4 PC2 (ADC2/PCINT10) ADC2 RB4=PC2
26 RB5 PC3 (ADC3/SDA/PCINT11) ADC3 RB5=PC3
27 RB6/PGC PC4 (ADC4/SDA/PCINT12) ADC4 RB6=PC4
28 RB7/PGD PC5 (ADC5/SCL/PCINT13) RB7=PC5
Some jumpers will allow route the appropriate pins from the processor to the correct signal wires. There are 5 jumpers to select the correct source for ADC0-4. There are 2 jumpers to select between RXD and TXD. There is 1 jumper to deal with pin 7.

The hardware consists of a circuit schematic and a printed circuit board.

3.1 Circuit Schematic

The schematic for the IMU1 module processor is shown below:

IMU1 Processor Schematic
and the connector schematic is shown below:
IMU1 Connector Schematic

The parts list kept in a separate file -- imu1.ptl.

3.2 Printed Circuit Board

The printed circuit board files are listed below:

imu1_back.png
The solder side layer.
imu1_front.png
The component side layer.
imu1_artwork.png
The artwork layer.
imu1.gbl
The RS-274X "Gerber" back (solder side) layer.
imu1.gtl
The RS-274X "Gerber" top (component side) layer.
imu1.gal
The RS-274X "Gerber" artwork layer.
imu1.gml
The RS-274X "Gerber" mask layer.
imu1.drl
The "Excellon" NC drill file.
imu1.tol
The "Excellon" tool rack file.

4. Software

The following files are available:

imu1.ucl
The IMU1 µCL source code file.
imu1.asm
The IMU1 boot loader assembly code listing.
imu1.lst
The IMU1 boot loader listing file.
imu1.hex
The IMU1 boot loader Intel® Hex file.

5. Issues

The following fabrication issues came up:


Copyright © 2007 by Wayne C. Gramlich. All rights reserved.