Pan/Tilt & Stabilization with Pololu MinIMU-9

I have a potentiometer joystick controlled Pan/Tilt camera setup (works fine) with resistive 2 axis joystick. I need to be able to stabilize the platform. I have a Pololu MinIMU-9 and Uno setup and working. I'm pretty new to C++ and I know what I need to do is add/subtract the joystick readings with the IMU's readings. I'm stuck.

Anyone done this NOT using R/C stuff. I'm not building an Aeroplane / Heli, just a stabilized platform.


I used a very simple joystick to servo example for control now. Integration is my problem. I need to do the math with the outputs from the 3 sensors to keep it steady. I am willing to pay a bit for some help because programming is hard. I'm an EE, but not a programmer.

Hi I'm after a head tracker based on a minIMU (pan/tilt servo control involved), I'm almost there. May be we can exchange some things. Are you still after that pan/tilt stabilization? Did you get the minIMU-9 working? What ranges (angles) do you need/want for pan and tilt? FYI I'm also an EE, but not a programmer.

Great! Sorry it took me so long to respond. I belong to many forums and I had surgery 2 weeks after you answered on my right shoulder - still healing, but enough to solder. I now have a few IMU, one embedded from 3-space ($99), the MinIMU-9 and a few others I hodge podged together.

I need to more the servos in response to movement in 3 planes up/down, left right and camera twist (yaw?)

Mitchell Katz Visible Diode Lasers R&D Engineering 6090 Wilderness Avenue Cocoa, FL 32927


I though you gave up of this projetct. Good to see you back.

My question (the ranges) regards the servo (comun radio control servos) angle output limitations (usualy 120 degrees at the most, some can do 180). The system I'm working in shall make +/_90 for yaw (pan) , and +/_60 for tilt. Near 90 (tilt) system gets puzzeld with uncertenitys. (no roll for me)

Second question: what system speed do you need (what in fact do you need to stabilize) ? (servo response, noise, gitter, filters, etc. are serious limitations)

I managed to make the MinIMu work and control a servo for 180 degrees pan via a arduino pro mini at 16Mhz (but had to use a moving average to get more stable readings from yaw data, and that causes some delay)

Did you get any of IMU to work?

Yes, finally back on forum..

I got IMU to work fine.

Need pan servo to do 180 and tilt to do -45 to 45

Not sure whether to use digital or analog servos. Analog servos are noisy. I get glitches with my system running on a single 2 axis accelerometer. The MinIMU-9 has filtering. I'm using it for 2 systems, one just to level a camera on the ground, the other to level camera in the air or moving vehicle. Response time needs to be quick, but not too quick to avoid overshoot.

Any ideas


Hi Mitch

Glad to see you back in this project.

I'm sending you a PM with my progress info.

HS 645 Hitec servos can do 180 degrees. (HS 5645 digital should also make it). I thing you will have to filter the IMU (or MinIMU9) output and compromise between delay and filter. Or make a fuzzy filter.

More info in my PM.

J. Sobral

Hello guyz,

I have been working on a very similar project like that. I am using Altimu 10 v4 9 dof sensor and tryin to control pan-tilt two servo system with it. What I thought was that I basically need yaw and pitch angles to process. But I don't know how can I actually measure and send the data to servos. I am using Bluetooth modules to send the data. Is there any basic code for reading yaw and pitch angles which I can use them for later use.