Flash Blue Series 12A ESC SimonK Arduino ATMega Tool

12A ESCs are Great for mini quadcopters and spider hexacopters. Many people use Tiger T-motor 12A ESCs or Afro 12A ESCs with SimonK firmware. However these ESCs are often out of stock, so I decided to get some hobbyking blue series 12A ESC, flash them with simonK firmware and give them a try.

One thing about this ESCs, although it states “2S – 3S Lipo”, in fact you can run these ESCs up to 4S.

Get Firmware

Find what firmware you need for your ESC

http://wiki.openpilot.org/display/Doc/RapidESC+Database

Then get the SimonK Firmware here, click “download zip” on the right hand side.

https://github.com/sim-/tgy

Compile .asm File

The SimonK firmware zip file contains many .inc files and some a .asm file, but no .hex file. That’s because you will need to compile the .asm file to generate the hex file. I followed this tutorial to do so.

http://www.rchacker.com/diy/simonk-esc-firmware-flashing

Flash them!

Now we have the .hex firmware file we need, we can now flash the ESCs. I used a ATMEGA flash tool and Arduino Uno to do this. (because I don’t have a USBasp AVR programmer) No need to solder or create cumbersome clip on devices.

Simply connect the socket flashing tool to the Arduino Uno following these connections.

Arduino Uno / Nano

Arduino Pin 10 – SS / Reset
Arduino Pin 11 – MOSI
Arduino Pin 12 – MISO
Arduino Pin 13 – SCK

atmega flash tool pinout

flash-12A-blue-series-ESC-simonk-tool

And cut open the heatshrink on the ESC.

flash-12A-blue-series-ESC-simonK

how to flash ESC with atmega flash tool orientation

The Same way you as your flash the KK2. The Arduino Uno needs to be uploaded with the ArduinoISP Sketch first, you can follow how it’s done in this post.

This is the command I ran.

d:ESC20140519>avrdude -P COM4 -b 19200 -c arduino -p m8 -v -e -U flash:w:tgy.h ex:i

And the output should be similar to this.

avrdude: Version 5.10, compiled on Jan 19 2010 at 10:45:23
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "d:ESC20140519avrdude.conf"

         Using Port                    : COM4
         Using Programmer              : arduino
         Overriding Baud Rate          : 19200
         AVR Part                      : ATMEGA8
         Chip Erase delay              : 10000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page
      Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  Max
W   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ---
-- ---------
           eeprom         4    20   128    0 no        512    4      0  9000  90
00 0xff 0xff
           flash         33    10    64    0 yes      8192   64    128  4500  45
00 0xff 0x00
           lfuse          0     0     0    0 no          1    0      0  2000  20
00 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  2000  20
00 0x00 0x00
           lock           0     0     0    0 no          1    0      0  2000  20
00 0x00 0x00
           calibration    0     0     0    0 no          4    0      0     0
 0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0
 0 0x00 0x00

         Programmer Type : Arduino
         Description     : Arduino
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e9307
avrdude: safemode: lfuse reads as 2E
avrdude: safemode: hfuse reads as CF
avrdude: current erase-rewrite cycle count is -50462977 (if being tracked)
avrdude: erasing chip
avrdude: reading input file "tgy.hex"
avrdude: writing flash (8192 bytes):

Writing | ################################################## | 100% 6.19s

avrdude: 8192 bytes of flash written
avrdude: verifying flash memory against tgy.hex:
avrdude: load data flash data from input file tgy.hex:
avrdude: input file tgy.hex contains 8192 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 9.77s

avrdude: verifying ...
avrdude: 8192 bytes of flash verified

avrdude: safemode: lfuse reads as 2E
avrdude: safemode: hfuse reads as CF
avrdude: safemode: Fuses OK

avrdude done.  Thank you.

5 thoughts on “Flash Blue Series 12A ESC SimonK Arduino ATMega Tool

  1. andres

    gracias por su informacion tengo unos ces 10a red brick los puedo flashear con arduino uno para quadracopter mas especificamente para drone flone

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Are you Robot? *

I only check blog comments once or twice a week, if you want a quick reply you can post your question on this forum IntoFPV.com... You might get a faster response from me there (multirotor related only).