OpenROV Software 30.0.0 Installation Notes



Upgrade instructions are at the bottom of this post.

About the 30.0.0 release

The OpenROV 30.0.0 image is for all OpenROVs that use the Controllerboard and BeagleBone Black. Those are versions 2.5 and above of the OpenROV Kit. If you are on an earlier version ROV and want to upgrade, reply to this thread so we can prioritize making the latest build work on the older hardware.

The primary updates in this release:

  • Major improvements in the ability to upgrade using the UI
  • Stability improvements to make the motors reliable
  • Stability improvements to prevent “unable to connect to the cockpit” issues

Upgrade using SD Card

Universally, you can always upgrade by burning the image on to an SD card and running that in your ROV. The image you want to burn on the SD card is : OpenROV-30.0.0~178.8ca16b5.img.7z
After it reboots, be sure to got to settings in cockpit and upload the firmware

Upgrade from the command-line

Any version 2.5.1RC3 (that originally shipped on 2.7 ROVs) or higher can be updated this way:

  1. SSH on to the ROV using putty if on windows, or ssh for linux/osx.
  2. Execute the commands listed below:
sudo sed  -i.bak 's/build.openrov/rovproxy.openrov/g'    /opt/openrov/proxy/public/index.html

sudo sed  -i.bak 's|||g' /etc/apt/sources.list.d/*

sudo sed  -i.bak 's|||g' /opt/openrov/dashboard/src/plugins/01_software/lib/*
  1. Open up the dashboard in a browser (leave it open for this entire process) to (or the IP of your ROV if it is not plugged directly in to your computer).
  2. Run the last commands:
sudo apt-get update

sudo apt-get install -y openrov-rov-suite

sudo reboot

After it reboots, be sure to got to settings in cockpit and upload the firmware

Upgrading through the dashboard UI (Coming soon)

We are in the process of rerouting and testing the the servers need for this feature right now. An update will be made when it is ready. If you don’t want to wait, use one of the method above.

There are some timing issues with the 2.5.1-RC3 release that originally shipped with the 2.7 OpenROV that makes this unreliable. If you try it and it does not work, please upgrade using one of the two methods listed above.
Upgrading from 2.5.1-RC3 via the UI and then from the command-line

If you have 2.5.1-Final or one of the BETA 30.0.0 releases, you can upgrade by

  1. going to the dashboard
  2. selecting software
  3. choose Refresh and then
  4. select the install button next to the 30.0.0 release.

BETA for OpenROV Image 30.0.0
Cannot Update Through Command Line
[SOLVED] Software update "There was a problem loading the branches!"

I think I’ll try this on my v2.6 this weekend. I’ll let y’all know how it works out…


Ok, I downloaded 30.0.0 and wrote it to a micro-SD. I placed the SD in to the SD slot in the ROV. I booted the ROV up. I uploaded the 30.0.0 from the SD to the BBB. I shut the ROV down and removed the SD card. I rebooted the ROV ad after many attempts was able to connect to the Cockpit. I checked the version of the image on the BBB and it says 2.5.1.

I then shut down and re-inserted the SD and re-booted the ROV. I attempted again to upload the image from the SD to the BBB. I shut down and removed the SD card. I re-booted the ROV and once again got the same results as before.

So I shut down and inserted the SD and re-booted the ROV. Once I got access to the Cockpit (with the SD inserted) I got indication that 30.0.0 was running.

Once again I shut down and removed the SD card and repeated the above process and got indications that 2.5.1 was running.

It appears that I am not able to flash the image from the SD to the BBB.


@Ronald_Peters, the image is for running off the the SD card. I have not created the image that will flash yet. There is a commandline option for doing so if your interested.


Ok. That would explain it… Thanks. I’ll run it off the SD for now. P.S. When running from the SD, everything looks great… :blush:


After upload the firmware, do we need to program again the ESCs?


@Camille_P, nope. No reason to touch the ESCs.


OK thanks! Works great with mine off the SD exept I cannot install the divealert plugin.
And when I want to change my IP adress after the reboot, the old IP
adress setting is still in interfaces and get an auto IP (different)
from the router.
As well the light is turning ON alone randomly


There are some updates in progress for our proxy service that are needed before you can install the plugins. The work around right now is to ssh in to the rov, stop the openrov-proxy service and connect the ROV directly to an internet router first.

How are you changing the IP?

If the ROV does not get a signal from cockpit, the lights will start flashing. If this bugs you, it can be disabled in the arduino frimware in the AConfig.h file, it is the deadman switch option.


OK thanks for the reply.
I try to change the ip adresse as your tuto: Change the static IP address of a ROV
For the light, I don’t speak about flashing when it doesn’t receive signal, sometime it switch ON and stay ON and sometime after 5 minutes or 2 switch OFF itself



Yes, I would like to upgrade my v2.4 OpenROV to the latest software release.




Downloading from Europe (Germany) was really slow for me. I uploaded both files to my Google Drive, if you guys are okay with that it could be used as a european mirror.

Software Versions: No packages found after trying to upgrade to 30.0.0

So I’m having some issues updating via terminal. Basically I am getting the following messages when running apt-get update:

rov@OpenROV:~$ sudo apt-get install -y openrov-rov-suite
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 openrov-rov-suite : PreDepends: openrov-image-customization (>= 30.1.0~34.0aa5e90) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
rov@OpenROV:~$ sudo apt-get update
Get:1 master Release.gpg
Get:2 wheezy/updates Release.gpg                             
Get:3 wheezy-bbb Release.gpg                               
Get:4 wheezy Release.gpg                                         
Get:5 pre-release Release.gpg                                 
Get:6 wheezy/updates Release                                     
Get:7 wheezy-updates Release.gpg                                   
Get:8 wheezy-bbb Release                
Get:9 stable Release.gpg                                          
Get:10 wheezy Release                                              
Get:11 wheezy/updates/main armhf Packages                        
Get:12 update1 Release.gpg                                 
Get:13 wheezy-bbb/main armhf Packages                           
Get:14 master Release                                          
Get:15 wheezy-updates Release                                                               
Get:16 pre-release Release                                                                     
Get:17 wheezy/updates/contrib armhf Packages                                                    
Get:18 stable Release                                                                
Get:19 wheezy/main armhf Packages                                                          
Get:20 wheezy/updates/non-free armhf Packages                    
Get:21 update1 Release                                                             
Get:22 master/debian armhf Packages                                                            
Get:23 wheezy/updates/contrib Translation-en                                                    
Get:24 wheezy/updates/main Translation-en                                                       
Get:25 pre-release/debian armhf Packages                                                       
Ign wheezy-bbb/main Translation-en                                                       
Get:26 wheezy/contrib armhf Packages                                                              
Get:27 wheezy/updates/non-free Translation-en                                                   
Get:28 stable/debian armhf Packages                                                            
Get:29 wheezy/non-free armhf Packages                                                             
Get:30 update1/debian armhf Packages                                                           
Get:31 wheezy/contrib Translation-en                                                              
Get:32 wheezy/main Translation-en                                                                 
Get:33 wheezy/non-free Translation-en                                                             
Get:34 wheezy-updates/main armhf Packages                                                         
Get:35 wheezy-updates/contrib armhf Packages                                                      
Get:36 wheezy-updates/non-free armhf Packages                                                     
Ign master/debian Translation-en                                                               
Get:37 wheezy-updates/contrib Translation-en                                                      
Ign pre-release/debian Translation-en                                                          
Ign stable/debian Translation-en                                                               
Get:38 wheezy-updates/main Translation-en/DiffIndex                                               
Ign update1/debian Translation-en                                                              
Get:39 wheezy-updates/non-free Translation-en                                                     
Fetched 12.5 MB in 1min 18s (159 kB/s)                                                                                     
Reading package lists... Done
W: There is no public key available for the following key IDs:
W: There is no public key available for the following key IDs:
W: There is no public key available for the following key IDs:

When I run apt-get install I get the missing dependencies errors. I DID, however, get the following packages available in Dashboard:


openrov-dashboard - 30.0.0~89.7a0aaca  Install
openrov-proxy - 1.1.0~63.7b3d30c  Install
openrov-cockpit - 30.1.0~165.7cc104e  Install
openrov-arduino-firmware - 30.0.1~150.9fb1e8a  Install
openrov-mjpeg-streamer - 2.0.1-9~24.f3a85c6

I suppose that the ‘no public key’ error during the update that is the problem. Any suggestions on how to fix?


Hi, I’m having similar problem with the package update command. I used the commandline method: issued the three sudo commands as described above, opened the dashboard, logged in, and gave the apt-get update command. Dashboard is open during the entire process but I’m receiving still some 404 errors or, recently, 500 error. Tried several times to make sure the dashbord was still running. Any hints please?

rov@OpenROV:~$ sudo apt-get update
Ign master Release.gpg
Ign pre-release Release.gpg
Get:1 wheezy Release.gpg
Ign stable Release.gpg
Get:2 wheezy-bbb Release.gpg
Get:3 wheezy/updates Release.gpg
Ign update1 Release.gpg
Ign master Release
Get:4 wheezy/updates Release
Get:5 wheezy-updates Release.gpg
Get:6 wheezy-bbb Release
Ign pre-release Release
Ign stable Release
Ign update1 Release
Get:7 wheezy Release
Get:8 wheezy/updates/main armhf Packages
Get:9 wheezy-bbb/main armhf Packages
Get:10 wheezy/updates/contrib armhf Packages
Get:11 wheezy-updates Release
Get:12 wheezy/updates/non-free armhf Packages
Get:13 wheezy/updates/contrib Translation-en
Get:14 wheezy/main armhf Packages
Get:15 wheezy/updates/main Translation-en
Get:16 wheezy/updates/non-free Translation-en
Ign wheezy-bbb/main Translation-en_US
Ign wheezy-bbb/main Translation-en
Get:17 wheezy/contrib armhf Packages
Get:18 wheezy/non-free armhf Packages
Get:19 wheezy/contrib Translation-en
Get:20 wheezy/main Translation-en
Get:21 wheezy/non-free Translation-en
Get:22 wheezy-updates/main armhf Packages
Get:23 wheezy-updates/contrib armhf Packages
Get:24 wheezy-updates/non-free armhf Packages
Err master/debian armhf Packages
  500  Internal Server Error
Ign master/debian Translation-en_US
Ign master/debian Translation-en
Get:25 wheezy-updates/contrib Translation-en
Err pre-release/debian armhf Packages
  500  Internal Server Error
Ign pre-release/debian Translation-en_US
Ign pre-release/debian Translation-en
Get:26 wheezy-updates/main Translation-en/DiffIndex
Err stable/debian armhf Packages
  500  Internal Server Error
Ign stable/debian Translation-en_US
Ign stable/debian Translation-en
Get:27 wheezy-updates/non-free Translation-en
Err update1/debian armhf Packages
  500  Internal Server Error
Ign update1/debian Translation-en_US
Ign update1/debian Translation-en
Fetched 12.5 MB in 1min 1s (204 kB/s)
W: There is no public key available for the following key IDs:
W: There is no public key available for the following key IDs:
W: There is no public key available for the following key IDs:
W: Failed to fetch  500  Internal Server Error

W: Failed to fetch  500  Internal Server Error

W: Failed to fetch  500  Internal Server Error

W: Failed to fetch  500  Internal Server Error

E: Some index files failed to download. They have been ignored, or old ones used instead.


The ROV is running a special proxy service that needs to be connected for outbound communication to work. You simply need to have dashboard ( running in the browser in the background and the ROV will tunnel its outbound communication through your browser.

If you have the ROV directly connected to a router or via internet sharing and don’t want to use the proxy, you will have to disable it first: sudo /etc/init.d/openrov-proxy stop and then exit the ssh session (while leaving the ROV running), and re-ssh back in to the ROV. You will then need to use the date command to set the date on the ROV to a current date (if it is too old, ssh communication will fail). You should now be able to do command like wget which should pull down an index.html file. If that works, then the apt-get update and other commands should work.