ESC Firmware Flashing, Part 2

I actually finished this a while ago, I just haven’t got around to updating the blog since then. A lot has happened since I updated it…so let’s get into it.

In Part 2 of the ESC flashing, I’m going to add a couple pics on the hardware side of things. From there, it should be easy enough to figure out how to do the software yourself, with the link to BLHeli I posted in Part 1.

To start the process, take a knife or razor blade and split the shrink wrap open. Do this on the flat side, which has the heat sink, which will help protect the ESC from the knife. Go slow, and it goes pretty quick.
 photo 26_1_1301_zpsf8fbe93d.jpg

Each ESC needs three wires (not four, which I soldered on the first ESC). I cut all the wires I needed for the other three ESCs.
 photo 26_1_1302_zps2575b2ab.jpg

Here’s all four of the speed controllers, with the wires soldered on.
 photo 26_1_1303_zpse0509a4f.jpg

The three wires were soldered onto a servo connector, because it was handy, and uses three wires. Any lightweight three pin connector will work fine here, though.
 photo 26_1_1304_zps4447ce56.jpg

I then made a jumper to my Arduino with a female servo connector and a four pin row of male header pins.
 photo 26_1_1306_zps5dc8bf83.jpg

This four pin header with only three pins connected allows the ESC to connect to ground and pins 12 and 11 on the Arduino using only one connector. Pins 12 and 11 are default, but can be changed to any Arduino pin. Once connected, I ran a test to make sure the solder joints were good, and then flashed the speed controller.
 photo 26_1_1305_zpsecb9f4ad.jpg

Finally, you have to shrink wrap, or otherwise protect the ESCs. I choose to use shrink wrap, it’s easy to use. First, cut the wrap to fit over the speed controller.
 photo 26_1_1307_zps051aae76.jpg

Then, with a lighter or torch, shrink it until it fits nice and snug. Keep the heat moving at all times, don’t stop or you’ll melt a hole in the covering. It doesn’t take long, and soon you’ll be done. Who would even know you’ve ever opened it up?
 photo 26_1_1308_zpse0818886.jpg
 photo 26_1_1309_zps4a19f70e.jpg

That’s all there is too it, besides the software.

P.S. If this seems like too much work, there are several places that sell ESCs already flashed with SimonK firmware, and they are only a couple bucks more then buying them stock.

Advertisements

New Soldering Station/ESC Firmware Flashing, Part 1

I mentioned I was going to get a 300W Weller soldering gun for soldering the power wires, and I did, and it was crap. When I powered it up, the tip started smoking and bubbling. Whatever it was coated in, it was not cleaned below the coating (which appeared to be lead or tin). I could have taken off the coating with a wire brush, but why pay for poor quality? Plus, the whole thing felt cheaply constructed. Instead, I sent it back, and ordered the Hakko FX-888 soldering station I’ve been wanting to get for a while now.

 photo IMG_20130112_065341_zps4dee3bbc.jpg
This is what the tip looked like after heating for a short time. It looked worse with continued heating, turning brown and bubbling more.

My Hakko soldering station is 70W, which should be enough to handle almost anything I care to throw at it. It has a nice heft to it, from the transformer inside, and appears to have excellent build quality. The bottom plate is metal, while the sides and top are plastic. It is adjustable from 200°-480°C (400°-900°F), with an on-off switch and a power LED. The LED is somewhat odd in that it only lights when it is heating the element. This means that it will light for about 25 seconds, which is all the time it takes to heat up (at least to 350°C), and after which will only blink occasionally as it slowly pulses the power to keep the tip hot.

The iron holder is made completely of metal, with a built in brass wool tip cleaner, a rubber lip for wiping the tip, and a sponge, allowing multiple ways or preferences for cleaning the tip.
 photo 20_1_131_zpsaec71af9.jpg

The iron is lightweight, yet does not feel cheaply made. The power cord is long enough to cover my entire ESD mat.
 photo 20_1_132_zps4da9c3fd.jpg

The included tip is a 1.7mm chisel tip. I purchased a 5mm chisel tip along with the iron for better conductivity and thermal mass for soldering heat-sucking materials, such as 12 gauge wire.
20_1_133_zpsf427eb5a photo 20_1_133_zpsf427eb5a.jpg

Now, we get to the fun part, something relating to my quad. It’s recommended that you use a custom firmware for your ESC’s on your quad, for a number of reasons. The main one is that the motors will have a quicker response, allowing for a smoother flying quad as the controller can correct an imbalance faster. A close second is that it allows the low voltage cut-off to be disabled. Far better you ruin your Li-Po pack by over discharging it then have your quad crash because the low voltage cut-out shut down a motor on you.

The pads are pretty small and close together. If you’re not comfortable soldering on these pads, you can use a rig that you hold on the pads while flashing instead, however, this is a pain, as further firmware updates will then require you to remove the heat shrink from the ESC again. I decided to go ahead and solder them. I have an Arduino, so that is what I will be using. If you do not, it will be easier for you to get the SiLabs Toolstick for flashing instead of using an Arduino.

I thought I needed all four pads, but it turns out I only need three. I will remove the fourth wire before I shrink wrap the ESC again. The wires will terminated in header pins, for ease of future firmware updates or setting adjustments.

The first step is to tin the pads. This was relatively easy.
20_1_134_zpsd95fac14 photo 20_1_134_zpsd95fac14.jpg

Next, I stripped and bent hookup wire at a 90° angle, tinned it, and soldered it in place by heating it up.
20_1_135_zpsca01a4c5 photo 20_1_135_zpsca01a4c5.jpg
20_1_136_zps633d5405 photo 20_1_136_zps633d5405.jpg

To get a true feeling of the scale of this soldering job, I’ve placed the tip of a medium point ballpoint pen next to the wires, as well as laid the pen next to the ESC.
20_1_137_zps957e270f photo 20_1_137_zps957e270f.jpg
20_1_138_zpse8cee42f photo 20_1_138_zpse8cee42f.jpg

Finally, I hooked it up to my Arduino, and successfully flashed the BlHeli firmware onto the ESC.
 photo 20_1_139_zps6536d8a2.jpg

How to flash it with an Arduino, and more on the custom firmware, will be covered in a later post. Also, I have the firmware on the Naze32 flight controller updated. Once all four ESCs are in place, testing on the Naze32 begins, at which point the quad will be getting close to its first test fly…