Converting TowerPro 25A type 2 ESC's from PWM to TWI/I2C control - Page 2 - RC Groups
Thread Tools
Nov 03, 2007, 10:48 AM
Registered User
Now connect the SDA and SCL lines to the microcontroller. They are a bit more difficult due to the voltage regulator PCB. I have found that bending the end of the wire a bit, and having SCL go to the top, and SDA to the bottom is easiest.
Carefully inspect all connections to the processor pins under the magnifying glasses. If you have any doubt about soldering bridges, bring out the desoldering wick, suck up, and redo. Also make sure the bonds have some length so that there is little or no risk of them coming loose later.
Last edited by Arthur P.; Nov 03, 2007 at 01:22 PM.
Sign up now
to remove ads between posts
Nov 03, 2007, 01:23 PM
Registered User
Connect the wires to the identified pads for 5V and GND, and to the end of the resistors where we are picking up the connection to the RST pin. Very simple. Consider a little bit of varnish over the 5V pad to further ensure proper insulation from the SDA and SCL lines.
Nov 03, 2007, 01:25 PM
Registered User
You now have three options:
  1. Connect the wires needed for programming to your programming connnector, reprogram the processor, and remove these wires retaing only the wires needed for the TWI/I2C interface and their connectoin to a connector cable of your choice. This does mean less ďspaghettiĒ retained in the ESC. However if new firmware comes out you will have to redo part of the microsurgery.
  2. Connect the programming wires and the TWI/I2C wires to a scrap of prototype board to which you permanently connect the TWI.I2C connector cable and temporarilly connect the ISP connector. This is my prefered approach. It adds little weight, reduces tension on the micro-wires, and does not require all the microsurgery to be redone for upgrading firmware.
  3. Same as b) but with a permanent ISP connector included. This might be worthwile when you are yourself actively developing firmware but otherwise results in a too bulky ESC.
Nov 03, 2007, 01:27 PM
Registered User
I use foam double sided tape to keep my small scrap of prototype board with 8 pads in place. As this sits over the motor-power lines you first have to put two double height pieces in between the wires, and then a full length piece on the bottom of the padboard. I purposefully have kept that wider than the padboard as it helps ensure the board is kept well in place, ensures it is properly isolted from the motor power wires, and may help reduce tension / friction on the thin wires.
Nov 03, 2007, 01:29 PM
Registered User
From top to bottom the pads are: SCK, RST, MISO, 5V, MOSI, GND, SDA, and SCL.
Carefully shorten the thin wires to such a length that the can be routed easilly between the larger parts on the PCB and brought up to the level of the pad board without stress.
Nov 03, 2007, 01:30 PM
Registered User
Spaghetti, or blue worms, whichever is your fancy. But hey, if it works, why not use it ;=)) If possible do not run the wires parallel to each other too much. Better to have more them cross at angles. Check the pads for solder bridges.
Nov 03, 2007, 01:31 PM
Registered User
Connect the TWI/I2C cable. I use thin twisted servo wire: Brown = GND, Red = SDA, Orange = SCL. At the servo connector end the same sequence is maintained.
Note the small scraps of doublesided foam tape on the bottom of the voltage regulator PCB. This may help reduce the risk of friction eventually going trough the covering of the thin wires.
Nov 03, 2007, 01:32 PM
Registered User
Fold the voltage regulator board back down taking care to lead the TWI / I2C connector cable over the voltage regulator board. The foled back board should not be touching any of the thin wires with its edge.
In this image I-ve also already connected my programming connector. See the color code description in the picture for the different connector cables.
Nov 03, 2007, 01:33 PM
Registered User
I-ve found a Multiplex battery connector to be the ideal ISP connector: 6 pins, and no risk of incorrect connection. As you can see from the colours, the layout (seen from the rear of the connector is:
.........2) RST 4) 5V
1) SCK..................6) GND
.........3) MISO 5) MOSI
Last edited by Arthur P.; Feb 10, 2008 at 09:03 AM.
Nov 03, 2007, 01:34 PM
Registered User
Note also that if you havenít done so yet, you now have to connect the motor and battery connectors to their respective wires, and put heatshrink around them. I use 3mm banana plugs for both the motor conectors and for the power connectors. They should be able to handle up to about 35A which exceeds the specs of the ESC. For heavier ESCs I prefer 4mm banana plugs for the power connectors.
Nov 03, 2007, 01:35 PM
Registered User
Oops... missed a step here: Do NOT connect all sorts of stuff to the ESC. Consider using a limited power stabilised 10-12V power supply and not a precious lipo. Also consider some sort of a fuse in the powerline, such as a car lightbulb which should burn through if the power draw is too high.
First connect only the power source and check that you indeed have 5V between the 5V and GND pad. If that is the case, then you can connect your programming interface. In this case I-m using a SerCon (serial converter) from the Mikrokopter site ( Note that the red jumper on the Sercon is set to pogramming mode and eht green LED is on indicating that the SerCon is getting its 5V power over the ISP interface.
Start up your programming software, e.g. the free PonyProg program ( I-m not going to go into great depth about the interface of that. It has itís own tooltips and helpfiles.
Now go to the firmware ZIP file (e.g. and unpack that if you havenít done so yet. In the root directory you shold find a GIF image with the fuse bits.
Nov 03, 2007, 01:36 PM
Registered User
Set the bits as shown, and write them to the ESC. If this works, then you know youíve probably got a success on your hands ;=))
Nov 03, 2007, 01:36 PM
Registered User
Now op the HEX file you need. Below the root of the unpacked ZIP file you will find a subdirectory ďhexĒ. All four files in this subdirectory have filenames like bl-17a_r##_p40_m#.hex, where ## denotes the firmware version number, and the last # denotes the motor number. Make sure you open the right file for the motor number you intend to use the ESC for.
On the Mikrokopter, seen from the top, the motors are numbered:
.........1) Front
4) Left.........3) Right
.........2) Rear
Write the HEX file to the ESC. This normally is followed by verification. Due to a bug in PonyProg and/or the SerCon interface I always get an error message on the verifcation. There seems to be a change needed to some INI files which corrects this, but I-m a bit lazy....
Disconnect the ISP plug and power down the ESC.
Nov 03, 2007, 01:40 PM
Registered User
Testing the converted ESC (e.g. with the Mikrokopter and MKTool)
This section is rather Mikrokopter specific but is hopefully general enough for others to also be able to follow it as a guide.

Make sure the MK controler / motor / frame are securly fastend to e.g. a teststand. You donít want things sudding going airborne. Make sure the props of any of the connected motors cannot hit anything.

Connect the MK to the computer via the serial interface and startup the mikrokopter setup tool.
Connect the TWI/I2C cable to the mikrokopter controler, power lines to the 11V power rail, and motor connnectors to a test motor. And yes, consider using a limited power source, or a relatively low amp fuse in the power lines when testing. One time I didnít and literally burned a motor due to an error I had made in the conversion (lost the connection between those three resistors :=(( On the bright side, it was really a test motor which I wasnít to sure about using for real flight ;=))
On applying power to the power-rail the ESC should have powered up giving a little beep and prop wriggle if it programmed correctly. If not do another attempt at setting the fuse bits and reprogramming. I-ve found that usually programming is OK straight off, but sometimes I need 2 or rarely 3 attempts.
If the ESC beeped happilly, turn the Mikrokopter flight controler on and wait until it beeps and shows a red and a green light (connected to the SerCon so no receiver input). You should see sensor values becoming active onscreen. Go to the motor tab and click the motortest checkbox. Carefully increase the throttle slider for the motor number you are testing.
If all went well the motor should start turning regularly at a low throttle setting. Donít move the throttle slider too quickly there is a delay between computer and MK. You donít need sudden jumps in throttle.
Throttle down, disconnect everything, sit back and grin happilly: you have a successful conversion !
Nov 03, 2007, 01:41 PM
Registered User
Finalizing the conversion

Disconnect the programming interface wires. Make sure the thin wires remain correctly in place and no soldering bridges develop. Of course leave the TWI/I2C interface connector. If you are sure you donít need the BEC at this time you can consider removing the normal servo connecotr wires. Iím lazy, so I just leave them in place....
Cut a piece of heatshrink about 2cm longer than the ESC + capacitator.

Quick Reply

Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
2 Electro Fusion Motors & CC esc's from Coronas for sale mthomson Aircraft - Electric - Airplanes (FS/W) 7 Mar 18, 2004 07:13 AM
FS- FMA M5 dual conv Rx and 2 esc's- all NIB Etonic Aircraft - Electric - Airplanes (FS/W) 3 Nov 17, 2003 02:27 PM
How do I hook 2 esc's into 1 receiver ? Al P Power Systems 2 Aug 30, 2002 06:38 PM
EBAY Brushless Motor & 2 ESC's S Anastasio Aircraft - Electric - Airplanes (FS/W) 0 Aug 12, 2002 07:41 AM
WTB: 2 Hitec Feather Recievers and 2 ESC's Ryan Nau Aircraft - Electric - Airplanes (FS/W) 6 Jul 03, 2002 08:13 PM