Joomla 3.2 Template by webtemplatesbox

User Rating: 5 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Active
 

Flashing ESC RCTimer 20A

First thing first...Disclaimer

THE SOFTWARE AND HARDWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

Electronic Speed Controller (ESC) is used to vary the speed of an electric motor.

The ESC that i bought for my Quadcopter is RC Timer 20A and uses an ATMega 8 MCU as controller. By default the MCU is clocked at 16MHz without external oscillator which means that the frequency will drift with the temperature up to 15%.

Another thing is that the standard ESC  are not designed for multirotor applications, so their performance for a Quadcopter is not great. giving these facts i have decided to update the firmware of my ESC's with the one provided by SimonK to improve the performance from the software point of view, but in order to have a stabilized oscillator i have decided to add to my ESC's also a 16MHz crystal that i soldered on the MCU contacts as shown in the picture below. 

Flashing an ESC can help improve your motor's overall performance and therefore improve the flying capabilities of your Quadcopter. 

ESC RcTimer 20A ISP Connections

 

In order to flash the Firmware to the MCU i have tried several software's that are used by the community for this job, but unfortunately for me they did not work.

DO NOT SOLDER THE CRYSTAL BEFORE FLASHING, IT WILL NOT WORK!!!

BACKUP your EEPROM and Flash using "READ" buttons before flashing new firmware.

Because i have flashed before similar MCU's i decided to apply the ATMega328P - Burning bootloader for the ESC flashing...and it worked like a charm.

To do this connect the pins shown in the ESC RcTimer 20A ISP Connections to an Arduino board like shown in the link, then with AvreDude-GUI select the "Programmer", "Device" and type "Command line Options" like shown in AVRDUDE BitbBang Method image, then click on "READ" from "Fuse" nad "Lock Bit" (the values will not be like in the image). If they are read then the connection is working, if not check your wiring. Next click on "Chip Erase", after select the "tgy.hex" file in "Flash" field and finaly "Erase - Write - Verrify". After the process is finished type in the values foe "Fuse" if you want to change them and click "Write".

Without external oscillator: avrdude -U lfuse:w:0x24:m -U hfuse:w:0xda:m

With external oscillator: avrdude -U lfuse:w:0x3f:m -U hfuse:w:0xca:m

After the firmware flashing is done solder on the pins of ATMega 8 the assembly of crystal and capacitors and you have a working ESC with external oscillator.

 

 AVRDUDE BitbBang Method

 Connect your ESC to the motor and receiver and calibrate the Min&Max throttle using a limited current source like a 9V battery,, if it works the 

To Do:

1. Reflash the Quadcopter controller and test it at 20MHz and why not at 24MHz

2. Reflash the Quadcopter ESC's and test it at 20MHz and why not at 24MHz

hostgator

Who's Online

We have 45 guests and no members online

Site Search

Tuesday the 30th. Author: Ion GROZEA.