[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:

Have Fun and Enjoy with the APMrover...

Regards, Jean-Louis

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • Comment by Cody O. 1 second ago
    Delete Comment

    Hi Jean-Louis,

    I have your firmware sort-of working, but I'm having some problems.  Here's what I did:

    -Opened your ArduRover v2.16a


    -Uploaded firmware using Arduino 1.0 Relax

    -Connected with APM Planner 1.1.92 Mav 1.0

    -Checked to make sure compass was enabled.

    It connects fine and the artificial horizon moves around properly, but the compass and the altimeter on the HUD don't function.  Also, the yaw gauge under "Raw Sensor Data" doesn't move.  Is there another setting I need to change to get these working?

  • Dear Jean-Louis, thank you so much.

  • Developer

    Hello to all,

    I have just pushed the new APMrover v2.20 firmware on the GIT official ardupilot-mega repository at:

    Special update for the use of the RangeFinder optical SharpGP2Y sensor instead of ultrasonic XL MaxSonar (too much noisy close to the ground).

    The compilation is OK with Arduino 1.00-relax and the latest version of the GIT library see below:


    Regards, Jean-Louis

  • Developer

    Hello Jack,

    For the mavlink telemetry test with the planner, you need to set in the APM_Config_Rover.h:

    #define SERIAL3_BAUD        57600

    I shall update this by default in the next release of the APMrover firmware.

    Regards, Jean-Louis

  • 3D Robotics


  • Developer

    @Chris: Ok, I shall try to update the v2.16a (with the latest lib) with the shap sensor feature ASAP...

    Regards, Jean-Louis

  • Developer

    Hello Jack,

    The APMrover v2.16a support APM1 and APM2 board.

    For the APM2 board, you need only to set:


    Regards, Jean-Louis

  • Hi all,

    I found following defination from APM_Config.h of APMrover v2.16a.


    It looks like the version of APMrover v2.16a only support APM1 board.

    It's correct?


  • 3D Robotics

    JLN: I've ordered a couple of those Sharp sensors, which should arrive tomorrow. I'm planning to use your code at the Sparkfun AVC competition this weekend. Any chance you can upload a version using the latest APM libraries (which support the new 3DR uBlox GPS, which is my secret weapon!), before then? I'm using APM 1 with the IMU shield, but can do the Lite version if necessary. 

  • Dear Jean-Louis,

    following your way I had compiled and download sucessfully with newest APM2 board.

    But the connection failure happened when I tried to communicate with APM2 by  APM planner with MAV1.0.

    I don't know what cause this failure.

This reply was deleted.