ESC Cargo Cult

746 views
Skip to first unread message

Lorenz Meier

unread,
Apr 25, 2014, 7:43:39 AM4/25/14
to <drones-discuss@googlegroups.com> <drones-discuss@googlegroups.com>
Hi all,

I have seen quite some cargo cult (http://en.wikipedia.org/wiki/Cargo_cult_science) when it comes to interfacing PWM based motor controllers.

I feel I can contribute by helping people to focus on the right aspects during troubleshooting. After having tried all ESCs reported as “not working” myself successfully, I did a little write up to be referenced in the future. It tries to be a helpful troubleshooting resource but also serve as reference. Note that you can register yourself on the page and edit it if you feel parts of it need updating.

http://pixhawk.org/users/esc_motor_controllers

The executive summary of this is:

1) Pixhawk works with every ESC out there that works with a normal RC receiver. Really. Because it sends the same type of signal.

2) The flight stack has to ensure that initialisation requirements for the ESC are met. The two most popular: 1) requiring a low pulse, e.g. 900 us or 2) timing out after a few seconds without signal. The native stack eliminates both by sending a 900 us pulse at boot and raises this to about 1100/1200 when armed. It does this only for multicopters.

3) People need to get their wiring right. Always connect signal and ground. Check your ESC type to decide how to connect the +5V line. Pixhawk will never mind how you connect it, but your ESCs might kill each other if wired incorrectly.


I therefore also strongly advise against “compatibility lists”. There is 100% compatibility (unless the flight stack needs fixing, but the hardware and driver layers will work with every ESC and there are no known issues with the native flight stack). The only useful user resource would be pages that explain how to wire up and configure a particular ESC type.

-Lorenz

Robert Lefebvre

unread,
Apr 25, 2014, 9:58:16 AM4/25/14
to drones-discuss
Wow, I loved reading about that Cargo Cult Science thing.  Very relevant in the amateur UAV field.

Does the Arducopter flight stack send the 900us pulse initially?  I think not, as they do beep at you until you push the safety button.  Also, the servos just sit in a neutral state until you push it.

Yes, some people do not connect their signal grounds.  They claim that not connecting them works totally fine on other systems, but not Pixhawk.  Therein lies some of the cause of confusion where people are saying that the Pixhawk doesn't work with some ESC's.  To some degree, they have a point...  If a given ESC doesn't need the signal ground connected to work with other brand of controllers, but it is required for Pixhawk, what is different with the Pixhawk?

I say that they should connect the grounds no matter what, on all systems.  But it's an uphill battle fighting the perception than the Pixhawk doesn't work like other controllers.

That's really interesting that the Rx output the signals so slowly.  





-Lorenz

--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

jdennings

unread,
Apr 25, 2014, 1:25:21 PM4/25/14
to drones-...@googlegroups.com
 

Yes, connecting the signal grounds is the key. I've had all sorts of problems not doing so, none whatsoever otherwise, took a while to figure is out (and retrofit escs where I had cut both positive and negative wires. The issue is that the AVR boards do not require that, in fact  the wiki shows using using only signal wires, and many have been used to connecting their ESCs that way.
 
There's been all sort of (cargo cult?) theories as to why (on the AVR) signal grounds should not be used, one being the need to avoid potential ground loops. Clearly not  the case on Pixhawk that needs them.
 
Thanks for the great reference.

john...@gmail.com

unread,
Apr 25, 2014, 1:31:33 PM4/25/14
to drones-...@googlegroups.com
I have not heard about the 900us pulse thing before. The normal "rule" in RC when it comes to arming a ESC is that the first pulse received must be the same or lower then the calibrated end-point for zero throttle.

- JAB

Robert Lefebvre

unread,
Apr 25, 2014, 1:36:58 PM4/25/14
to drones-discuss
That's what I assumed too, but never measured it.  I'd never heard of a 900uS pulse, only that the ESC will not arm until it has seen a pulse <= the calibrated minimum (which would typically be ~1100, but not as low as 900).

john...@gmail.com

unread,
Apr 25, 2014, 1:46:37 PM4/25/14
to drones-...@googlegroups.com
Yes. The lowest value a radio receiver should output following the PWM "specifications" is 1000us (most can be tuned lower). That is why 99% of ESC's are set to 1100us by default, to make sure they have a nice margin to be armed with using radio defaults.

Mark Colwell

unread,
Apr 25, 2014, 1:52:43 PM4/25/14
to drones-...@googlegroups.com
Grounding issues are a pain to troubleshoot. Consider 3 types DC, High speed digital and RF. Shielding is another ground to be properly made (usually only a single end is grounded) Audio hum is a ground issue with its own problems !
If the ground is good you can move on to other issues, EMF, Intermittent connections and power line sag out or spikes.

john...@gmail.com

unread,
Apr 25, 2014, 1:59:17 PM4/25/14
to drones-...@googlegroups.com
Lorenz, a heads up.

I just remembered that some ESC's have a automatic throttle calibration feature. Meaning they start with a default 1100-1900 range, and automatically adjust the end-points to the lovest/higest value received during flight.

The problem with this, is that such an ESC would arm on the 900us pre pulse and set the throttle end-point to 900 as a result, and then spin up the motors when the 1100 pulse starts.

- JAB

Jason Short

unread,
Apr 25, 2014, 3:03:46 PM4/25/14
to drones-...@googlegroups.com
This is especially true on airplane ESCs. I ran into this on the first Ardupilot hardware. Almost all multicopter ESCs now are calibrated ranges which is why the 900us pulse works.
Jason


Lorenz Meier

unread,
Apr 25, 2014, 3:50:58 PM4/25/14
to drones-...@googlegroups.com
Just to be clear: I’m not using that approach for airplanes at all. On the multicopter side I frankly don’t think any ESC doing throttle auto cal is suitable at all. Its impossible to get an even throttle response that way and you can end up with attitude offsets after high-throttle events on one of the motors.

-Lorenz

Meier Lorenz

unread,
Apr 26, 2014, 6:58:50 AM4/26/14
to drones-...@googlegroups.com
@Robert, I still owe you a response to this question:

Q: "If a given ESC doesn't need the signal ground connected to work with other brand of controllers, but it is required for Pixhawk, what is different with the Pixhawk?”

The answer is plain simple: There is no such thing as an ESC NOT requiring signal ground to be connected. It doesn’t exist.

The difference between “getting lucky” and having a seemingly working setup might be due to resistance on the GND path being slightly different with these setups, leading to different zero levels. With their APM setup it might be “just enough”, with Pixhawk it might be “just not enough”. Its in the same way unsafe in both cases and mostly depends on the wiring / resistances along those paths. If its not working with Pixhawk it means that the GND levels are different by over one Volt, which is totally unsafe - and if this is already the case while the system is disarmed on the bench, there is no guarantee the ground levels won’t swing by much more during operation. Just increasing the voltage level of the signal doesn’t make it any safer - which is why Spektrum, Futaba and FrSky are operating on 3.3V levels.

Not connecting signal GND is somewhere between unsafe and reckless, because you don’t control the signal zero level any more (so any noise or fluctuation in the system might render the motor control line useless for some time). There is no guarantee that the autopilot can talk to the ESC throughout the entire flight and you start to bet on the total plug resistance from the ESC. In addition, because there is no GND parallel to the signal line you’re much more subject to RF noise.

It is actually a good sign if it ends up on the "doesn’t work” side on the bench with Pixhawk. It may just end up there with APM during the flight, with unexplained flips or crashes as consequence.

Any guides / documentation / comments indicating that signal ground is not required would need to be revised. You need signal ground. If ground loops are a problem on a particular setup because the power ground fluctuates strongly the widely available Opto-isolated ESCs should be used.

-Lorenz


On 25 Apr 2014, at 21:50, Lorenz Meier <l...@inf.ethz.ch<mailto:l...@inf.ethz.ch>> wrote:

Just to be clear: I’m not using that approach for airplanes at all. On the multicopter side I frankly don’t think any ESC doing throttle auto cal is suitable at all. Its impossible to get an even throttle response that way and you can end up with attitude offsets after high-throttle events on one of the motors.

-Lorenz


Am 25.04.2014 um 21:03 schrieb Jason Short <jason...@gmail.com<mailto:jason...@gmail.com>>:

This is especially true on airplane ESCs. I ran into this on the first Ardupilot hardware. Almost all multicopter ESCs now are calibrated ranges which is why the 900us pulse works.
Jason


On Apr 25, 2014, at 10:59 AM, john...@gmail.com<mailto:john...@gmail.com> wrote:

Lorenz, a heads up.

I just remembered that some ESC's have a automatic throttle calibration feature. Meaning they start with a default 1100-1900 range, and automatically adjust the end-points to the lovest/higest value received during flight.

The problem with this, is that such an ESC would arm on the 900us pre pulse and set the throttle end-point to 900 as a result, and then spin up the motors when the 1100 pulse starts.

- JAB

On Friday, April 25, 2014 1:43:39 PM UTC+2, Lorenz Meier wrote:
Hi all,

I have seen quite some cargo cult (http://en.wikipedia.org/wiki/Cargo_cult_science) when it comes to interfacing PWM based motor controllers.

I feel I can contribute by helping people to focus on the right aspects during troubleshooting. After having tried all ESCs reported as “not working” myself successfully, I did a little write up to be referenced in the future. It tries to be a helpful troubleshooting resource but also serve as reference. Note that you can register yourself on the page and edit it if you feel parts of it need updating.

http://pixhawk.org/users/esc_motor_controllers

The executive summary of this is:

1) Pixhawk works with every ESC out there that works with a normal RC receiver. Really. Because it sends the same type of signal.

2) The flight stack has to ensure that initialisation requirements for the ESC are met. The two most popular: 1) requiring a low pulse, e.g. 900 us or 2) timing out after a few seconds without signal. The native stack eliminates both by sending a 900 us pulse at boot and raises this to about 1100/1200 when armed. It does this only for multicopters.

3) People need to get their wiring right. Always connect signal and ground. Check your ESC type to decide how to connect the +5V line. Pixhawk will never mind how you connect it, but your ESCs might kill each other if wired incorrectly.


I therefore also strongly advise against “compatibility lists”. There is 100% compatibility (unless the flight stack needs fixing, but the hardware and driver layers will work with every ESC and there are no known issues with the native flight stack). The only useful user resource would be pages that explain how to wire up and configure a particular ESC type.

-Lorenz

--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discus...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discus...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discus...@googlegroups.com>.

john...@gmail.com

unread,
Apr 26, 2014, 7:16:42 AM4/26/14
to drones-...@googlegroups.com
I would add that the reasons not having signal GND works at all for some today, is because they are using a single battery in their system. The ESC is then getting "signal" GND via the power cables. But it's just pure luck. Switch to a real opto ESC and that won't work any more.

- JAB


On Saturday, April 26, 2014 12:58:50 PM UTC+2, Lorenz Meier wrote:
@Robert, I still owe you a response to this question:

Q: "If a given ESC doesn't need the signal ground connected to work with other brand of controllers, but it is required for Pixhawk, what is different with the Pixhawk?”

The answer is plain simple: There is no such thing as an ESC NOT requiring signal ground to be connected. It doesn’t exist.

The difference between “getting lucky” and having a seemingly working setup might be due to resistance on the GND path being slightly different with these setups, leading to different zero levels. With their APM setup it might be “just enough”, with Pixhawk it might be “just not enough”. Its in the same way unsafe in both cases and mostly depends on the wiring / resistances along those paths. If its not working with Pixhawk it means that the GND levels are different by over one Volt, which is totally unsafe - and if this is already the case while the system is disarmed on the bench, there is no guarantee the ground levels won’t swing by much more during operation. Just increasing the voltage level of the signal doesn’t make it any safer - which is why Spektrum, Futaba and FrSky are operating on 3.3V levels.

Not connecting signal GND is somewhere between unsafe and reckless, because you don’t control the signal zero level any more (so any noise or fluctuation in the system might render the motor control line useless for some time). There is no guarantee that the autopilot can talk to the ESC throughout the entire flight and you start to bet on the total plug resistance from the ESC. In addition, because there is no GND parallel to the signal line you’re much more subject to RF noise.

It is actually a good sign if it ends up on the "doesn’t work” side on the bench with Pixhawk. It may just end up there with APM during the flight, with unexplained flips or crashes as consequence.

Any guides / documentation / comments indicating that signal ground is not required would need to be revised. You need signal ground. If ground loops are a problem on a particular setup because the power ground fluctuates strongly the widely available Opto-isolated ESCs should be used.

-Lorenz


On 25 Apr 2014, at 21:50, Lorenz Meier <l...@inf.ethz.ch<mailto:l...@inf.ethz.ch>> wrote:

Just to be clear: I’m not using that approach for airplanes at all. On the multicopter side I frankly don’t think any ESC doing throttle auto cal is suitable at all. Its impossible to get an even throttle response that way and you can end up with attitude offsets after high-throttle events on one of the motors.

-Lorenz


Am 25.04.2014 um 21:03 schrieb Jason Short <jason...@gmail.com<mailto:jason...@gmail.com>>:

This is especially true on airplane ESCs. I ran into this on the first Ardupilot hardware. Almost all multicopter ESCs now are calibrated ranges which is why the 900us pulse works.
Jason


On Apr 25, 2014, at 10:59 AM, john...@gmail.com<mailto:johnar...@gmail.com> wrote:

Lorenz, a heads up.

I just remembered that some ESC's have a automatic throttle calibration feature. Meaning they start with a default 1100-1900 range, and automatically adjust the end-points to the lovest/higest value received during flight.

The problem with this, is that such an ESC would arm on the 900us pre pulse and set the throttle end-point to 900 as a result, and then spin up the motors when the 1100 pulse starts.

- JAB

On Friday, April 25, 2014 1:43:39 PM UTC+2, Lorenz Meier wrote:
Hi all,

I have seen quite some cargo cult (http://en.wikipedia.org/wiki/Cargo_cult_science) when it comes to interfacing PWM based motor controllers.

I feel I can contribute by helping people to focus on the right aspects during troubleshooting. After having tried all ESCs reported as “not working” myself successfully, I did a little write up to be referenced in the future. It tries to be a helpful troubleshooting resource but also serve as reference. Note that you can register yourself on the page and edit it if you feel parts of it need updating.

http://pixhawk.org/users/esc_motor_controllers

The executive summary of this is:

1) Pixhawk works with every ESC out there that works with a normal RC receiver. Really. Because it sends the same type of signal.

2) The flight stack has to ensure that initialisation requirements for the ESC are met. The two most popular: 1) requiring a low pulse, e.g. 900 us or 2) timing out after a few seconds without signal. The native stack eliminates both by sending a 900 us pulse at boot and raises this to about 1100/1200 when armed. It does this only for multicopters.

3) People need to get their wiring right. Always connect signal and ground. Check your ESC type to decide how to connect the +5V line. Pixhawk will never mind how you connect it, but your ESCs might kill each other if wired incorrectly.


I therefore also strongly advise against “compatibility lists”. There is 100% compatibility (unless the flight stack needs fixing, but the hardware and driver layers will work with every ESC and there are no known issues with the native flight stack). The only useful user resource would be pages that explain how to wire up and configure a particular ESC type.

-Lorenz

--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.

Gary McCray

unread,
Apr 26, 2014, 10:27:47 AM4/26/14
to drones-...@googlegroups.com
Hi Lorenz,
If you don't mind my asking?
In the ESC, signal ground is connected to battery ground right?
In the Pixhawk, signal ground is connected to battery ground right?
Battery ground is contiguous, so battery ground - ESC ground and Pixhawk Ground are connected (by large gauge wire) right?
I worked at Lawrence Livermore Laboratory on Shiva Fusion Laser Project (astronomical amounts of power in very short period of time.)
I was continuously having to deal with mereist threat of ground loop.
Leaving the signal grounds not connected would not cause, but in fact prevents a ground loop by not providing 2 ground paths.
However, in this case, the secondary ground path does provide a very small ground balancing effect, I say small because signal ground wire is small, so any current is divided between large diameter power ground and small diameter signal ground.
I am also guessing that ground differential across Pixhawk board is very small due to very adequate ground caused by large ground plane.
So why is ESC signal ground so important?
Best Regards,
Gary


On Saturday, April 26, 2014 3:58:50 AM UTC-7, Lorenz Meier wrote:
@Robert, I still owe you a response to this question:

Q: "If a given ESC doesn't need the signal ground connected to work with other brand of controllers, but it is required for Pixhawk, what is different with the Pixhawk?”

The answer is plain simple: There is no such thing as an ESC NOT requiring signal ground to be connected. It doesn’t exist.

The difference between “getting lucky” and having a seemingly working setup might be due to resistance on the GND path being slightly different with these setups, leading to different zero levels. With their APM setup it might be “just enough”, with Pixhawk it might be “just not enough”. Its in the same way unsafe in both cases and mostly depends on the wiring / resistances along those paths. If its not working with Pixhawk it means that the GND levels are different by over one Volt, which is totally unsafe - and if this is already the case while the system is disarmed on the bench, there is no guarantee the ground levels won’t swing by much more during operation. Just increasing the voltage level of the signal doesn’t make it any safer - which is why Spektrum, Futaba and FrSky are operating on 3.3V levels.

Not connecting signal GND is somewhere between unsafe and reckless, because you don’t control the signal zero level any more (so any noise or fluctuation in the system might render the motor control line useless for some time). There is no guarantee that the autopilot can talk to the ESC throughout the entire flight and you start to bet on the total plug resistance from the ESC. In addition, because there is no GND parallel to the signal line you’re much more subject to RF noise.

It is actually a good sign if it ends up on the "doesn’t work” side on the bench with Pixhawk. It may just end up there with APM during the flight, with unexplained flips or crashes as consequence.

Any guides / documentation / comments indicating that signal ground is not required would need to be revised. You need signal ground. If ground loops are a problem on a particular setup because the power ground fluctuates strongly the widely available Opto-isolated ESCs should be used.

-Lorenz


On 25 Apr 2014, at 21:50, Lorenz Meier <l...@inf.ethz.ch<mailto:l...@inf.ethz.ch>> wrote:

Just to be clear: I’m not using that approach for airplanes at all. On the multicopter side I frankly don’t think any ESC doing throttle auto cal is suitable at all. Its impossible to get an even throttle response that way and you can end up with attitude offsets after high-throttle events on one of the motors.

-Lorenz


Am 25.04.2014 um 21:03 schrieb Jason Short <jason...@gmail.com<mailto:jason...@gmail.com>>:

This is especially true on airplane ESCs. I ran into this on the first Ardupilot hardware. Almost all multicopter ESCs now are calibrated ranges which is why the 900us pulse works.
Jason


On Apr 25, 2014, at 10:59 AM, john...@gmail.com<mailto:johnar...@gmail.com> wrote:

Lorenz, a heads up.

I just remembered that some ESC's have a automatic throttle calibration feature. Meaning they start with a default 1100-1900 range, and automatically adjust the end-points to the lovest/higest value received during flight.

The problem with this, is that such an ESC would arm on the 900us pre pulse and set the throttle end-point to 900 as a result, and then spin up the motors when the 1100 pulse starts.

- JAB

On Friday, April 25, 2014 1:43:39 PM UTC+2, Lorenz Meier wrote:
Hi all,

I have seen quite some cargo cult (http://en.wikipedia.org/wiki/Cargo_cult_science) when it comes to interfacing PWM based motor controllers.

I feel I can contribute by helping people to focus on the right aspects during troubleshooting. After having tried all ESCs reported as “not working” myself successfully, I did a little write up to be referenced in the future. It tries to be a helpful troubleshooting resource but also serve as reference. Note that you can register yourself on the page and edit it if you feel parts of it need updating.

http://pixhawk.org/users/esc_motor_controllers

The executive summary of this is:

1) Pixhawk works with every ESC out there that works with a normal RC receiver. Really. Because it sends the same type of signal.

2) The flight stack has to ensure that initialisation requirements for the ESC are met. The two most popular: 1) requiring a low pulse, e.g. 900 us or 2) timing out after a few seconds without signal. The native stack eliminates both by sending a 900 us pulse at boot and raises this to about 1100/1200 when armed. It does this only for multicopters.

3) People need to get their wiring right. Always connect signal and ground. Check your ESC type to decide how to connect the +5V line. Pixhawk will never mind how you connect it, but your ESCs might kill each other if wired incorrectly.


I therefore also strongly advise against “compatibility lists”. There is 100% compatibility (unless the flight stack needs fixing, but the hardware and driver layers will work with every ESC and there are no known issues with the native flight stack). The only useful user resource would be pages that explain how to wire up and configure a particular ESC type.

-Lorenz

--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.

David Armstrong

unread,
Apr 26, 2014, 11:17:30 AM4/26/14
to drones-...@googlegroups.com
in effect their is no ground in an rc model , but your referencing a pwm or a data signal to what ?
usually gnd or battery negative , totaly different than working with signals and power lines on terra firma 

hence no ground ( negative connection ) you  have no reference for the signal 


To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsub...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsub...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsub...@googlegroups.com>.

jdennings

unread,
Apr 26, 2014, 12:25:04 PM4/26/14
to drones-...@googlegroups.com
Thanks Lorenz for this information.
 
at least notifying of a potential issue ...

Craig Elder

unread,
Apr 26, 2014, 1:40:15 PM4/26/14
to drones-discuss

This is perfect:


" The answer is plain simple: There is no such thing as an ESC NOT requiring signal ground to be connected. It doesn't exist."

Well said Lorenz.

--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.

Bill Bonney

unread,
Apr 26, 2014, 7:43:50 PM4/26/14
to drones-...@googlegroups.com
The wiki is correct for APM2.5 ( http://copter.ardupilot.com/wiki/connecting-your-rc-input-and-motors/#Connecting_the_RC_Outputs_to_the_Motors )

"It is not necessary to connect +5v or ground pins – those connections are made on the PDB.


Which states ". Connect the ground cable to a main output – pin (top row).” (unless this was just added)

Bill

Gary McCray

unread,
Apr 27, 2014, 12:07:05 AM4/27/14
to drones-...@googlegroups.com
Battery negative is the ground reference.

Em In

unread,
May 3, 2014, 8:25:57 AM5/3/14
to drones-...@googlegroups.com
Ok..Garry made a good point,should we connect black wire or not?I would be nice if it is not needed,especially when one of your developers convince me 6 moths ago to desolder 5V and GND wires from my ESC..also do I have to connect all GND or is it enough just from one ESC?

Craig Elder

unread,
May 3, 2014, 3:36:36 PM5/3/14
to drones-discuss

Basically you can get away with using the power ground as the signal return with the APM but you cannot do that with the Pixhawk.  You must connect both the signal and the signal ground in order to make the ESC work, otherwise the PWM signal looks like this.

Displaying PWM_LineGlitch.png

Video Here. http://youtu.be/6C1YG1e2aTo



To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.

Gary McCray

unread,
May 3, 2014, 3:40:55 PM5/3/14
to drones-...@googlegroups.com
Hi EmIn,

If I were you I would connect the ESC signal ground wires as Lorenz cautioned.

It certainly can't hurt anything, and possibly there are some ESCs out there that have battery ground and signal ground separated from each other (floating). Seems like the stupidist thing I can imagine, but that is the only reason I can see that would require hook up of ESC signal ground wire in addition to battery negative wire.

However, the bottom line on this Lorenz absolutely, positively knows more than I do about this and even though he hasn't responded directly to my question I would hook up the signal grounds as recommended.

I was simply asking him why, because he was so adamant about it's necessity and it doesn't make any sense to me.

They are hooked up on my copters in any case.

Best Regards,

Gary
Message has been deleted

James Overington

unread,
May 3, 2014, 6:44:09 PM5/3/14
to drones-...@googlegroups.com
Hi Gary, I'm not Lorenz but I think I can help shed some light on the issue.

Yes ESC signal ground is connected to battery 'ground' even when the signal ground is not connected. The main difference is in the amount of current that the conductor is carrying. The ESC ground connector is essentially a low side shunt. Current flowing in this conductor creates a potential difference along its length. The higher the current, the greater the difference. Without an independent (low current) signal ground connection, the ground reference that the ESC 'sees' floats at some point above the battery -ve potential depending on how much current is flowing. In the case of an ESC, currents can be rather large. If the incoming PWM signal from the controller and the ESC are using different reference points then there is definitely potential for problems. 
It is never a good idea to use high current path as a signal reference point. 

Gary McCray

unread,
May 4, 2014, 12:26:34 AM5/4/14
to drones-...@googlegroups.com

Gary McCray

unread,
May 4, 2014, 12:26:48 AM5/4/14
to drones-...@googlegroups.com
Thank you James,

I think that is what was largely illustrated by Craig's video above, using big motors and hitting full throttle he was certainly demonstrating EMF noise making into the system when the ESC signal wires weren't connected.
Best Regards,
Gary

Lorenz Meier

unread,
May 4, 2014, 5:44:36 AM5/4/14
to drones-...@googlegroups.com
Hi,

Thanks James, I couldn’t have expressed it more accurately. For the general audience:

Please, no hard feelings and I’m a very patient person, but if anybody continues to state things like „the Pixhawk ground plane isn’t as robust“ I’m going to use some very strong words to express what I think about the knowledge behind such statements (I assume this was without inspecting the six layer board?).

Because you got away with doing it wrong with setup A and now the same mistake shows some symptoms on setup B doesn’t mean it has anything to do with setup B. There have been motor sync issues before (or what looked like it), just this time somebody actually digged into it and brought you some results back. You have to get the wiring right, its plain simple. And the sync issues of low kV motors with ESCs are an orthogonal issue which is just related to the ESC-motor combination. Few people realize its an art to build a really good and generic ESC.

Happy Sunday flying! The weather here is unfortunately not allowing me that today.
-Lorenz



--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.

Sarge

unread,
Jun 27, 2014, 6:56:24 AM6/27/14
to drones-...@googlegroups.com
Was there ever any further developments with this Lorenz? I am having sync issues with APM:Plane and a particular power configuration after upgrading to a (brand new) Pixhawk from a APM. My conclusion is that my particular ESC is not compatible with the Pixhawk. The issue is when the Pixhawk is driving the ESC, If I ramp the throttle up in "Manual" mode and leave it at any value above 10% throttle, the motor's RPM pulses and the motor eventually looses sync. I don't have video but have attached a sound recording of the motor (headphone warning).

I have taken significant time to isolated each variable and put a scope the PWM line. I have also read this thread, the one entitled "Users claim differing ESC sync performance between APM and PIXHAWK", the one over on DIYD (http://diydrones.com/forum/topics/pixhawk-causing-motor-sync-issues) and the one you linked to on pixhawk.org. I'm not sure how to write my findings up in a concise way but let me preface discussion with the following facts:
  • The power setup works fine when driven from an APM2.5, servo tester or direct from the RX. This is not a motor sync issue caused by an exotic setup (SimonK, low kV/large prop). 
  • The ESC is connected to the Pixhawk via output 3 and all three wires are connected. The throttle endpoints have been calibrated.
  • The power and PWM wire lengths have not been extended and I have inspected the hardware for frayed wired/cold solder joints/poor connections.
  • I am running a pretty standard outrunner (~700kV) with a 12 inch prop and using this ESC.
Further:
  • I have tried using a different motor with the same ESC and encounter the same results.
  • I have tried using an identical ESC and encounter the same results.
  • I have restored the ESC to default settings, tried different motor timing and encounter the same results.
  • I have tried switching to a different ESC  including the Turnigy dlux, Turnigy Plush and subsequently encounter no issues (however I wish to stick with this ESC for several reasons).
When I scope the PWM signal being sent to the ESC using a Y slitter, I noticed the something interesting; when the ESC is not connected, the signal is clean and the period, pulsewidth and peak-to-peak voltage are all within expected tolerances:  

However when the ESC is connected, the Pk-Pk voltage drops to 2.2V:

Do you have any insight into what is causing the issue and how to remedy it?


Kind regards,


Sync.wav

Lorenz Meier

unread,
Jun 27, 2014, 7:13:30 AM6/27/14
to drones-...@googlegroups.com
Hi,

Can you get us the scope trace from your RX (connected, unconnected) and servo tester as well? Thanks!

-Lorenz


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
<Sync.wav>

Sarge

unread,
Jun 27, 2014, 7:33:29 AM6/27/14
to drones-...@googlegroups.com
Thanks for the quick response. I can't attach photos right now though I did note that when using the RX (Frsky X8R) directly, the PWM voltage dropped from 3.44 to 3.24V. The servo tester was being powered by the ESC but the signal was 4.72V. In both cases there was no noise in the signal.

If I can find it, I will do some testing with the Advanced Servo Buffer I have from the thermopile days. 

Kind regards,  

James Overington

unread,
Jun 27, 2014, 5:15:38 PM6/27/14
to drones-...@googlegroups.com
Hmmmm... Voltage sag under load... I'm not sure what sort of a load your typical ESC presents to the PWM output, or even if there is any sort of standard, but if there is any significant variation then there may well be a possibility that the voltage is pulled down below the threshold causing problems. It seems an obvious potential issue now that it is pointed out. Perhaps the outputs on the Pixhawk are not quite strong enough in some instances? I would say that 2.2v is definitely in the region where you might expect problems. Perhaps the title of this post may yet prove inaccurate...


Message has been deleted

James Overington

unread,
Jun 27, 2014, 6:47:23 PM6/27/14
to drones-...@googlegroups.com
50ma does seem reasonable however is this the design rating or has it been tested at this loading? Not hard to put a 66 ohm load on the output... I will give it go. But in addition to that, I really have no idea what esc manufacturers would consider reasonable...

Robert Lefebvre

unread,
Jun 27, 2014, 6:48:18 PM6/27/14
to drones-discuss
Just a guess but, I'm assuming the ESC signal line has pull-downs.  Don't the Pixhawk signal outputs have protection resistors?  What happens with the combination of the two?


On 27 June 2014 18:10, Philip Rowse <phi...@3drobotics.com> wrote:
The driver is 50mA, with 100mA peak.  what sort of ESC would be requiring any where near 50mA to drive or sink a signal line?


Philip Rowse
Electronics Engineering Dept
3DRobotics
Ballarat
Australia


On Sat, Jun 28, 2014 at 7:15 AM, James Overington <jim...@gmail.com> wrote:
Hmmmm... Voltage sag under load... I'm not sure what sort of a load your typical ESC presents to the PWM output, or even if there is any sort of standard, but if there is any significant variation then there may well be a possibility that the voltage is pulled down below the threshold causing problems. It seems an obvious potential issue now that it is pointed out. Perhaps the outputs on the Pixhawk are not quite strong enough in some instances? I would say that 2.2v is definitely in the region where you might expect problems. Perhaps the title of this post may yet prove inaccurate...


--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

James Overington

unread,
Jun 27, 2014, 11:48:53 PM6/27/14
to drones-...@googlegroups.com
I am not able to do any testing on my gear at the moment as it is at the office and it is the weekend here in NZ - in any case, my original Pixhawk got dunked in the sea (while attached to a kite...) and due to the 3DR export issues, my replacement is of a dubious pedigree... 

Looking at the schematics, it looks like the outputs are buffered by a TXS0108 and connected via 220ohm resistors to the output pins. The spec sheet confirms the 50ma per pin current capability of the buffer but by my calculations, the absolute maximum current you could draw from these pins and stay within the TTL 2V limit, is 5.9mA due to the drop across the resistor.

To see if this is in fact an issue, we would have to have a reasonable idea about the load various ESCs put on these pins and what their logic thresholds are. This is something I have never considered and I have no idea what to expect. We do seem to have at least one example here (Sarge) of an ESC that appears to draw ~ 5mA giving a 2.2V logic high which may or may not be the cause of some sync issues...


On Saturday, 28 June 2014 10:10:28 UTC+12, Philip Rowse wrote:
The driver is 50mA, with 100mA peak.  what sort of ESC would be requiring any where near 50mA to drive or sink a signal line?


Philip Rowse
Electronics Engineering Dept
3DRobotics
Ballarat
Australia


On Sat, Jun 28, 2014 at 7:15 AM, James Overington <jim...@gmail.com> wrote:
Hmmmm... Voltage sag under load... I'm not sure what sort of a load your typical ESC presents to the PWM output, or even if there is any sort of standard, but if there is any significant variation then there may well be a possibility that the voltage is pulled down below the threshold causing problems. It seems an obvious potential issue now that it is pointed out. Perhaps the outputs on the Pixhawk are not quite strong enough in some instances? I would say that 2.2v is definitely in the region where you might expect problems. Perhaps the title of this post may yet prove inaccurate...


James Overington

unread,
Jun 28, 2014, 1:31:35 AM6/28/14
to drones-...@googlegroups.com
I note that the APM2.52 schematic also shows that the current is limited by 220ohm resistors on the output. The difference with this unit is that the output is 5v. If we again consider the TTL logic high minimum voltage of 2v, then this allows for up to 13.6ma max draw on the output pins - more than twice that of the Pixhawk. This is a distinct difference. Unless the intention was to deliberately reduce the current limit on the Pixhawk, I think that either the resistors are incorrectly sized (they could be as low as 66ohms as Philip pointed out, and still limit max current to 50ma if shorted to ground) or that the intention was to output 5v. The TXS0108 that I previously referred to as a 'buffer' is in fact a level converter. All it would take to increase the output voltage on these pins would be to connect the VCCB pin to a 5V source instead of being connected to VCCA (3.3v)

Sarge

unread,
Jun 28, 2014, 1:37:58 AM6/28/14
to drones-...@googlegroups.com
Glad I spurred on some discussion, thank you for the input. I suspected it was a logic level problem. I just repeated the same tests with the Advanced Servo Buffer inline and the ESC worked as expected! With this inline, the signal level was 3.4V.

Meier Lorenz

unread,
Jun 28, 2014, 5:43:00 AM6/28/14
to drones-...@googlegroups.com
Sarge, James,

This was very useful data. Although I consider this a design fault on the ESC side (the current levels would exceed the absolute maximum rating of combined output current for a number of 3.3V ARM processors when driving 8 or more ESCs), we probably have to deal with that habit. As the TXS allows us to do, we will play with the output protector resistor values to support even odd ESC designs like this one.

We will not raise the voltage to 5V, because the “industry standard” right now is 3.3V and since there is no standard and odd devices like this one, we try to be as close to typical RC receivers as we can to insure maximum compatibility.

-Lorenz


On 28 Jun 2014, at 07:37, Sarge <nick.s...@gmail.com<mailto:nick.s...@gmail.com>> wrote:

Glad I spurred on some discussion, thank you for the input. I suspected it was a logic level problem. I just repeated the same tests with the Advanced Servo Buffer<http://www.google.com/url?q=http%3A%2F%2Fwww.store.revolectrix.com%2FProducts%2FAccessories%2FAdvanced-Servo-Buffer&sa=D&sntz=1&usg=AFQjCNGoMK8yqROyTZet4sO2bDVyPpVd6g> inline and the ESC worked as expected! With this inline, the signal level was 3.4V.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discus...@googlegroups.com>.

James Overington

unread,
Jun 28, 2014, 6:49:53 AM6/28/14
to drones-...@googlegroups.com
Hi Lorenz, I'm not sure if I agree that the ability to direct drive 8+ ESC's from all possible 3.3v ARM processors is a reasonable expectation for the design of the ESCs we use... To ensure 'maximum compatibility' surely some work should have been/should be done to characterise exactly what can be expected of the type of ESC in typical use for the intended application. If such analysis was not undertaken then surely the most prudent course was to at least maintain the same current capability of the tried and true earlier model? Obviously the majority of Pixhawks in use do not currently experience a problem so we are dealing with some fringe conditions, however the very existence of this thread (and others..) should indicate that the scope of this particular issue requires some attention. With a reasonably large investment in equipment suspended at some altitude in the air under the control of the Pixhawk, I can not help but be concerned as to exactly how close to the limits my setup is running. Will some minor fluctuation in system voltages tip my ECSs over the threshold? Obviously 3DR will be making moves to check this problem out, but I also trust that existing users will be kept informed as to any risks they may face...

To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discuss+unsubscribe@googlegroups.com>.

David Pawlak

unread,
Jun 28, 2014, 7:33:59 AM6/28/14
to drones-...@googlegroups.com
We must remember that a robust rover ESC was used, which would not generally consider what would happen to a system that has 8 of these installed. Not to mention that they are heavier and it wouldn't be likely that someone would use 8 of these on a power efficient octo.

So from the design point of view of a Pixhawk, it's a rare case. One could easily expect that someone using this ESC on a flying machine would look into the potential for mismatches with the system. It is true however that as a minimum, the Pixhawk should be able to handle at least what a proven predecessor does.

It seems however that if more design consideration should be made it would be on the input specs of the ESC. Perhaps there's a trade off between more sensitivity and noise. But a good driver design should be able to handle that. It seems that in all other respects, this is a good and robust ESC, a bit more effort  on the input should be a minimal cost for this device.

Dan Houldsworth

unread,
Jul 2, 2014, 7:17:52 AM7/2/14
to drones-...@googlegroups.com
Although on the verbose side - I've posted my scope traces and findings here : http://diydrones.com/forum/topics/pixhawk-causing-motor-sync-issues?commentId=705844%3AComment%3A1708811

In summary the PixHawk running ArduCopterV3.1.4 maintained 3.0v PWM across a number of ESCs (including the Afro30amp sometimes quoted to have compatibility issues) even under full loading of 25amps with an 880kv / 11x6 prop. This was actually less of a voltage sag than a Spektrum AR6210 which showed a PWM pk of 2.82v in the same tests. 

FWIW - my thoughts would be that if synchronisation issues still present themselves for others (and they suspect to be induced from PWM voltage sag) - I wonder if its an occasional faulty component in manufacture process. I'm reminded of the issue with the 3v regulator on the old APM2.5 which was blowing under certain circumstances for a small group of users (myself included). Easy to fix when you know about it, but very difficult to isolate when the symptoms can't be replicated by the majority of other testers.

Anyway, just a thought. 

Meier Lorenz

unread,
Jul 2, 2014, 5:23:32 PM7/2/14
to drones-...@googlegroups.com
Hi Dan,

Your inspection and feedback is very appreciated.

Since this discussion has evolved quite a bit I feel like I should wrap up the current state - not so much as reply to your post, but using some of your findings as additional data to back my conclusions.

Unfortunately, it seems like a lot of users facing problems with their setup somewhere read sync issues and attribute their symptoms to it - as developer it starts to feel like an “internet educated” patient sees his doctor, bringing the diagnosis already along.

We’re dealing with at least different (independent) issues here:

1) Actual motor sync issues. These can happen because an ESC is not able to detect the commutation phase of the motor correctly. Unless the ESC is designed wrong or presented with a motor it doesn’t support this should a) never happen and b) be independent of the inputs / receiver / autopilot you provide. This kind of sync issue will present itself with a scratching noise and often a stalled motor. What has helped on some ESCs was to slow the input you provide to them.

2) Twitches / tuning issues: This can be due to a bad signal level between autopilot and ESC (in most cases because people think its a good idea to leave off signal ground) or because of a mismatched motor / prop / ESC or because they simply got their gains wrong (I left out the attitude controller here, assuming it works).

3) Actual electrical interface issues. The only instance was presented here on the mailing list with an ESC that consumes on a port that should be high-impedance enough current to light a super-bright led and consuming a multiple of the current of what typical TTL logic is allowed / should consume. This particular ESC would *not* work at all on the Spektrum AR6210, assuming all measurements presented here are accurate. It also means that the current drive setting of Pixhawk is quite average to good compared to the RC receiver population (as posted earlier we will increase this to “extreme” to help excessively drawing ESCs like the one identified a few days ago).


To wrap up: None of these uncovered any design issues with Pixhawk. However, I’m still very interested in user feedback, as we’re always interested to learn how things fail and in some cases might be able to widen our acceptance margins to support one or two more of the “odd ones” amongst possible peripherals.

What would really help would be careful reviews of ESCs and ESC -> prop combos on a bench (without autopilot, but with a 400 Hz PWM signal). I’m sure it would turn up a ton of issues, as designing a solid ESC is an art, and I have deep respect for those having to deal with all those different motors / props people attach to them.

Cheers,
Lorenz
--
You received this message because you are subscribed to the Google Groups "drones-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to drones-discus...@googlegroups.com<mailto:drones-discus...@googlegroups.com>.
Reply all
Reply to author
Forward
0 new messages