APM:Rover 3.0.1 Released

Release 3.0.1, 17 June 2016

The ArduPilot development team is proud to announce the release of version 3.0.1 of APM:Rover. This is a minor release with small but important bug fix changes.

The two main motivations for this release

  1. Fixing the arming for skid steering Rovers
  2. Fix to the rover steering that should really improve steering of all rovers.

Skid Steering Arming

Fixed arming for Skid Steering rovers. You should now be able to arm your skid steering rover using the steering stick. NOTE skid steering Rovers - you will not be able to disarm. The reason for this is zero throttle full left turn is a perfectly valid move for a skid steering rover as it can turn on the spot. You don’t want to be executing this and have the rover disarm part way through your turn so we have disabled disarming via the steering stick. You can still disarm from the GCS. Thanks to Pierre Kancir for working on this.

Improved Steering Control

For historical reason’s the steering controller was using the raw GPS data for ground speed without any filtering. If you have every graphed this data you will see on a rover its very spiky and all over the place. This spiky’ness was feeding into the lateral accel demand and causing inaccuracies/jitters. Now we using the EKF GPS filtered data which is much smoother and accurate and the steering control has greatly improved.

Improved Cornering

Previously when corning we didn’t take into account any “lean or tilt” in the rover - we assumed the turns were always flat. We have changed this to now take into account any lean so turning should be more accurate. Boat users should really benefit from this too.

MAVLink2 support has been added

See this post by Tridge -
http://discuss.ardupilot.org/t/mavlink2-is-in-ardupilot-master/9188/1

The other changes in this release are:

  • setting your sonar_trigger_cm to 0 will now log the sonar data but not use it for vehicle avoidance.
  • the throttle PID is now being logged
  • range finder input is now being captured (thanks to Allan Matthew)
  • added LOG_DISARMED parameter
  • merge upstream PX4Firmware changes
  • numerous waf build improvements
  • numerous EKF2 improvements

Thanks to everyone who help on the release.

1 Like

Just Gave the boat a 2 hour workout with 3.0.1. No problems except the rudders were very busy compared to 3.0. I will try to retune in calm water. My fear is this new tilt or lean compensation is going to be a problem for boats rocking in the waves.
My rudder PWM out was ± 15 running an Auto Mission when it was going in a straight line. Today with 3.0.1 it was ± 50 using my 3.0 parameters. Any thoughts?

Regards,
David R. Boulanger

Have David - really appreciate you testing. Have you got a log file you can attach so I can have a look? Dataflash (.bin) would be ideal.
Its hard to say without the log file. Could be one of your STEER2SRV PID values is too high. What about your NAVL1_PERIOD - perhaps that needs to be increased also to slow down the aggressiveness of the steering?

Thanks, Grant.

I have not looked at the logs yet. I may send them to you or wait until I can do a short mission in calm water and in rough water to compare the difference. Steering mode was great and it was just wiggling in Auto with the waves. I changed a few parameters while I was using it so I have to look at that also. It may be the XTRACK parameter. No complaints here. It may just be that in rough water the rudders are going to have to work harder to get the job done due to the boat design. Have you ever run a properly tuned ground rover in an earthquake to see if it behaves the same as on stable ground?

Regards,

David R. Boulanger

I’ll try to send a log here. https://onedrive.live.com/embed?cid=C359165FD8509D0A&resid=C359165FD8509D0A!21599&authkey=AIOWdx93UewrfRU

Regards,

David R. Boulanger

Hi David. I always upload my logs to dropbox and then just provide a link if that’s easier for you. Or google drive, or mega sync or onedrive - or any of them :slight_smile:
Thanks, Grant.

Let me know if this works. https://onedrive.live.com/embed?cid=C359165FD8509D0A&resid=C359165FD8509D0A!21599&authkey=AIOWdx93UewrfRU.

Regards,

David R. Boulanger

I have just tested the latest V3.01.beta 1 firmware to validate it works fine for skid-steering (wild thumper chassis and Sabertooth 2x12 ESC).
Made a quick video to document my findings, but first a few issues:
-How can you arm the rover with the sticks if possible at all ? (rudder to the bottom right does not work). Only arming through a command via mission planner seems to work and even not in all cases:
-when checks are disabled , then it arms.
-when checks are enabled, then it displays an error as on the picture:

Then, having the arming checks disabled but keeping arming required enabled, the rover will arm instantly when arming the safety switch. But the rover will start to move by itself without any input, as shown in this video:

https://youtu.be/suhs-3igiS8

and then last log file found on the SD card attached (but strange dates : all from 01/01/2000 ??)
log:

~#@] can’t upload the log, it is too big… (although less than 3 Mb)

Grant, I will be taking the boat to a more controlled enviroment ( 5 acre lake ) tomorrow. I will let you know how the tuning goes. I may have seen a problem with the mission restart parameter two days ago but am not sure. Anything you would like me to test just let me know before 7:00 A.M. Eastern Time in the U.S.

Regards,

David R. Boulanger

Hugues, you need to have GPS lock in order to be able to ARM. Basically you can’t ARM unless all your arming checks pass. These are designed to ensure your Rover is ready to go - not simply another enable/disable throttle feature. That’s what the safety switch is for.
And note arming is just to the right - not bottom right - just right.
And the date on the log files is set from the GPS. The Pixhawk doesn’t know the time until it gets it from the GPS.
Thanks, Grant.

Hi David. I really appreciate the offer. if you got a chance could set LOG_DISARMED to 1 and ensure your LOG_BITMASK is set to 65535 and have your boat powered up, safety switch pressed (solid light) if you have one and just float the boat on the water without arming it for a minute or so and then power down and grab that log. We want some logs prior to arming of a boat floating around in the water.
And then any logs for auto navigation on water would be great.
Make sure you turn back off LOG_DISARMED i.e. back to 0 otherwise your logs will be very large.
Thanks, Grant.

Grant, I have the log you wanted. Dropped my steering I term today and got rid of my wiggle. Rudders are now ±15 PWM in auto when the boat is running in a straight line. Probably can’t get it any better than that. Mission restart works fine. As does Learning, Steering, and Auto. Armed with my transmitter with the boat on firm ground. Boat will NOT arm if floating in the water. I get a Inconsistent Gyro error on Mission Planner. I will also post a Log of a short Auto Mission that I did after Learning the waypoints. Logs coming soon.

Regards,

David R. Boulanger

Log you wanted. https://1drv.ms/u/s!AgqdUNhfFlnDgah6wKLcxtLPbld80A

Regards,

David R. Boulanger

My short way point mission. https://1drv.ms/u/s!AgqdUNhfFlnDgah9oecAUg9qh_WuEg

It looks like I can set the ARMING_CHECK parameter to a number that will check everything except the Gyro’s. Correct?

Regards,

David R. Boulanger

Thanks for the logs above David - GREATLY appreciated.
You should be able to set everything. The new EKF2 should be able to handle it. If it doesn’t I’d like that log too please.
Thanks, Grant.

Grant, You just confused me ( easily done sometimes ). I could not arm the boat with it floating in the water due to a Inconsistent Gyro error. I usually have my parameters set so that arming is not required but I was just testing today. Is it expected behavior not to be able to arm if the boat is bobbing around in the water and not stationary.

Regards,
David R. Boulanger

Thanks David - I thought you could. That’s very interesting that you weren’t able to. I’ll have to improve my understanding of the EKF in this area.
Thanks, Grant.