Updating the Arduino firmware code


The OpenROV controller board + BeagleBone actually include a fully programmable Arduino on board. The Beaglebone has a linux based version of the Arduino IDE tools and the controller board has been setup as a SPI programmer to the ATMEGA chip that is on board.

This guide assumes:

  1. You can connect to your ROV
  2. That you know hot to ssh on to the ROV (search for ‘putty’ on forums for instructions)

Once you have ssh’d on to the ROV, you will find the Arduino code in the /opt/openrov/arduino/OpenROV folder.

There are several ways you can edit the files on the ROV. As of this guide, there was an issue surrounding cloud9 with the full web based text editor way to do it. The other alternative is to use the pico editor which is a light weight editor that runs from within the ssh session.

As of this guide, most of the files still ship write protected. To modify a file you use sudo pico <filename>. You may be prompted for the rov password which is the same one you used to login to the ROV.

When you are done making changes (in pico you press ^X to exit, and you are prompted to save the file).

You can then try compiling your changes and loading them on to the Arduino by either going to the cockpit and choosing the upload new firmware option from settings, or you can use this command-line command from the ssh session:
sudo /opt/openrov/cockpit/linux/arduino/firmware-installfromsource.sh

If the system has issues with what you have changed, you will see the compiler errors on the screen. You will also see some warnings, but you can ignore those.

IMU Calibration (compass and tilt)

What’s the chances you could translate that to “lame ass mans speak”? :wink:


split this topic #3

2 posts were split to a new topic: Need help uploading firmware to ROV


I followed these steps from this guide https://openrov.dozuki.com/Guide/IMU-Depth+Module+for+OpenROV+v2.6+and+lower+(Stopped+Production+June+2015)/4?lang=en

It also mentioned the SSH changing values of #define HAS_MPU9150 & #define HAS_MS5803_14BA from 0 to 1, I then saved and exited the Putty SSH, then went to the cockpit after restarting the ROV and I updated the software from the cockpit, I still have just Zero’s in all my telementary data fields. Could really use some help. I have a 2.6 with an IMU 1 not the new 2.0. I click Calibrate on the Cockpit and move the rov around but nothing changes, am I suppose to click Calibrate a second time or something?