If I use If I use two wheel motor to drive,should I choose a frame again?

Rover 4.0 uses steering and throttle to control by default. But I want to use the differential speed of two motors to control the steering. How should I operate in mission planner? I konw to change servo output to throttleleft and throttleright in RC control model. Will it work in auto mode?

1 Like

If your rover has separate motors for left and right, then the differential speed is, by definition, how it will be driven. This is called skid-steering. You tell Ardurover that this is the type of physical
setup you have by setting the RC channel functions for your left and right servos to ThrottleLeft (73) and ThrottleRight(74). Usually that is servo1 and servo3. (SERVO1_FUNCTION and SERVO3_FUNCTION). I believe that is what you already have done.

Then, a completely separate issue is how YOU, the operator, want to give steering and throttle commands to the controller when you are in a mode where you are driving (MANUAL, STEERING, ACRO). The parameter PILOT_STEER_TYPE is where you set this preference. If you set that to 0, then you use one stick as the throttle and the other as the steering. If you set it to 1, then you use the two sticks as left and right throttles.

This concept confused me when I first started as well. You have to remember that between you and the wheels is the controller, and Ardurover allows you to set independently how you command the controller and how the controller needs to operate the outputs.

And, yes, AUTO will work. It does not depend on how PILOT_STEER_TYPE is configured at all.

(After I typed this, I saw this post from Randy Mackay that probably does a better job of explaining: Skid steer help


thank you. I’m clear now by your answer.
But I still feel a little strange. If I use four motor to control, for example adding SERVO2 and SERVO4_FUNCTION, will the ardurover also know how to operate the output?
If yes, ardurover is too perfect.

I do not know the answer to that but I would think that you could just connect servo1 to both left-side motors and servo3 to both right-side motors? However, I guess that having an individual output to each motor would give you the ability to fine-tune the rpm of each motor in Ardupilot.

Hopefully someone else will come along and help with this question.


you can configure more outputs as motor left and motor right. And I really do not know why the wiki still recommends to use output 1 and 3. This comes from the old 8bit Ardupilot Mega days. Nowadays you can choose any (main) output you want. Of course you can also use y-cables to connect all left ESCs/motors to one output and the right ESCs/motors to another output.
In case of brushed motors, you can connect multiple motors to one ESC in paralell, as long as you do not exceed the ESCs max current.

1 Like