View Single Post
Old Sep 28, 2011, 07:06 PM
simonk is offline
Find More Posts by simonk
Canada, BC, North Vancouver
Joined Dec 2010
944 Posts
This tree is my attempt to simplify and improve quax' original code, and make it support multiple boards. There are some feature improvements now, and I've been hacking on it fairly heavily over the last month. See the commit history and README and stuff on github at and . Some people have sent me motors and boards to test/fix weird corner cases, so hopefully it will turn into something that works well for everybody.

The main thing that pissed me off enough to start hacking on it was the 8kHz PWM frequency that Turnigy Plush boards were stuck with (causing the annoying audible whine), the clicking with lower kV motors, the screaming instead of proper restart if the motor is stopped while running, and the averaged throttle response instead of immediate input->output (with some timing-based limiting to avoid overcurrent, only at low speeds). All of these should be fixed or improved over the OEM firmware and quax' tree.

Keep in mind, this means it will totally break a helicopter that requires slow start and there is no battery protection or thermal shutdown; however, this is usually better than any other option on a multicopter. Actually, I thought maybe pulsing high/low PWM rate might be a useful audible indicator of one of these bad conditions, but haven't done that yet. Feedback, patches, pull requests (and free hardware) definitely welcome!

Oh, and for programming plush boards, I just use a long-pin 2x3 header (like about 1.5 inches long) that I bent to line up all to pins in a row, quite similar to how Nek did it with wires. It's springy yet strong enough to stand up to many uses. I started with wires first, but they were hard to keep straight enough. The header method is good enough that I have done it hundreds of times for testing, and the board looks untouched after, which is nicer than solder blobs and wires all over the place. pogo pins would certainly work, too!

Nek, did you make a new pinout for the RCtimer boards, then? If so, I can merge it into the tree as a new include file. Cheers!
simonk is offline Find More Posts by simonk
Reply With Quote