30.0.3 software release notes



Download: (You will need 7zip to uncompress the image)

You will need to install the image on a spare microSD card that is 2GB or larger. Installation Instructions are here.

This release covers an intensive month of updates to the software imaging process.

###Important Notes:

  • The beep sequence has changed. The ROV now waits 10 seconds after power-on before issuing the first and only beep. The ROV now users a short sequence of LED flashes to indicate the ROV is ready to be used instead of a second beep.

  • The fix for reliable boots requires you to use the FLASH version to flash the beaglebone emmc. After that, you can still run off the SD Card version of the image if you like. This was an issue that would cause the ROV not to boot the first time about 4% of the time.

###Major Changes:

The download image size has been cut nearly in half (359.3 MB vs 656.6MB of 30.0.2) meaning faster downloads and more free space on the image.


The linux O/S has been upgraded to the latest stable linux Debian release code named ‘Jessie’. There are many improvements including a new system for managing services called systemd which brings the boot time to about 45 seconds.


The linux Kernel has also been updated to the 4.1.x series. This is a massive update and with it returns the ability for the BeagleBone black to manage its pins using the cape manager. This means this release SHOULD work on the original beaglebone whites. That’s right, this release should work with the original 2.3/2.4 ROV kits.


Cloud9 works again! This is one of the improvements that I really want to get out and in to everyone’s hands. Not only can you edit all of the code on the ROV via your web browser, you can also debug the running node.js processes, batch upload files to and from the ROV, and much much more. Cloud 9 runs on port :3131 of your ROV.


This image support mDNS. That means you can now connect to the ROV using http://openrov.local:8080 to get to cockpit. To use this from your host machines, you either need Windows 10, Linux, or OS/X, or you need a Windows box that has iTunes installed. If it does not work for you, you can still use IP address.


Internet access fixed. There was a problem with a file that was hosted on the Internet not longer being available that foiled the ROVs ability to tunnel through your browser to get out to the internet. That has been fixed which means you can download plugins again, and the Internet updates can work again.


No more setting your computer to a static IP address! This release has a DHCP server built in on the ROV. Just leave your ethernet connection to DHCP and the ROV will assign it a 192.168.254.x address. It takes my computer 10 seconds or so to get the address from the ROV. If this does not work for you you can always go back to the static IP address as it still works as well.


Improvements for IMU2. Should work on all boards and is smart enough to avoid additional magnetic interference for better heading hold


Wetty, a web based SSH client has been added to the image. You can now ‘ssh’ to your rov by going to port 3009.

Additional Fixes

  • The external lights indicator shows consistently now
  • The up/down increment keys are working for the external lights
  • The back button on the photos is fixed
  • Random Light blinks have been fixed
  • No telemetry while still having control issue fixed.

Things we have not tested yet

  • Running on a beaglebone white

Uneven thrust from motors + unstable behaiour of ROV in general
Can't find version 30.0.3
BETA 30.0.3 software pre-release
OpenROV Firmware (Arduino) Development Guide
New 2.7 build - can't connect to beaglebone
NEW PRODUCT- External Light Cube
LED Lights not working....again on 2.8
Communication problems with the openROV 2.8
Design a 4 thruster ROV
Video feed works. Nothing else works after assemblying the ROV
30.0.3 OpenROV Software Suite Released
Accessing cloud 9 bbb code directly
[SOLVED] Updating Software via dashboard on OpenROV 2.7
[SOLVED] Booting up openrov 2.8
[SOLVED] Booting up openrov 2.8
Startup problem
Add extra pair of lasers
2.8 camera works, lights/motors do not respond, servo twitches

What was the reason the beep sequence was changed? It’s really hard to know when it has finished booting now. It was easier to hear a beep then to find the lights, which are not easy to see when fully assembled.


The lights that flash are the main LEDs on either side of the camera. Should be easy to see. The ESCs were beeping were a side effect of our power cycling the Arduino. We removed that extra power cycle as part of some of the stability fixes we were making. That said, if folks really like the beep, we could cycle just the ESCs to get that same effect.


The download links don’t work for me. This is what I get when I click the link.

“This XML file does not appear to have any style information associated with it. The document tree is shown below.”

'AccessDeniedAccess Denied '1201F76641AA9C99lFnuA+oXeqGFIYsllQg9TiF7QxKcXlPKL3tOBSyisiB99L5rWvH/ufCwymjfUOmx0V9HZ/GRm3E=


Thanks! The permissions are fixed!



I’ve got a working 2.3 sitting in my office. Will drop the new image on it tomorrow and let you know what happens.


So I popped the new image into my 2.3. The cockpit and camera load, but the image won’t flash the Arduino and I can’t get telemetry or motor control.


I remember @badevguru saying something about the firmware file being too big for the Arduino and that some parts would have to be disabled (like the IMU2 code). Maybe he can shed some more light on the situation.

Glad that the Image loaded onto the BBB!


Not sure if it’s useful for you guys to hear positive confirmations of loading images, but I successfully loaded the 30.0.3 image onto the BBB and Arduino on a 2.8 model.

Some notes:

  • An initial attempt using a a cat 4 mini sd to load the image failed, though the BBB seemed to give the “four lights” positive signal, behavior was glitchy.
  • Tried again with a cat10 mini sd, first load eneded in 3 solid lights on the BBB which stayed that way for 10 minutes, so I unplugged and re plugged the power and had it load again which this time resulted in 4 solid lights and reliable performance.

I am not running the BBB with a mini SD in there aside from when flashing it - what are the potential advantages to this? Why would you want to do this?


OK so this is my first time updating software since my unit came preassembled. A little confused as to the best way to do. Seems like it would be simpler to upload the SD card version and just leave the card on the Beagle Bone. Then wouldn’t have to remove the board from the assembly. Unfortunately I can not find instructions on this method, only the Flash method. And your recent post implies that there could still be an issue with booting and that one should do both a Flash update as well as leaving the SD card in the unit. Is this correct?

So I should go ahead and remove the board, Flash update, format the card and put the SD card version on it, reinstall the board with card in place and reassemble. At what stage do I update the Ardunio?


You will need to change the aconfig.h file and disable the mpu9150 to get it to fit on the older cape based ROVs.


Did anyone notice a strange behaviour of the voltage monitor with 30.0.3?
Yesterday I flashed the BBB with 30.0.3, uploaded the firmware and rebooted the ROV. The update was successful, I reversed one thruster and activated the simple theme plug-in. Until then the voltage of the batteries was 8,4 V. Then within minutes of sitting idle with a current consumption of about 550 mA the voltage dropped to 6,2 V and the ROV did some kind of a freeze. I still could navigate the software and the cockpit, but I did not get a response to commands. Like turning on the lights etc… I removed the batteries from the tubes and each of the LiFePo cells had a voltage between 2,2 V to 2,8 V.
Could this be a problem with the cells or did I make a mistake with the software update that might affect the battery monitor?
Thank you!


2.2 - 2.8V is pretty much empty for a LiFePo so they must have been depleted before you started. I believe that with 30.0.3 the voltage monitor should be showing around 9.2 - 9.3 for LiFePos. Mine does.


Thank you for the input! So maybe the voltage monitor with 30.0.0 was the problem as it showed the battery to be at 8,4 V in idle mode. Immediately after rebooting with 30.0.3 the voltage dropped to 6,2 V. Or the batteries really dropped so low during the few minutes of flashing the image and rebooting. I will recharge the cells and see how it goes.


As @e4andy said it sounds like your batteries were dead.

The battery discharge curve for batteries look like this

Once the cell voltage is below 3V there is very little energy left in each cell. There is a voltage drop during the measurement as well. Typically if you are at around 8V in the battery indicator when not running the motors, you are getting near the end of your battery life.


Thank you for the confirmation Brian! You are right, I recharged the cells and everything is working as expected. I am so used to the Lipo batteries which I frequently use, that I did not fully think about the different charging and discharging behaviour of LiFePo cells.
I apologize for suspecting the software update to having caused problems with the voltage monitor. :wink:


@Andrew_David_Thaler did you ever get the Arduino code loaded?


hello… i would like to know if this image is the latest?


The latest software versions can be found here: http://www.openrov.com/products/2-8.html