PWM Sync Issues with CC3D, RC Receiver and Custom Autpilot
« on: June 13, 2016, 08:51:45 pm »
Greetings. I work for a University doing research work on Autonomous Flight Systems (AFS) and Controllers.

We are currently working on a custom QuadCopter.

We are incorporating a CC3D to use as a Fallback mode for RC flight in case our Non-Linear AFS processor doesn't work correctly. Since we can get the Quad to fly with the CC3D, and it transposes Fixed Wing Control into four motors, it was a natural thing to do.

We use an Arduino Due processor to handle the I/O portion of the control. We use an NVidia Tegra TK1 to perform the complex Matrix Mathematics involved with the Non-Linear control.

We have logic to switch from RC / CC3D to Autopilot (AFS).

We are using PWM vs. PPM. All of our systems, both fixed-wing and Quad, are PWM.

We are using JR / Spektrum Receivers, Servos and Transmitters.

We are having issues.

The first is proper programming of the ESC's. We start in RC mode, then switch momentarily to AFS. This then performs a self-test and spins up each motor to let us know it is communicating properly.

After this is done, it is supposed to throttle all the way down to stop the motors. We then switch back to RC for take-off.

The problem is when we switch back to RC mode and the CC3D. One or two motors start spinning slowly.  :o  ???  The Throttle is off. I have read some threads about ESC issues and CC3D's so we are persuing them as well.

We are using CastleCreation's ESC's. Phoenix Edge ESC's with Aux / Tach outputs.

One thought that came to me is whether or not the outputs are stable WRT the RC Input.

Using an O-Scope and syncing to the RC Receiver output, both the CC3D and the Arduino are floating WRT the RC Receiver output. They do not sync their outputs WRT the RC Receiver input.

And, they float or do not sync on each others. We do not have a sync pulse line between them.

I would like to find a way to at least program with software and/or hardware and lock the CC3D output to the PWM input.

I can then address the Arduino issues as well.

Any thoughts?

Thank You.