Recently, my team built an underwater vehicle for a competition using the BlueROV2 electronics. Before we finished the sub, we were running everything on the BlueROV2, but now, we are making the transition to our custom sub. We chose to use an Nvidia Jetson Nano instead of a Raspberry Pi as our companion computer, for the purpose of image processing.
Unfortunately, I cannot establish a connection through the companion computer from QGroundControl to the Pixhawk. I noticed that the only image with the ArduSub companion software fully configured is for a Raspberry Pi.
I cloned the companion software repository onto the Jetson and ran MAVProxy using the corresponding script, but QGroundControl will not establish a connection with the flight controller.
Has anyone successfully been able to run the ArduSub companion software on any other platforms besides a Raspberry Pi?
The companion is not supported on other boards yet. That said, take a loot at the setup script. It will help you get most of the dependencies required.
The services are launched by the .companion.rc file, but you may need to change some of the code to deal with hardware differences.
I almost have the same issue , were you able to establish a connection
It turns out that our issue had to do with the fact that both Ethernet and our router were using 192.168.2.X IP addresses. Once we disabled one of the network interfaces and started MAVProxy with the appropriate arguments, we were able to connect through QGroundControl.
I’m not sure how much this will help though. Could you elaborate on your specific issue a little more?
Thanks for the response
Iam trying to run mavros on the nano , but I wasn’t sure as the nano wasn’t on the supported device list of companion computer’s
Hi, Just wondering how much success you had with running companion on the Jetson nano?
We have a custom ROV which is using a Raspberry Pi as the companion computer to run Ardusub (As it is only supported on Raspberry Pi). However we want to replace our Raspberry Pi with a Jetson Nano.
Has anybody been able to run Ardusub on an alternative unsupported companion computer to the raspberry pi? and if so how did you get it to work?
Thanks for the help
ArduSub is the flight controller/autopilot (e.g. Pixhawk) firmware. The software that runs on the Companion computer is just called the Companion software.
If you’re interested, here’s an overview of the software components
The current stable Companion is unlikely to be pleasant to try to convert to a different board than the intended RPi3B. Your best bet is trying the new Companion Beta, which is made to be much more self-contained and platform independent.
That said, it’s still been developed on Raspberry Pi, so isn’t yet at the stage where using it on other platforms is simple. Probably the best starting point is the files in the
install directory, and in particular the
install.sh installer script, which handles installation on different Raspberry Pi models. That should hopefully cover most of the required setup steps, some of which you’ll be able to replicate directly on a Jetson Nano, but others will likely require finding something equivalent.
From what I understand we’re hoping to properly support other board types down the line, but at this stage it’s still in beta on our recommended hardware, so understandably testing that and developing it to stable takes priority over supporting other boards.
Thank you for your response Eliot very helpful
@Lachie I’ve moved your post here because it’s on the same topic.
@Matt1 my reply to Lachie is the latest info/advice, although @rishi may still be able to provide some insight into whether they were able to successfully get the stable Companion software working on a Jetson Nano, and if so what the differences were from the existing setup script
Can you comment at all on any benefits we could expect from upgrading our companion from a RPi3 to a RPi4, or a Jetson, (or any others recommended) (using BlueOS). Would we see any difference in processing or latency?
An RPi3 is sufficient as the onboard computer for running an ROV with a Pixhawk and a camera, but if you’re doing additional processing (e.g for additional component integration like custom sensors and actuators, or running computer vision and/or custom control algorithms) the additional processing capabilities of a better board can be helpful. RPi3 also only has USB 2 ports, whereas an RPi4 has two USB 3 ports which may help with integrating more powerful / higher data-rate sensors, and also has a faster ethernet port (although communication is still limited to <100Mbps if using Fathom-Xs and/or our Ethernet Switch).
The additional power on an RPi4 can also be used for supporting things like our upcoming flight controller, which will replace the Pixhawk in new systems.
Hope that helps!