SimpleBGC PID Tuning
You might want to view the videos at the highest resolution. Additionally you can use full screen mode by
clicking on the lower right of the video.
Before you start tweaking, you need to balance your camera into the gimbal. With a decent balance, you have better chances of
achieving a good stabilization.
High power gives you a lot of torque, meaning that the turning motor has
lots of strength to handle the weight of the camera. Heavy cameras might need more torque (and more importantly,
bigger motors). The same goes for cases, where you haven't balanced your camera correctly and the center of gravity
is off from the center of the axis. You might use higher power also when you need to make aggressive movements (for
example, when running). Too high power can lead to overheating of the motor, which might cause permanent
Lower power enables you to use higher P and D values without vibrations. If, however, you set the power too low,
the torque will not be enough and the motor loses steps. In other words the motor will lose its “grip” on the
Set the power as low as you need for the kinds of movements you'll be making.
The P value tries to keep the current camera angle. So if you turn the gimbal
to one direction, it will try to rotate the camera into the opposite direction. A low P value offers poor
stabilization. Too high of a P on the other hand leads to low-frequency oscillations/vibrations, even when there is
no outside force to cause motion.
Your P is optimized, when the deflection (deviation) is small (as long as it doesn't cause any vibrations of
course). For example, when you rotate the gimbal 50 degrees... with P at 5 it might deflect 10 degrees (this is not
good), where as with P at 10 the error might only be 5 degrees (that's more like it). (You can experiment with this
behaviour by setting your I value to 0. Or put it to 0.01 and make the rotation quickly.)
I is the speed that the gimbal motor rotates towards the target angle.
Target angle ("0 angle") is the angle that a healthy gimbal
is supposed to hold. After a shake or other disturbance, your camera will move back to the target angle at the
speed determined by the I value. If the I value is too low (0.00), the motor won't turn the camera back. In
addition to I, P helps to hold the target angle. I at 0.01 and P at 1 is enough to slowly rotate the camera, but
usually you want to use more P of course.
I have been using low I values (0.01) on both roll and pitch. I have noticed that too high of an I leads to
overshooting when going back to 0 angle. This results in shaky behaviour and vibrations that won't stop. In any
case, I don't know yet whether putting a little more I would do more good than evil. I need to
D smooths things out a bit. It gets rid of low-frequency
oscillations/vibrations. If you put it too high, you will get high-frequency oscillations.
If your sensor is prone to vibrations, you can experiment with higher Gyro LPF numbers. It allows you to use higher D values. For example, when
I was using Gyro LPF at 0, the highest I could go with my D values was about 3 (depending on the powers of course).
Now that I have Gyro LPF at 4 I can maximize the Ds.
When looking at vibrations, keep an eye on these:
- the blue arrows
- the gyro data in the realtime data tab
- sound (buzzing etc.)
- sense of touch (when holding the gimbal in your hand)
Sometimes (when PID tuning) I keep the gimbal on the table. That however means a different kind of response from
the gimbal. It might, for example, vibrate more. I prefer keeping the gimbal in one hand while the other hand
controls the SimpleBGC software. Additionally I can quickly try how the gimbal works in different angles. Sometimes
I only get high-frequency oscillations in some angles.