My rover doesn't move in AUTO mode

Hi, I’m new to here. I constracted my rover based on the web site http://ardupilot.org/rover/index.html . However, when I turned my switch to auto mode, it didn’t work and “Bad compass health” message was appearing. I tried to calibrate compass many times, but it didn’t solve the problem. And I have another problem. When I use manual mode, throttle doesn’t work well. When I push throttle bar forward and then switch it to back quickly, my rover doesn’t move. If I swith throttle bar neutral and wait for a few second before I switch the bar to back, my rover go back.
I’m using separated steering and throttle method, Pixhawk 2.4.8, Ardurover V3.4.2 firmware and Ublox NEO M8N GPS reciever.
What should I do to solve these? Please help me…

“Bad Compass Health” does not prevent Auto mode from working. Do you have a mission uploaded, that the rover can follow?
Your other problem is most likely caused by the ESC. It is probably set to Forward/Brake/Reverse, but should be set to Forward/Reverse. Read the ESCs manual to see how to change the setting.

Hi Sebastian,

Thanks a lot. I changed ESC mode to Forward/Reverse mode. Then, my rover is moving as I expected in manual mode.
However, another problem is not solved. I think it’s a problem of gyro.

The most likely reason that Auto won’t engage is that the vehicle doesn’t have a good position estimate (i.e. GPS isn’t working well). If a dataflash log file can be downloaded from the flight controller we can confirm this…

Thanks for your reply. I tried Auto mode again. Then, it moved, but doesn’t move actual paths and went out of control. Here I downloaded my dataflash log https://www.dropbox.com/s/i1mw56mc15xdnhn/52%202-15-2019%2011-33-56%20AM.bin?dl=0 , but when I tried to read it, it said “Log Browse will not function correctly without FMT messages in your log. These appear to be missing from your log.”, and I couldn’t see anything.
I think it’s caused by my wrong compass calibration. When I tried to calibrate my compasses, it failed many times. Therefore, I had to change the “Fitness” drop-down to relaxed setting to complete compass calibration.

The logs are just full of null characters I’m afraid.

Perhaps try again, worst case pull the SD card out of the flight controller and then get the logs directly out of the APM folder. Remember to return the SD card to the flight controller afterwards.

Instead of the compass, I suspect the motor outputs have not been setup correctly. Have you tested the direction of the motors and/or steering from the Mission Planner’s motor test screen?

Thanks a lot. I tested the direction of the motors and steering and tried Auto mode again at an another place where GPS seems to be better. The rover moved much better than previous tests. In the Auto mode, the rover moved automatically , but it moved slightly sifted path from the mission I wrote. Do you know how to fix this? I thought the best way to fix this is to calibrate the compass in strict mode, but the rover can’t complete strict compass calibration. Is there other way to fix my GPS?

@Ryota,

there are a few possible reasons:

  • the map is not accurate (this can’t be helped really)
  • the GPS is not acccurate (adding another GPS or using RTK GPS may help)
  • vehicle tuning is not quite right - either turn rate or navigation

It’s probably best to try and download a dataflash .bin or .log file and post it here

Hello, I also made a rover using pixhawk. but with the throttle it was only going forward and not reverse. I successfully solved this problem with the rc3 settings in the parameter list. If the settings are as follows, it will move forward at maximum speed with a value of 1500 when the throttle is in the middle, that is, 2000 in the forward position when it is neutral. When the minimum value is 1000, it reverses at maximum speed. But I used a brushed motor driver (L298N) in this project. By reading the pulse signals with PulsIn with Arduino, I divided the 1000-1500-2000 values into -255-0-255 values and triggered the motor direction pins and PWM pins under certain conditions. It works great :slight_smile: I did not use brushed esc. Anyway, to solve your problem, if you set RC3_MAX 2000, RC3_MIN 1000, RC3_TRIM 1500 from the full parameter list and save it, your engine will now move back and forth. Before arming, you must bring the throttle stick to the middle point. Another very important issue is that if you assign the arm command to any stick, your job will be much easier. Good luck…