Thread Tools
Nov 03, 2007, 02:39 AM
Registered User
Thread OP
Build Log

Converting TowerPro 25A type 2 ESC's from PWM to TWI/I2C control

@All, This is intended as a conversion manual, not as a dicussion thread. For those who want a version with the pics more full size, and printable, the manual is availabel as a 1.8MB PDF file.


Multirotor platforms such as the Mikrokopter (, Big Quaddro (, or UAVP ( require a very high rate of updating motor throttle settings. Most commercial ESCs are not capable of accepting PPM (PWM) pulses at a rate of more than about 150/sec. Multicopters are more stable if rates of approx. 300/sec can be ensured. This has led to the design of several ESCs which use the Two Wire Interface (TWI or I2C) between the microcontroler based avionics of these systems and the speed controlers. Best known example are the Holger speed controlers (see Originally these were limited to 5A continous, 10A peak power. Current versions can handle 10A continuous and 20A peak power. Their price is vey reasonable. However, some users have found the manual assembly with SMD parts difficult.
So far only YGE ( offers commercial ESCs which have a TWI/I2C interface at power outputs up to 30A (YGE30i ESC). These can be integrated into the UAVP system, but use a slightly different software interface than the Mikrokopter (e.g. YGE throttle values 0..120, MK throttle values 0..255), and thus require changes to the MK software before they can be used.
Another approach to developiong TWI/I2C capable and affordable ESCs has been pioneered by Quax (Bernhard Konze) and several others, based on conversion of low priced commercial ESCs from PWM to TWI/I2C control. One of the most popular conversions has been the Arkai or TowerPro 17A ESC. TowerPro also offer a 25A ESC which is very similar to the 17A.
Attached the schematic of the 25A type 2 (as adapted from the schematic for the 17A; there may be some minor differences with the actual ESC such as the number of BEC regulators).
Here a pictorial guide to converting a TowerPro 25A ESC type 2 (marketed since approx. Sept 2007) from normal PWM control to control via the TWI/I2C interface.
Last edited by Arthur P.; Nov 03, 2007 at 01:11 PM.
Sign up now
to remove ads between posts
Nov 03, 2007, 02:40 AM
Registered User
Thread OP
From the side with the sticker there is no difference between the TowerPro 25A type 1 or 2 ESCs.
Nov 03, 2007, 02:41 AM
Registered User
Thread OP
Note the spead of bulges on this 25A type 2. On the type 1 all bulges are concentrated to the left of the W sticker near the capacitator.
Nov 03, 2007, 02:42 AM
Registered User
Thread OP
TowerPro 17A and 25A ESC types, conversion guides, and firmware files
Note that this guide is for the newer type 2 ESCs which came to market from approx. September 2007 onwards. The older type 1 version had a slightly different layout, but in other respect were similar. Externally, in their yellow heatshrink, they are identical unless your recognize the different pattern of bulges due to the different location of voltage regulators on the processor side.
A conversion guide for the TowerPro 17A ESCs, which have an identical layout and for which the same conversion applies can be found here: (in German but with pics, so probably reasonably understandable, certainly if held next to this guide). is also the location were the firmware files needed for the conversion of both the type 1 17A and 25A, and the type 2 25A ESCs can be found. At this time the most current version of the ZIP file with source code and the compiled HEX files is:

Please note that there are some other ZIP files there for several other types of ESCs. You need the correct file. Using an incorrect file may damage the ESC or motor !!!

So again for the TowerPro 25A type 1 and type 2 ESCs you need a file (## denoting the version number) for controling them over the TWI/I2C interface. Other interesting files could be the, which allows to resinstal PWM based control.
Nov 03, 2007, 02:45 AM
Registered User
Thread OP
Tools and materials needed for the conversion
To perform the conversion of these ESCs you need the following:
  • TowerPro 25A type 2 ESC (multiple sources and different brand names; my source: in Hong Kong).
  • Small sharp siccors
  • Very thin, isolated wire. I still had some old wire wrapping wire lying around which is ideal for this purpose. The wire with plastic coating should not be much wider than a microprocessor leg, and the bare wire should not be wider than a processor leg.
  • Thin tipped soldering iron (doesn’t have to bey anything fancy. I use a very simple Antex M12 12Watt iron without any controls).
  • Wet sponge with the soldering stand.
  • Thin soldering tin intended for use in microelectonics.
  • Desoldering wick (just in case you e.g. bridge some processor legs).
  • Pointed tweezers (preferably the type which close when you release pressure.
  • Microdrill with a small (e.g. 0.5mm) drill.
  • Some foam double sided tape.
  • Some clear solvent free varnish (e.g. one of those small bottles for hobby painting).
  • Strong magnifying glasses. If you can find them and can work with them, stereo magnifying glasses could be seriously considered.
  • Good lighting (one of those hobby lamps with large built in magnifying glasses is ideal).
  • Clean workspace.
  • Printout of critical pages of the manual (always easier to check things off on paper than on a screen, or to even have a critical pic under your work to make sure you do what you see).
  • Simple small volt/multi-meter. Mine is very small, and cost less than 15 Euros. You do need small thin tipped measuring leads to be able to accurately measure resistance or voltage between different processor legs.
  • SerCon serial converter ( or other ISP programming interface and computer with which you can reprogram the ESC.
  • Software for programming ATMega8 chips, e.g. the free PonyProg (
  • ZIP file with firmware and settings for the ATMega8 fuse bits.
  • Patience !!! Do not hurry. Converting an ESC is microsurgery. Hurry and the “patient’ may die. And mistakes can cost you more than just an ESC. I-ve burned a motor or two due to mistakes.
Nov 03, 2007, 02:46 AM
Registered User
Thread OP
Tips for soldering wire to SMD mounted parts and processor pins
To solder wire to the processor pins the technique I-ve found to work best is to carfully coat the target processor pin and the bare end of the wire with a thin layer of solder.
First clean the tip of the solder iron on your wet sponge. Then just nick it to the solder so that there is a VERY SMALL drop of solder on the point (should be hardly visible, otherwise it is too much). Carefully touch the correct processor pin with the tip of the soldering iron moving up and down along the leg to coat it. Take care not to bridge solder to neighbouring legs. Carefully inspect your work. If in doubt aboutsolder bridges, get out the desoldering wick, soak them up, and redo this step.
Now clear 1-2 mm of the end of the wire and give that a very thin coat of solder. Cut it back to 0.5 to 1mm bare wire and bend it in such a way that you can comfortably push it up against the leg so that most of the non-isolated part is flat against the leg. If necessary use tweezers to hold the wire, but don't use them too close to the end as the might bite into the heated plastic coating (keep at least ¾ of a cm away from the tip).
While pushing the wire against the processor leg, just tip it with the soldering iron. That should melt the solder on both the wire and the leg and result in a good bond. Wait a little for the solder to cool down.
Inspect the bond under magnifying glasses. The bond should be over most of the length of the wire tip. If it;s just a small portion it will come loose at some point which might result in a serious failure.
Nov 03, 2007, 02:48 AM
Registered User
Thread OP
The actual conversion of TowerPro 25A type 2 ESCs to TWI/I2C control
First cut away the heatshrink. Best to do this along the side or over the metal plate on the the side whith the sticker. That way there is no risk of damaging any parts.

Note that for our purposes the sticker on the heatschrink is actually on the back side of the ESC, the side with the metal plate heat sink.
Nov 03, 2007, 02:49 AM
Registered User
Thread OP
After removal of the heat shrink the topside of the type 2 ESC is clearly recongisable. this type has a second PCB with 4 voltage reguloators connected to the main PCB with 3 bare wires.
Last edited by Arthur P.; Nov 03, 2007 at 09:40 AM.
Nov 03, 2007, 02:51 AM
Registered User
Thread OP
Carefully fold back the voltage regulator PCB. Avoid bending it back and forth too much as this will sever the three wires connecting it to the main PCB. Try and keep it in approx. the same position throughout your conversion.
Nov 03, 2007, 02:56 AM
Registered User
Thread OP
Of course, if you are certain you are not going to use the 5V BEC power supply from the ESCs, you can consider removing the voltage regulator PCB. Personally I find that a waste. It doesn’t hurt to leave it in place. And it gives you the option of using the BECs. But do note that if you use the BECs for additional 5V power to a system which already has a 5V power suppply, you must put a sufficiently large Skotschky diode in between the BEC and the system’s 5V rail.
Nov 03, 2007, 02:57 AM
Registered User
Thread OP
For the TWI / I2C interface we need at least the SDA and SCL lines and a common ground connection between the system and the ESC. As supplied the SDA pin is in use as an analog converter. So we have to disconnect the input from that pin and move it to the ADC1 pin. See more on this two paragraphs down.
For reprogramming the microcontroler we also need to bring out an ISP interface consisting of MISO, MOSI, SCK, RST, 5V and GND lines. For the RST lines we are picking that off of the end of a resistor instead of the pin next to the SCL pin. Soldering three wires next to each other on processor pins is just a bit too challenging if not needed.
The most difficult part of the conversion is to move an analog digital conversion port from the SDA pin to the ADC1 pin of the processor. To do this you must drill through a pad between two resistors and deep enough to completely disconnect a connection going through the PCB (but not drill completely through the PCB). See the little blue circle in the picture above which identifies the pad betwen the two resistors you have to drill through. You then have to put in a little bridge between the two resistors which have now been disconnected from each other, and connect that bridge with the ADC1 pin. This is going to be the first step in the converions process.
Last edited by Arthur P.; Nov 03, 2007 at 09:39 AM.
Nov 03, 2007, 09:41 AM
Registered User
Thread OP
Take your time to drill away the pad and the through connection. You do NOT want to damage other pads or connections. Inspect your work carefully under a strong magnifying glass with good lighting.
Nov 03, 2007, 09:42 AM
Registered User
Thread OP
If you are sure the through connection has been completely disconnected from the pad between the resistors, clean the ESC with compressed air / a dry brush.
Stop and do a more scientific check now.
With a voltmeter check the resistance between the two resistorends adjacent to the hole and the top end of resistor at the bottom left in the pics. The left of the two should show 0 Ohm, and the right should show no connection.
Also check the resistance between these resistor ends and the SDA pin on the processor. All should show no connection.
Once this checks out OK put a little drop of some clear varnish into the hole to make sure that no accidental reconnection can occur. Make sure you don't put varnish on the resistor ends.
Nov 03, 2007, 09:43 AM
Registered User
Thread OP
Once the varnish is dry you can solder some very thin wire over the two resisotor ends to create the jumper bridge, and then very carefully onto the ADC1 pin of the processor. Carefuly insect these connections for unwanted solder bridges to neighbouurng resistors or pins. If necessory bring out the desoldering wick, such up the excess and redo.
Also redo the measurement of resistance between the solder bridge / ADC1 pin and the SDA pin. There should be no connectino.
Nov 03, 2007, 09:45 AM
Registered User
Thread OP
Solder the MOSI, MISO and SCK lines to the respective pins. These are quite simple connections. Make sure the wires do not push down on the already installed wires wihile soldering as this may meld the insulation and result in later short circuits.

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 05:38 PM
EBAY Brushless Motor & 2 ESC's S Anastasio Aircraft - Electric - Airplanes (FS/W) 0 Aug 12, 2002 06:41 AM
WTB: 2 Hitec Feather Recievers and 2 ESC's Ryan Nau Aircraft - Electric - Airplanes (FS/W) 6 Jul 03, 2002 07:13 PM