APMRover 2, a fun UGV project for full autonomous recon missions...

[UPDATE: This project is now being ported to a proper Google Code repository and manual. For instructions, start there. You can also join the ArduRover User Group here.]

Hello to ALL, the new firmware for APMRover v2 has been tested successfully on my rover on may 1st, 2012 on full autonomous reco mission following a navigation plan. This new release of the APMRover v2 works on the APM v1.4 with the OilPan shield (magnetometer + MT3329 GPS) and also of course on the APM v2. The previous version of the APMRover v1.0 was a light size version specially designed for the APM1280 CPU (only) board and the MT3329 GPS.

For the frame, I have used a Traxxas Monster Jam Grinder with a brushed and high power motor Titan 12T and its XL-5 ESC.

The APMrover UGV is able to run itself following a list of recorded waypoints. The waypoints list (FPL) can be preloaded with the APM Mission Planner OR better in live, recorded by the pilot himself (with the SW7) during a manual run and then replayed in a full autonomous mission.

The firmware APMrover2 for APM v1 + OilPan or APM v2 successfully tested can be downloaded HERE

The APMrover v2 is also online on the official ArduPilot-Mega GIT repository HERE

Below the PID setup for the APMrover v1 and v2:

The light firmware APMrover1 for APM v1 (CPU 1280 or 2560) that I have tested can be downloaded HERE 

Here's how to connect your cables:

More infos at: http://diydrones.com/profile/JeanLouisNaudin

Have Fun and Enjoy with the APMrover...

Regards, Jean-Louis

Views: 79166

Comment by Petrus Botha on May 8, 2012 at 8:59am
Healthyfatboy,do you maybe have a photo of your setup?, It seeme that I might need the same as you have
Comment by Rob_Lefebvre on May 8, 2012 at 9:07am
@healthyfatboy, I found that if the first waypoint is too. Lose to the rovers location that it seems to get confused and just circle. Try sending it to a far away waypoint first.
Comment by Rob_Lefebvre on May 8, 2012 at 9:08am
Sorry, that should say "too close". Darn smartphone.

Comment by James Goppert on May 8, 2012 at 11:47am

Great work! Glad to see so much interest in rovers! The existing ArduRover code does support APM 2.0 / multiple GPS etc. However, it has yet to be updated to the new AP_Param variables. I am currently work on this. It may be better if we worked together. The ArduRover code uses the ArduPilotOne library, which is more object oriented and helps prevent so much code reuse between projects. If we get this done, it will also help to update ArduBoat/ add tanks drive support etc.

Comment by healthyfatboy on May 8, 2012 at 2:49pm

@JLN, yes I am using the most recent version.

@R_Lefebvre I'll try sending it to a further waypoint and see how that goes. That could be it although I'll have to wait to test it until the weekend as it's rain until then.

@Petrus I'll try to get pictures when I get a chance.

I'll definitely need to give the XBee another try again as it wasn't working for me as well. I'll take JLN's suggestion and try that out.

Comment by Daniel Chapelat on May 8, 2012 at 11:04pm

Hello Jean Louis
I just changed "# define SERIAL3_BAUD 57600 and everything isOK, thank you again for your patience, I have a lot of room for improvement with Arduino, luckily I can count on your sympathy.
good day

Comment by Petrus Botha on May 9, 2012 at 2:12pm

Ok, just did a "dry run" by which I mean actualy carrying the rover from point to point following the direction of the wheels as they steer (obviously with the motor disconnected). Everything works fine except for the compass. I will do a live run tomorrow and have feedback during the day. Thanks for all the help and encouragement thus far.

I believe it might soon be time to add ArduRover to the APM Planner setup.

Comment by Jean-Louis Naudin on May 9, 2012 at 10:31pm

Hello Petrus, I am glad to see that everthing works fine with the APMrover v2.

About the magnetometer, I recommend you to put far the high current wires which power the motors and also to put the red+black wire in parallel and close together so as to avoid magnetic field interference with the magnetic sensor of the APM.

Don't forget also to set the correct orientation of the magnetic sensor (HMC5883L) and the good magnetic declination, see below:

  #define MAGNETOMETER              ENABLED
  #define PARAM_DECLINATION       0.18  // Paris


FIY: the latest version of the APMrover v2.0c is now updated in the official GIT ardupilot-mega repository at:


Regards, Jean-Louis


Comment by Anish on May 10, 2012 at 1:35am
@petrus really loved ur description of "dry run"
Comment by Petrus Botha on May 10, 2012 at 1:49am
Yes Anish,

It is a very crude way of testing but after 23h00 at night I do not want to wake the neighbours with an APM rover which is confused with actual GPS coords and trying to enter their bedrooms. Thus walking it and following the wheels as they steer from WP to WP makes it easier. Actual test will be this afternoon


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2017   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service