AlexMos Brushless Gimbal Controller (SImpleBGC) Tuning Guide

Alexmos Setup FAQ – Click Here

Download the New Alexmos User Manual V2.3 – English in PDF

Read the Manual Online

Manual in Other Languages:

The CP210x UART to USB bridge drivers are here:

 http://www.silabs.com/products/mcu/p…cpdrivers.aspx
(
how to uninstall the CP210x UART to USB Driver)

How to install drivers & Flash Firmware

Please read our terms and conditions

 

Software updates

2.40b6

Firmware: SimpleBGC_2_40b6.enc.hex (86Kb 4.02.2014)

GUI (Windows, OS X, Linux): SimpleBGC_GUI_2_40.zip (5Mb 4.02.2014)
User manual: SimpleBGC_manual_2_4_eng.pdf (428Kb 2.02.2014)

  • Bug fixed: some parameters are always kept their default values regardless of GUI setting
  • A new algorithm for increased reliability when motor misses steps:  PID gain is decreased, POWER is increased to restore synchronization
  • Follow mode was completely rewritten:
    •  speed can be adjusted in wide range by the “SPEED” setting
    •  acceleration limiter is applied
    •  LPF smoothing is applied (configured in the “RC setting” tab)
    •  Follow for the axes PITCH+ROLL and YAW  can be activated independently
    •  Follow for ROLL axis may be permanently enabled or disabled regardless of camera PITCHing:  to disable completely, set “ROLL start”=90, “ROLL mix”=0, to enable set “ROLL start=0”, “ROLL mix=0”.   (Note, that proper Follow offset calibration for ROLL is required now)
  • Up to 5x more precision with the new PID (increase I-term until oscillation starts and than reduce a little back to get the maximum from it)
  • New menu commands to turn motors ON/OFF.
  • (GUI): new setting for additional POWER in case of big error (caused by missed steps).
  • (GUI): new visual bar to display the actual POWER level.
  • (GUI): new setting to enable estimation of the frame angle from motor’s poles in the Lock mode, like in the Follow mode before. Helps to increase the range of  frame angles where gimbal’s operation is stable.

2.3b5

Firmware: SimpleBGC_2_3b5.enc.hex  (84Kb 7.11.2013)

GUI: SimpleBGC_GUI_2_3b4.zip (5Mb 7.11.2013)
(To remove Alexmos SimpleBGC GUI and Firmware from your system, please delete the downloaded files)

Gimbal Shaking / Drifting

You need first of all to press “USE DEFAULTS” when you update the firmware or the GUI. Then, you need to re calibrate the sensor.
If you have gimbal shaking in flight, it’s an EMI noise problem. Fit a ferrite ring around the motors outputs on the board and the I2C cable still right out of the board. Also, use a LC filter (Power Noise Filter) if you feed the gimbal right out from the main lipos.
I2C errors are worse when the sensor cable is running along aluminum parts or close to the motors / motor wires. Make sure to route it not too close to wires that emit RF noise.

20130529_212237

 

PID settings

pid

Use Realtime Data Window on gyros to fine tune the gimbal. As showed on the video for setup, you must have the smoothest curve possible coming back the fastest as possible back to the reference position. On light cameras, you will use a bit more of ” I ” gain and let the gimbal have a slight ” bump'” by coming as fast as possible to the reference point ( line), go a bit over it ( so you don’t lose reaction time) and come back by tuning the ” D” gain with as less bumps as possible. A heavier camera, it is better to reduce the speed of reaction a bit before arriving to the reference point because there is much more inertia due to the weight and this can cause some oscillation / wag due to the limited power in the motors to counteract the inertia

“P” Gain & Power Parameters

The Power value is the power feed to the motor all time, shall it be static or rotating. It must be adjusted so that the motor temperature stays under 60° Celsius (140° F) and that it does not “VIBRATE”. You will also notice that too high values, the motor will not have more torque and will just generate heat. You must find the right value depending on your motor ( some will require around 50, some 80-100 and some even more)

Then, the P gain is the power , or rather torque, that you will allow to rotate the motor to go to a defined position (RC input /FC input / Analog input) or to come back to a reference position ( stabilization). Higher the “P” gain, the stronger (with more torque) the motor will move.

The “I” Gain

Is the speed of rotation of the motor. The higher it is, the faster the motor will rotate. But a fast reaction means a fast stop is needed. As there is lot of inertia during the rotation of the camera / gimbal, this must be setup wisely and not too faster than needed

Perfect example to understand the principle is on the roll axis. The movement to come back to neutral after an external disturbance (example: a pinch with a finger) will let the roll come back to neutral much slower than the pitch on small gimbals. You should normally setup the pitch not to be too fast, but to come back very smooth and linear and then stop after just one slight bounce ( slow speed with low I value will remove that bounce but the motor will slow it’s correction before arriving at the  reference point, so you lose in term of reaction time.

D Parameter

Allows handling the bounce when motor arrives at the reference point and goes a bit further than needed. This is why D should be as close as zero as possible, But you will experience not so normal values on some motors and different windings.

gaina gainb gainc

How to Balance a DSLR Camera

Calibration

For the extended calibration, you must NOT press “Write” after each position calibration. Just start with the sensor flat position, press “ACC_CAL” , wait the convergence to be finished, move the sensor to next position, press again ” ACC_CAL” and so on. There is no particular positions order to follow, just make the 6 positions calibrations and when it’s done, finally, your press “WRITE”. To note that when the sensor is mounted in a different position than the standard one, make sure the alignment is perfect and adjust top and right axis according to it. You can perform standard calibration then with the sensor as it is mounted with the camera perfectly horizontal.

 

RC mode / Analog mode shakes and trouble

Here again, use a ferrite ring, right at the output / input of the board. This will avoid noise to travel back and forth between board and receiver. Due to its design, and the way the motors are driven, there is some noise and it bothers both I2C bus and other connections. If you use several inputs ( RXP, RXR, FCP, FCR..) make sure to have the wires going through a ferrite, 2 turns are enough for each wire.

 

Follow mode

It is something that was planned since the beginning but needed to be fine-tuned. It’s still a bit tricky to setup as everybody wishes, but it’s a good start. It’s equivalent to the DJI function and also the Movi “Majestic” function.

 

3rd axis on large gimbals :

Use a reduced drive (pulley for an example), with a ratio of 1/3 at least. And use very soft values in the PID settings; “I” must remain low. The yaw on a multirotor is most of time very smooth and also weak. So an “aggressive” and too fast reaction is not recommended, as it will induce a yaw erratic behavior on the frames themselves. The trick consists in having a reduction ratio and this way, reduce the reaction speed of the yam on the gimbal, but with keeping a higher speed on the yaw motor. This allows to fine tune very precisely the yaw behavior, and with using a “soft” “I” value and minimum D value, you will keep very nice yaw control and stabilization. If you put aggressive values and even if it seems to work fine in ” static”, in flight, you will completely bother the frames and FC on the yaw because the inertia of the gimbal might be stronger than the yaw control of the multirotor, and the dampeners of the gimbal with twist like springs and create small oscillations / wag movements.

 

Jello on GoPro Cameras:

50% of jello is vibration and dampening related, and the 50% remaining are wrong PID settings, mostly D setting and also the power to the motor. A simple test is, once gimbal is initialized, put a finger on the camera and very slightly press pitch. If you can feel a small “buzzing” or vibration appearing, the D gain or the power might be too high. Remember that it is not necessary (also not recommended) to have ultra-fast “back to neutral” when forcing the gimbal to move. We will never have similar reactions in flight and better have a smooth and linear back to neutral with the small bounce as explained regarding gain and reaction time, than ultra-fast and sharp return to neutral that will cause you moreproblems in flights that what you expected.

 

Introduction to V2 Gui

– Using the FC inputs helps for the acceleration compensation ( and acceleration compensation is working only if you use FC inputs). REason is, the FC calculates the acceleration compensation to drive a normal servo gimbal and gives input according to the accelerations on the 3 axis. The Alexmos board software then interpolates with it’s own calculation and takes into consideration the FC correction / compensation on accelerations.

– The Sensor must be “static” when booting the brushless controller, and remain static until it ends up initialising. If it has a small bump when connecting / powering ( it can happen) just make sure that right after you keep the gimbal stable time to end initialisation. It is not necessary, to have the sensor “levelled” for initialisation, just static

– If you can’t upload a new firmware, it can be your firewall / antivirus setting. Move to ” game mode” if there is one or ” leanring mode” or simply disable the antivirus time to make the update, and make sure you run the xloader / avrdude as administrator. In some extreme cases, it might be necessary to disable the UAC in windows ( User Access control).

– The brushless motors need to be rewound in order to be driven like CDrom motors, and to be suitable for the kind of task we are asking them. THis method of winding allows to drive the motors with a specific way of doing, simply. We ask the motors to be fast in reaction but to have minimum cogging ( steps if i could say so) and be able to also move very slow. 8 kHz noise is disturbing but is a bit more precise than 32 kHz (silent), variants can be done at 16 kHz also. If there is a need to “push ” the power setting a bit further to get same torque on 32kHz than on 8 kHz, it’s because a tweak is used to drive the motor. The name ” SImple Brushless Gimbal controller” is just right about it. A simple way to make it, yet prety efficient with that kind of low budget compared to servo systems not so long time ago… ( just a few month, in fact)

– Centering / Balancing on small gimbals / cameras is not so important (i mean, no need to be precise like sick as long as minimum torque is required from the motor) on the pitch, but must be very precise on Roll. Reason is, the pitch motor only drives the camera itself and the cage around, and there is very little inertia there on a go pro 3 for example. BUt the roll motor has to ” play” with lot of inertia as it must ” carry” if we could say so the rotation and inertia of the roll arms, the motor for pitch, the cage of the camera and the camera itself. This is why PID settings are always different for both these axis. And pan is even more sensitive and requires a higher torque motor made for that purpose, with different winding, or a reduced gear ratio one.

– 6234 / 6205 chips are ” all in one” chips to drive brushless motors. They include all the ” package” that you need to put on a PCB for brushless control ( fet, drivers…..). This is why they are used most of time.

Click here to purchase the Alexmos Brushless Gimbal Controller

– by Fabien edited by Aerialpixels

 

How the Follow Mode Works

 https://www.youtube.com/watch?v=ecXBLlrqwTk

 

Advanced settings

Connecting your receiver to the Alexmos Brushless Gimbal Controller Board

The 4 3-pin connectors can be used to connect the board to your receiver to do the following actions

1. Adjust Roll
2. Adjust Pitch
3. Adjust Yaw
4. CMD Mode

The 4 connectors are named as follows

1. RXP
2. RXR
3. FCP
4. FCR

x1245

 

On the RC Settings TAB of the GUI, under RC Input Mapping you can assign the connectors to the function of your choice.

Here’s an example.

Bguide1

 

In the above example:

RXP Connector controls Pitch using a Dial or switch in your transmitter
RXR Connector controls Roll using a Dial or switch in your transmitter
FCP Connector controls CMD Mode with a 3 Position Switch

CMD MODE

By Assigning a 3 position switch via the GUI to one of the control inputs you can flip through options available in the drop down list.

Example

In the above example, depending on how your assigned switch is configured (Reverse or Not).

Position 1 – Load Profile 1
Position 2 – Load Profile 2
Position 3 – Reset controller

*Default end point settings for auxiliary channels on most radios should work out of the box. 

Alexmos Joystick Settings

 

 Menu Button

By attaching a mini momentary push to ON button you can have the following functions without connecting to the board via USB

. Use Profile 1
. Use Profile 2
. Use Profile 3
. Calibrate ACC
. Calibrate Gyro
. Swap RC PITCH <-> ROLL
. Swap RC YAW <-> ROLL
. Set tilt angles by hand
. Reset controller

Having this button really helps in the initial tuning process, especially to reset the controller.

Example

DSC01032

 

DSC01033.

Example of function assignments

Alexmos Button Settings

 

Alexmos Menu Button Profile Setup Guide

Alexmos Hardware Guide