Vibration-Compensated Tilt Sensor

This project uses a Sparkfun mini-bully PIC24HJ64GP502 breakout board (BOB-09148) and a Sparkfun IMU5 Degrees of freedom (SDN-00741) board plus Kalman filter code to build a vibration-compensated tilt sensor. The IMU5 contains a three-axis accelerometer and a two-axis gyro. The program uses a Kalman filter to help reduce vibration effects on pitch/roll data that is computed from a fusion of the accelerometer and gyro outputs. The Kalman filter code is in kalman.c and is taken from code originally done by Trammell Hudson <>. The code outputs a NEMA string containing pitch/roll data which is formatted to be compatible with the OS5000 Widows Compass demo program (this is only used for viewing the pitch/roll data).