Ardurover no motor pwm signal output when armed

This seems to be a common problem with Ardurover setups as there seems to be a consistent amount of threads posted overtime of this issue.

For context, I am ultimately trying to get a skid steer boat reliably going and am somewhat new to ardupilot.

*Hardware I have tried:
Cube Orange+
2x Cube Black

Herelink Controller
Spektrum Controller

Here GPS
3DR GPS

2x Brushed BiPolar ESC (Only Gnd, Signal connected)

*What I have tried:
I have tried Cube Blacks with an old Spektrum controller, and had gotten the boat unreliably working.
Sometimes I can get a Motor PWM signal, most of the times I can’t.
When I can get a signal, it is with minimal settings changed. If I were to further add analogue voltage/current module or rearrange imu priority etc. There will be no more motor PWM signal when armed.

I have tried the same thing with Cube Orange+ and herelink (which I got on a whim as I thought hardware might’ve been too dated).
With this combination, I have yet to receive any Motor PWM signal output.

Here’s the weird thing, in all these cases I can see RC and Servo outputs on the MAVLINK inspector is changing as expected, when armed, but there is no PWM signal on the motor signal pins.
QGC also shows no errors messages/red trianglee on top bar when armed.

My minimum setup:
Calibrate sensors/controller.
FRAME_CLASS = 2 (Boat)
SERVO1_FUNCTION = 73 (Throttle Left)
SERVO3_FUNCTION = 74 (Throttle Right)
MOT_PWM_TYPE = 4 (BrushedBiPolar)
RC3_TRIM = 1515 (For Herelink controller)
I would also disable options in ARMING_CHECK and BRD_SAFETYENABLE as necessary

Is there anything I’m missing or I can try?
I have also tried a few of the latest Ardurover Beta versions with no luck.

My first thought: What ESC’s exactly are you using? Because if you have braking enabled, the esc first goes into neutral/braking, and needs another pwm pulse/command before actually going in reverse.

Thank you for the reply.

I’m using Hobbywing Quicrun ESC (can’t remember exact model) set to forward/reverse mode (no brake).

But that’s besides the point.
I forgot to mention, but I have a PWM signal reader that’s reading no activity from the port.

By some chance, is there something sitting between MAVLINK raw servo output values and the actual port that I’m failing to see? Just throwing ideas out there because I’m out of ideas.

Hobbywing Quikrun ESCs are standard RC ESCs not “brushed bipolar”. Set “MOT_PWM_TYPE” to 0.

I don’t have them on me atm but I had a quick look at Hobbywing’s lineup and they look like the Hobbywing Quicrun 1080:

And again, the ESCs are not the problem.

Nobody said the ESCs are the problem. You have a setting wrong that might cause problems.

you have brushed bipolar set, that is for Hbridge motor drivers not standard RC PWM ESC’s

1 Like

Ok @count74, let’s work on the ESC setting first.

Also yes @geofrancis that is my understanding too. The Brushed bipolar setting also worked as intended when my Black cubes intermittently worked. ie.Fwd/Rev and turns in water were as expected.

https://ardupilot.org/rover/docs/common-brushed-motors.html
According to there, the brushed bipolar fits the description of the esc the best.
The escs are designed to use a portion of the PWM range to go Fwd/Rev.

You are contradicting yourself. @geofrancis said the exact same thing as I did. PWM Type 0 is the correct setting. RC ESCs do not use 0 or 100% duty cycle.

An RC ESC and an H bridge motor driver are not the same thing.

I have used Quicrun ESC’s for Rovers. No problem when Ardurover is configured correctly as has been stated.

You’re confusing brushed motor drivers that are essentially just transistors that use direct pwm 0-100% to control the motor

with

RC Motor controllers that use the RC PWM servo protocol as its input. They use 500-2500ms pulses normally used to control servo positions that the ESC converts to motor commands.

@geofrancis, @count74
Ah ok so you’re saying “Brushed bipolar” doesn’t output the typical ~500-2500ms pulse but outputs a 0-100% duty cycle PWM signal.
That would make a lot of sense why it doesn’t work now.

Sorry I completely misunderstood and missed the technical terminology.
I’ll give it a try in ~2 days time.

I’ll give it a try in two days time but I think you guys might be right.

BRD_SAFETY_DEFLT this param set to 0 you will see the output…