19 January 2014

Calibrating ESC's

 Before you can fly, you have to teach your Electronic Speed Controllers (ESC's) the minimum and maximum throttle levels they can expect to see. This is called ESC Calibration.

The way I did it the first time, I calibrated each ESC separately. I used my receiver and transmitter to do this. I learned all about ESC Calibration from this link. Truth be told, their page is better than mine. But this will be enough notes for me to repeat it in the future, so away we go. As we go on, remember, on the receiver the signal pin is the pin closest to the channel labels. The positive pin is in the middle, and the ground pin is on the outside.

The Long Way

To calibrate these critters (mine are "Detrum Electronic Speed Controller Brushless Motor 5-18 NC/2-6 LIXX"), here is the process:
1) Hook up the receiver to the ESC to be calibrated. Pick your throttle channel to plug in to, and make sure to plug in to the signal pin.
2) Turn the power on the transmitter on.
3) Put the transmitter to full throttle.
4) Turn the power to the ESC on
You will hear some musical tones first, then two beeps.
Gently slide the throttle all the way down. Wait for a few more beeps (one for each of the number of cells in your LiPo, I've been told.), and then one final longer beep. When the long beep stops, you can use the throttle to control the motor. If it behaves right, it's calibrated. You just taught the ESC how far from the off position to the full throttle position and everything in between.
5) Repeat for each ESC you need to calibrate.

The Easy Way

Once you have all your ESC's in the right region to respond to your transmitter, and you have hooked up your flight controller in its final configuration and programmed it with firmware (Don't worry, we'll get there!), you can do an All-At-Once ESC calibration. This gets all the ESCs programmed to the same level, instead of the small variations that can occur when you calibrate them individually. Note this didn't work for me before I programmed my ESCs individually. The ESCs have to be set near enough to the right range that none of them complain about the input level when you turn it on the first time.

The picture below is what one of my ESCs looks like. It has three wires going to the motor, as it's a three-phase brushless outrider motor. It also has lower power lines going to the Flight Controller, Signal, VCC and GND. It has a linear power regulator inside it. This means it hooks up to the LiPo directly, provides power to the motor through that, but regulates it down to around 5V for the Signal, VCC, and GND lines. You can power your Flight Controller off this power, but the folks at electronics.stackexchange.com suggest you don't do that, as the power out of the Battery Elimination Circuit (BEC) inside the ESC can be noisy, and the linear regulator is wasteful with power.


To do an All-At-Once calibration, simply hook up your flight controller and receiver as described in an earlier post.
Then:
1) Turn on your transmitter
2) Throttle all the way up on the transmitter
3) Turn on power to your quadcopter
4) Wait for musical tones and two beeps (this should happen for each ESC simultaneously)
5) Bring throttle all the way down
6) Wait for some beeps and one long beep to signify the values are written out. The number of non-long beeps you get here is supposed to be the number of cells in your LiPo battery. Worked for me.
7) Test if raising the throttle spins the motors. If it does, you're done. 

The nice thing about this is it calibrates them all evenly, which is very helpful. When I had done them individually, I had some motors that would spin when throttle was barely applied and some that would not. It was obvious that the throttle was not being evenly applied. When I recalibrated all at once, this became even. I think it matters if you have your flight controller firmly mounted in it's final mechanical configuration or not when you do this, but I haven't tested for certain. It seemed to.