battlejuice wrote:Hi guys,
first thing I'm new to RC so forgive me my noobism please. I'll try my very best to only ask question I cannot figure out myself or to be sure respectively.
I'm planing to build a tiny little nanoquad with brushed motors, because i have used Naze32 before and I liked, I ordered a bunch of Acro Naze for this purpose. However I didn't realize the specific details of FC-ESC connections. I measured with an Oszi and I assume the standard brushless ESC accepts 400Hz PWM signal about between 40% and 80% pulse width and translates in into ~0-100% motor speed.
However I am planning to use TTL-compatible BS170 or BUZ11 MOSFETs with Naze-PWM on the gate to directly drive the Motors with an PWM Signal between 0 and 100%. I already tried with another µC at 400Hz, works fine.
But how do I make the Naze to give out PWM Signal between 0 and 100%?
I have already set up a working toolchain to compile and flash (works at least if I'm using Linux for the one and Windows for the other... been a real pain in the ass though) the Naze and went through some code. But that's where the noobishness kicks in:
I assume I have to adjust the border conditions of some variables in the value table of CLI.c so I'll be able to tune the full range (0-2500) in the CLI, but which ones? I guess either maxthrottle and minthrottle or maxcheck and mincheck. Don't know what they exactly do. I'd guess one is the accepted range of the receiver PWM and the other one the desired range of Motor PWM output, but I am not sure.
I have no ability to test right now, because I don't want to ruin my perfectly fine working big Naze32 Quad and i don't have all equipment for the new setup yet.
So what should I exactly change to drive brushed motors or is this all a rather dumb idea?
Hiya,
I do have a patch that was submitted to me for brushed motors.
I should probably bring it back into life and add it as a feature.
If you don't mind coding stuff yourself, you just need to change PWM period (to make it something like 8kHz) in drv_pwm.c,
and then rescale motor outputs in writeMotors() to change from 1000..2000 to 0..1000 (or whatever you end up setting your pwm period to for brushed).