ROV connect to QGroundContorol Failure, Unable to control ROV or update firmware

We bought a brand new BlueROV2 recently.

Initially, we were able to have both visual and control on BlueROV2. However, we had connection issues where the ROV would disconnect from QGroundControl, which required a power cycle to reestablish connection. To solve this, we tried to update both companion and ArduSub version. We updated Companion to v0.0.26 and ArduSub to v4.0.2, and everything stopped working. When we power on, only the first sequence of beeps (fast beeps) is heard. We have camera visual on QGroundControl, but QGroundControl have no connection to the ROV.

When we try to update Pixhawk on Companion, it failed due to USB connectivity issue.

We were able to update Pixhawk by directly by connecting QGroundControl on PC to Pixhawk (via USB). We used the “Ardupilot ChibiOS Sub PixHawk 4.0.1” software to update Pixhawk. But even after this update, we are still not able to hear the second beep sequence on boot, and QGroundControl still can’t connect to BlueROV2.

  1. What are the stable versions of Companion and ArduSub you recommend.
  2. Is this issue with Pixhawk? Could we get a replacement Pixhawk if that’s the case?
  3. What are some alternative ways to update both Companion software and ArduSub? Is there instruction/video?

The instructions to install Companion directly onto a MicroSD card for the Raspberry Pi 3b are here

Can you share an image of the page at http://192.168.2.2:2770/system ?

Hi thanks for the suggestion. When we downloaded the Companion image, the file name is ardusub-raspbian.img. As I understand Ardusub is the software for Pixhawk. So is the link correct? Also, which version is the Companion software? We basically want to reset the Raspberry Pi and PixHawk back to the factory setting so we can boot up the ROV again.

I unzipped the downloaded image, and it seem to be Companion v0.0.26. We already have it on our Raspberry Pi, but the ROV is somehow not booting. Is there another earlier stable version we can use?

What information do you need from http://192.168.2.2:2770/system ?
I tried to upload images but failed.
On “Software Status and Update” page, under “Active Services”, I have:
mavproxy
mavproxy
mavproxy
mavlink2rest
bridgemanager
wldriver
nmearx
file-manager
audio
commrouter
webterminal
webui
video.
Under “Detected Devices”:
Video Device: H264_USB_Camera
Audio: Devices: H264_USB_Camera
Serial Devices: Pixhawk1

Previous Stable Companion Releases

Previous stable Companion images can be downloaded at https://s3.amazonaws.com/downloads.bluerobotics.com/Pi/<version number>/<version number>.img.zip
eg: https://s3.amazonaws.com/downloads.bluerobotics.com/Pi/0.0.22/0.0.22.img.zip

The Detected Devices looks normal.
The Active Services looks normal except I’m not sure why there are three mavproxy listed.

I’d try going through the Software Setup on a different computer and see if you can connect.

Thanks! Which Companion and PixHawk versions would you recommend? Besides the current one (0.0.26 + 4.0.2). I’m a bit nervous about flashing my Companion (RaspPi) software with Etcher, is there a reliable way to rollback if somehow I “brick” my ROV?

If you’re worried, you could flash Companion to a different MicroSD card.
Previous versions are:
Ardusub v3.5.4
Companion 0.0.25

https://www.ardusub.com/resources/downloads.html

1 Like

This sounds like a failed Pixhawk (ArduSub) update or something. The three initial beeps from each ESC confirm that the three phases of the connected motor are present and connected. The following two longer ones (which you’re not hearing) happen when the ESC is provided with a valid input signal (first beep - valid controller detected), and then a valid ‘stop’ signal (second beep - ESC armed and ready to go).

By default the Pixhawk should be outputting a ‘stop’ signal to all 6 ESCs as soon as it turns on (or all 8 if using the Heavy configuration and corresponding frame in the firmware), so if it’s not doing that then there’s either an issue with your firmware, or an issue with your Pixhawk or ESCs. Given this came directly after an update and is affecting all your ESCs it’s unlikely to be an ESC issue, and my best guess is that the firmware flashing wasn’t successful.

There could be multiple causes for this, but it is at least consistent with a malfunctioning/incorrectly set up Pixhawk - the video stream is handled entirely by the companion computer, so is independent of the Pixhawk, whereas the ‘Vehicle connection’ is to do with successful mavlink communication with the autopilot, which requires a working Pixhawk setup and connection.

Do you have any more details on the ‘USB connectivity issue’? It’s possible you’ve got a faulty/damaged USB cable between the Pixhawk and companion computer (Raspberry Pi), but also possible that the Pixhawk is the issue. Also, do you know if the update via QGroundControl was successful?

  1. The stable versions we recommend are the latest stable versions available through the companion web interface update page, which at the moment are companion 0.0.26 and ArduSub 4.0.3.
  2. It could be. If you can try using a different USB cable that would be helpful, but if that doesn’t work/help then I’d suggest you contact support@bluerobotics.com, and link them to this thread to discuss a refund/replacement :slight_smile:
  3. There are instructions and links for updating the relevant software on our downloads page, but we expect and encourage most non-developer companion and ArduSub updates to be done via the companion web interface System page
2 Likes

Thanks Eliot! We tried these combinations with the following results:

  1. Companion 0.0.25 and Ardusub 3.5.4 - heard the full five beep sequence but Ardusub was not recognized. Could not connect to QGroundControl
  2. Companion 0.0.25 and Ardusub 4.0.2 - only heard the first three beeps in the sequence. Ardusub was not recognized and could not connect to QGroundControl
  3. Companion 0.0.28 (most recent from BlueROV version) with Ardusub (most recent from the downloads page link) - only heard first three beeps in the sequence. Ardusub was not recognized and could not connect to QGroundControl

Here are some screenshots with the third combo:


some potential conclusions:

  • connection between the pixhawk and raspberry pi works fine, as we’re able to update firmware, etc
  • pixhawk is able to complete full five beep sequence for companion 0.0.25 and Ardusub 3.5.4

Considering that some versions of Ardusub/companion software result in different symptoms, we believe that some versions of the companion software might be incompatible with Ardusub/QGroundControl. What versions of Ardusub/companion software are known to be working together on a stock BlueROV hardware setup? Could you provide links to the binaries for the exact versions so we can make sure we aren’t using some incorrect versions?

Your second screenshot is showing that no ArduSub version has been found, so it’s possible the update process wasn’t successful. I’d recommend trying again to update to Stable, and if that doesn’t complete successfully you may need to update through QGroundControl by directly connecting the Pixhawk to the top computer with a USB cable.

The latest stable versions at this point are ArduSub 4.0.3 and Companion 0.0.28, which are the numbers that should show up in the web interface when they’ve been installed correctly.

If you want to directly flash both the Pixhawk and the companion computer, I’d suggest you follow the link just above for flashing ArduSub onto the Pixhawk. The latest companion image is available from the Companion Computer Images section of the downloads page I linked you to earlier. There are instructions here for flashing the raspberry pi SD card :slight_smile:

Thanks Eliot! Yeah noticed no ArduSub version wasn’t showing up after updates, good to confirm this is a signal for update failure! We have updated Pixhawk via direct USB connection to QGroundControl running on windows laptop. The update was successful, but the ArduSub version number didn’t show up on web interface.
So for our third experiment, we used Companion v0.0.28 + ArduSub v4.0.3 (or 4.0.2, the latest version). We flashed the SD card with latest Companion, and then inserted it to RaspPi. Then we disconnected ROV battery from board, connected Pixhawk to QGroundControl via USB, and updated ArduSub. After both are done, we rebooted the ROV, and only heard 3 beeps. We retried after setting up the Wifi, but sill only heard 3 beeps upon reboot.
So we are kind of scratching our heads about what else we could try.

Hi @searover2021,
Try a new USB cable as mentioned above, actually check all your connections, A loose ESC wire can show crazy faults with connectivity and makes the camera feed go off every 5 second’s or so. until it fails completely and requires a re-boot. It may even have burnt out an ESC and motor like ours did.
Then, re-format your cards, download and try Etcher, companion 0.0.25 and Ardusub 3.5.4 should work with standard ROV.
(iirc with Etcher you have to cycle the power before it deletes and installs the new software, sometimes another power cycle is required before a version number appears too)

Thanks Craig! We actually tried 0.0.25 and 3.5.4. We got to 5 beeps sequence, but didn’t get QGroundControl to Pixhawk connection (so no motor controls). I’m not sure if USB is still the issue, since we got “Success” when installling ArduSub 3.5.4 from QGroundControl to Pixhawk. Also, we were able to boot the Raspberry Pi after flashing Companion 0.0.25. Do you know if Raspberry Pi could still be faulty in this case?

It couldn’t hurt to try 1 if you have access to a spare, I am currently waiting on a few spare pi’s and trying to find suitable pixhawk’s just for testing purposes, this does sound like the connection problems we had with the ESC and motor fault, I’m unsure if you still get the beeps or if you can connect if you disconnect the other components like ESC/motors?

Hi folks, we finally got the sub to work. We used QGroundControl to directly flash ArduSub 3.5.4 to PixHawk (battery disconnected), and used Companion software v0.0.28. We were able to hear 5 beeps (3 short, 2 long), and regain control to motors. Thanks for all the advice!

It’s possible it wasn’t detecting because we changed the way the device is connected in companion to when we updated ArduSub to 4.0. I wouldn’t expect that to be the issue on a freshly flashed companion image, but if you updated companion normally (through the web interface) then it might be. If that is the issue then it should be fixed by resetting the mavproxy settings, as described in our troubleshooting steps (after the Check Mavproxy step) :slight_smile: