Thread Tools
Oct 21, 2013, 07:07 AM
AMA 697691 / FAA 13675
Thread OP

Witespy RTF32 ESCs for Multiwii, NAZA, APM2.5, and OpenPilot


The ESC32 designed by Bill Nesbitt can also be applied to 8-bit Multiwii and APM controllers. Just how much improvement this provides is currently beyond my knowledge. The goal of this thread is one of my favorites for multi-rotor copters - discovery!

While the AutoQuad group seems to be the largest user of ESC32, and has the best documentation, the Open Pilot group has a similar design called the STM32 ESC. My initial goal here is to try the 32-bit ESC design on an 8-bit Multiwii configuration and see if the benefit is worth replacing my SimonK-flashed ESCs. In theory, these ARM-based 32-bit ESCs will increase the handling and stability of any multirotor system by a significant amount. The RTF32 ESC sold by ReadyToFlyQuads is a clone of the ESC32 with some of the interfaces omitted.

The next post will contain a Q&A section with links that I have found. My presumption is that this is an open source (public beta) effort and we will be helped by those with greater knowledge and experience. My goal of discovery is to broadcast information from my efforts (and this thread) to the portion of the MRC community that does not use the higher end flight controllers and see if this new ESC provides significant benefit to either Multiwii or APM2.5 controllers.
Last edited by Greg Covey; Mar 22, 2014 at 12:19 PM.
Sign up now
to remove ads between posts
Oct 21, 2013, 07:09 AM
AMA 697691 / FAA 13675
Thread OP

Links and Q&A

AutoQuad ESC32 v1r5 Blog by designer Bill Nesbitt
AutoQuad ESC32 v2 Blog by designer Bill Nesbitt
AutoQuad ESC32 Manual
AutoQuad ESC32 Wiki
AutoQuad Ground Control Station
Command Line Interface (CLI) by Max Levine - The CLI has been expanded and gives you access to all tunable parameters via the UART port.
ESC32 Repository
ESC32 Change List
Putty Serial Terminal
AutoQuad, AQ Ground Control, and ESC32 Downloads

Question 1: What benefit does ESC32 provide for my (8-bit) Multiwii controller ? The answer to this question is the reason for starting the thread. Will we see a benefit worth replacing SimonK-flashed ESCs?

Originally Posted by IFLYOS
I have a few minutes, so I am gonna share my impressions here..I have already done so on the podcast, so why not?

These things are amazing, plain and simple. Setup is not hard at all, if you have ever used a multiwii gui. Even setting up the closed loop side isn't hard, just do it in a controlled environment.

The first thing you notice is that the motors sound different. To me they sound smoother, and more quiet. They also respond faster, and "lock in" faster. Though I haven't timed it yet, I also feel like the run time is better.

When running in open loop mode, they are impressive enough, especially if you are flying a well tuned multi, but where they really shine is in closed loop mode. Basically, closed loop means you have PID settings on each speed control, and the PWM signal to the ESC is interpreted as an RPM request. The speed control then tries to maintain the speed, within the limits you set (current, etc.) in the speed control.

This makes for an incredibly stable system! So much so that you can introduce a "swinging CG" like Witespy does, and the multi still performs great! When using closed loop mode one the ESC's and running in angle mode with multiwii, you will have a rock solid machine. I am not recommending anyone try this, but you can even bump your multi and it will stabilize so fast it's almost impossible to believe.

With the adjustability of these controls, and the great price, I don't know why anyone would want to use anything else, especially if you are into FPV or AP. You can have a really solid platform if you are willing to put a little time into tuning.

I would suggest starting in open loop mode, and get used to them, and get your multi flying right, then move on to closed loop mode. If you do it this way, then you minimize the "tuning confusion" that could result from having so many adjustments available.

Question 2: What is QGroundControl ? QGroundControl (or QGC) is the Open Source Micro Air Vehicle Ground Control Station and Operator Control Unit. QGroundControl is based on PIXHAWK's Groundstation and is now developed in a joint effort with the community (public beta). QGroundControl's main interface protocol is MAVLink, a binary, serial stream protocol which QGroundControl can receive over UDP or serial links (radio modems).

See post #7 below for details on the AutoQuad version of QGC which contains a special tab for configuring the ESC32.

Question 3: What setup is required for RTF32 operation? ReadyToFlyQuads has added a series of ordering options that eliminates any need for setup other than changing the PWM_MIN_PERIOD in Multiwii and APM to 2000 or the PWM_MIN_VALUE in NAZA to 900.

For OpenPilot/CC3D:
Originally Posted by Cc3dpilot
  • Pwm_min_period 2000
  • Pwm_min_value 750 just like in Arducopter and MultiWii
  • Then adjust low / high output slider settings from 1000-1900 to 900-1900 .
  • Once this is done, press save, and the green lights will come on.
  • Setting neutral spots at 1094 worked perfect for me.
From the manual:In most cases (especially when using LiPo batteries larger than 3S) it is recommended to power the ESC MCU with 5V from the PWM or UART interface – either from an external regulator or a UBEC hooked up to the servo rail on your FC or receiver. Selecting 5V, also means you can power up the logic side separately when flashing firmware or altering settings over 1-wire or UART interfaces, without the need to power up the motors.

However, it has been our experience that powering an external UBEC to the FC and a three wire servo wire to each ESC32 is fine since power is being applied and removed all at the same time. I can't say this is recommended but it hasn't been an issue on 3s or 4s Lipo packs.

Question 4: Do I need to calibrate the ESC32 before operation in my MRC ? It appears not. Read the AutoQuad ESC32v2 Blog above by designer Bill Nesbit. The closed loop RPM mode and virtual current limiter calibration are optional advanced features of the ESC32. You can simply use it without calibration in open loop mode.

Warning: When calibrating the ESC in the wrong place without precautions, bad things can happen when calibrating big motors & props.

Question 5: What is the current capability of the ESC32?
Designer Bill Nesbitt comments on the current capability in his AutoQuad ESC32 v2 Blog. See paragraph nine.

He basically says that with large heat sinks you could probably run them over 50A continuous, but without any heat sinks the limit will be significantly less. I have seen it suggested, that without any heatsink, it is best to mount them in the prop wash. Without a heatsink and some air cooling, the ESC32 can be used in 2s-5S applications up to 30Amps.

Question 6: How do I reflash the ESC32?
If you buy the RTF32 ESCs from ReadyToFlyQuads, there is no reason to reflash the firmware. However, if you need to reflash, the instructions from the AutoQuad Wiki are here. When reflashing the ESC32, here are a couple of things that are not in the manual.
  • Select speed 57600 when flashing
  • Use version 1.4.3 r27 build 5306 hex file here
  • You need to have the boot jumper connected all the time from initial power-up until the firmware flashing is done
  • Change PWM_MIN_PERIOD to 2000 (MWC & ArduCopter)
  • Change PWM_MIN_VALUE to 900 ( Naza v1)

Question 7: Where should I mount the ESC32? It is best to mount them away from the flight controller and near the motor so they can get cooling from the prop wash.

Question 8: What limitations will I have if I use the Vb option to power my ESC32? The Vb option powers the ESC32 from the main Lipo battery so it should not be used when the main flight battery is above 3s. Using the V5 option means that the ESC32 is powered from the servo lead, usually by an external BEC. This opens the way to using a 4s-5s setup and allows you to power up the logic side separately when re-flashing the firmware and configuration settings without powering up the motors.

Question 9: What are the dimensions and weight of the ESC32? The RTF32 ESC dimensions are around 34mm by 25.6mm and it weighs a little over 7g.
Last edited by Greg Covey; Mar 19, 2014 at 11:36 AM.
Oct 21, 2013, 07:20 AM
AMA 697691 / FAA 13675
Thread OP
My discovery project uses the v2 RTF32 ESC from in the USA. I have also seen similar ESC32s at FLYDUINO and Viacopter in Europe.

My initial setup included soldering the supplied capacitor to the board power leads and adding three bullet connectors to the board so that I could easily swap motors under test for calibration. My understanding is that the ESC32 has a calibration routine that is run with the appropriate motor, prop, and Lipo pack so a "safe room" is needed for protection. At this time, I do not know if the calibration is required.

Note that I also soldered a 6-pin header on the RTF32 so that my FTDI adapter can be installed without interfering with the 3-wire control cable to the receiver.

Also note that since I tested my initial RTF32 ESCs, ReadyToFlyQuads has added a series of ordering options that eliminates any need for setup other than changing the PWM_MIN_PERIOD in Multiwii to 2000 or the PWM_MIN_VALUE in NAZA to 900.
Last edited by Greg Covey; Jan 01, 2014 at 05:05 PM.
Oct 21, 2013, 11:00 AM
AMA 697691 / FAA 13675
Thread OP
I mounted my wired setup to a box used in a previous project that held a 7000 watt motor for testing my 42% electric-powered Ultimate biplane. It's fun to reuse existing test stations and remember the older projects. For those that want to see this giant-scale electric conversion, you can view my article here.

My initial bench test of the RTF32 ESC was successful. The AutoQuad manual has some excellent tips for safety and getting started. One of the tips was to use a current limited supply on the initial power test to verify your soldering.

After first turning on the transmitter and providing the regulated 5v power to the ESC and receiver, I waited for the green light to come on before connecting the current limited 10v supply. The connection was uneventful so I moved the throttle stick up and the motor started spinning nicely! After only a few moments, I realized that I could not detect any step size change as if I had an analog control to my motor speed. My initial feeling was that this design must make an improvement to any flight controller.

Note: It turns out that calibrations are only needed when using the more advanced closed-loop mode.
Last edited by Greg Covey; Nov 10, 2013 at 08:37 AM.
Oct 21, 2013, 12:55 PM
AMA 697691 / FAA 13675
Thread OP
The final stages of my setup included clamping and strapping the box to a work bench before mounting the prop. My home gym room will provide the "safe room" for testing.

Initially, I'm using a 4s 4AH Lipo pack and a 10x5 GF carbon/nylon prop on an NTM 35-30, 1100kv, motor. A small 3s Lipo feeds the UBEC for 5v to the ESC and receiver. Motor direction is clockwise.
Last edited by Greg Covey; Oct 21, 2013 at 01:06 PM.
Oct 21, 2013, 05:10 PM
AMA 697691 / FAA 13675
Thread OP
I made a short test video after changing to an RC Timer 10x5 carbon prop. Everything seemed to work well so I'll get into the setup change next needed for Multiwii and Arducopter.

Note: It turns out that calibrations are only needed when using the more advanced closed-loop mode.
(1 min 25 sec)
Last edited by Greg Covey; Nov 10, 2013 at 08:37 AM.
Oct 22, 2013, 06:02 PM
AMA 697691 / FAA 13675
Thread OP
There are several ways to program the ESC32. One is using the CLI with a terminal program like Putty. Here are the available parameters that can be programmed. Don't change a value unless you know what you are doing!
  • PTERM 0.250
  • ITERM 0.00060
  • MAX_CURRENT 20.0
  • ADVANCE 10.00
  • SERVO_DUTY 16.0
  • SERVO_P 0.05
  • SERVO_D 0.0
  • SERVO_MAX_RATE 1000.0
  • SERVO_SCALE 360.0
  • PWM_LO_VALUE 1000
  • PWM_MIN_START 1100
  • PWM_MAX_VALUE 2250
  • PWM_HI_VALUE 1950
  • PWM_MAX_PERIOD 25000
  • PWM_RPM_SCALE 6500
  • CL1TERM +0.00000e+00
  • CL2TERM +0.00000e+00
  • CL3TERM +0.00000e+00
  • CL4TERM +0.00000e+00
  • CL5TERM +0.00000e+00
  • FF1TERM +0.00000e+00
  • FF2TERM +0.00000e+00
  • MAX_PERIOD 12000
  • SWITCH_FREQ 20.0
  • BAUD_RATE 230400
If your a GUI a fan like me, then the modified version of QGC by AutoQuad makes programming the ESC32 much easier!

First, to program the ESC32 using either method, you need to first get it into bootloader mode. The AutoQuad manual describes this procedure very well. In fact, all the AutoQuad documentation is professional quality!

You need to jumper the esc to make it in bootloader mode. The red light must not be flashing for bootloader mode. No lights means it is in bootloader mode.

For Multiwii and APM 2.5:
In the ESC settings in the qGroundControl program, change PWM_MIN_PERIOD from 2200 to 2000.

The PWM_MIN_PERIOD is the minimum period in microseconds that the ESC will consider an input PWM waveform to be valid. The default value of 2200 represents approx 450Hz. For MultiWii and ArduCopter APM this value needs to be changed to 2000!

In config.h, change:
#define MINCOMMAND 900
Latest blog entry: Greg's Web Hangar
Oct 22, 2013, 09:26 PM
James not bond
jy0933's Avatar
do you have measurement of how much current being drawn by 5v port (feeding from external souce)? it will be helpful to determine how big the bec should be for them.
Oct 23, 2013, 07:08 AM
AMA 697691 / FAA 13675
Thread OP
Not yet but I'll get it and report back.
Latest blog entry: Greg's Web Hangar
Oct 23, 2013, 04:20 PM
AMA 697691 / FAA 13675
Thread OP
I measured about 80mA total for the UBEC, AR6110 receiver, and ESC32. When I pulled out the control line to the ESC32 the current dropped to about 20mA for just the UBEC and receiver so that would be about 60mAh per ESC32 on the 5v side.

I thought it might change when I powered up the main 4s Lipo supply and started spinning the prop at low RPMs but it remained the same.
Latest blog entry: Greg's Web Hangar
Oct 23, 2013, 04:22 PM
James not bond
jy0933's Avatar
thanks greg.. that's quite a lot of current tho
Oct 26, 2013, 07:33 AM
AMA 697691 / FAA 13675
Thread OP
My initial testing of the ESC32 is using an older hex file called, ESC32 v1.4.3 r27 build 5251. There are several areas where you can find the compiled hex files.

Direct from the ESC32 Repository
AutoQuad and ESC32 Downloads

You can also compile the latest changes yourself right from trunk ( using the cross studio developer. The instructions for that on the site...somewhere.

In the newer firmware you will see additional features like reverse direction parameters, special voltages and speed start-up parameters for pancake motors. Also, the boot jumper is no longer needed. You can just enter 'bootloader' in the CLI to enter the firmware flashing mode, or do it from QGC. The ESC32 can also be used to control brushless gimbal motors. These new features and the quality firmware in the ESC32 are designed by Bill Nesbitt on the AutoQuad Team.

Again, note that my goal here is to see if the benefit is worth replacing my SimonK-flashed ESCs with the RTF32 ESC for use in Multiwii or APM. The RTF32 ESC does not have the CAN transceiver like the ESC32, which currently only the AutoQuad controller can take advantage of. There may be other communication points not present in the RTF32 (1-wire / I2C) but I am only interested in using the PWM port as a replacement for existing Simon-K ESCs.
Last edited by Greg Covey; Oct 26, 2013 at 07:38 AM.
Oct 26, 2013, 06:48 PM
14s 180mah should be enough...
IFLYOS's Avatar

I have a set of the ESC32's from Paul, and I am interested in what you think of them once you fly them. I will hold my impressions until you let us know how you feel. I don't want to color your impressions!

I will say that I found the setup process very easy to do, I feel like anyone who has worked with MultiWii or APM will have no issues getting them running.

Oct 27, 2013, 02:44 AM
Registered User
yes. get them in the air. I have been testing them on everything from Flip Sport- Ht-450, Flip-FPV, and HT-fpv. dramatically improved stability in every case.

on the Flip sport with Flip pro it is hard to explain how it flies. It just makes me smile

the double caps are just for fun. not necessary at all.
Oct 27, 2013, 07:05 AM
AMA 697691 / FAA 13675
Thread OP
Hi Tim and Paul,

Do either of you feel the need for running the calibration routine? In other words, can I just wire one up, load the code, and fly?

Also, are you powering up the 5v side first before plugging in the main Lipo or just all at once?


Is the dangling Lipo pack another one of your ideas for fun?
Last edited by Greg Covey; Oct 27, 2013 at 07:52 AM.

Quick Reply

Thread Tools