Rpanion-server 0.8 Released

Version 0.8.0 of Rpanion-server has been released!

Rpanion-Server is an Open-Source software package for a managing the companion computer (such as the Raspberry Pi and NVIDIA Jetson) connected to an ArduPilot-based flight controller.

Rpanion-Server consists of a node.js webserver for the user interface and mavlink-router for routing MAVLink telemetry from the connected flight controller. GStreamer handles low latency video streaming from any connected cameras. There are also modules for managing network connections, NTRIP streaming and viewing hardware information.

Version 0.8.0 adds the following major new features:

  • Add UDP video streaming
  • Support for Ubuntu on the Raspberry Pi and NVIDIA Jetson
  • Add fps option for video streaming
  • Ad-hoc wifi support
  • Wifi channel selection in AP mode
  • TCP server for MAVLink telemetry
  • NTRIP streaming support
  • UI more consistent

The documentation and pre-built disk images for the Raspberry Pi are available here.

The source code can be found here, at GitHub.

Bug reports and Pull Requests are most welcome.

10 Likes

Thanks @stephendade, I look forward to upgrading and trying it out.

Cheers,
Paul

Very good, it is an excellent software package for a companion computer,very convenient and useful!

Hi Stephen, @stephendade

I found a few problems with Rpanion 0.8.

  1. Selecting “auto” as channel selection for a new AP wifi leads to an error message:

Error editing network: Error: failed to modify 802-11-wireless.channel: ‘0’ is not a valid channel.

  1. This error also occurs when I switch between 2.4 and 5GHz. Selecting “auto” tries to use the previous selected channel from the other frequency spektrum.
    I.e. channel 6 for 5GHz, channel 140 for 2.4GHz.

  2. Adding a new network on an adapter with no previous existing configuration, the “attach to specific adapter” dropdown only shows “none” and “eth0” (I am connected through eth0 at this point). Only after the new network config is saved, the dropdown gets populated with “wlan0” “wlan1”, etc.

  3. Sometimes (I could not establish a way to reproduce this), the starting IP for a new network gets changed to 10.42.0.1 after saving for no apparent reason. Just now it changed back to the IP I entered (10.0.3.100) after reboot.

  4. Trying to change a client network, it saves the new passphrase, but not the new SSID.

Great - thanks for finding these bugs.

  1. and 2. are now fixed. I’ll get onto 3-5 later in the week

Thank you! That is really quick!
I will pull the changes later and see how it goes.

To point 5, on my other rover changing an existing AP network works without a problem. I cloned the sd-card from this rover to the other one and the wifi relay to save the time installing the RTL8812AU drivers again. Could this have messed something up?

I’ve fixed 3. and 5.

I wasn’t able to replicate Issue 4., but that may have been incidentally fixed.

Cloning SD Cards is fine. That shouldn’t affect any functionality.

I could not find a way to replicate point 4., either. It happened twice, but then I could not get any device to do it again.

Good morning, this is Fábio from Brazil.

@stephendade
is it possible to use usb wifi 6.0 ( 802.11 AX )? would it bring any benefit? lower latency? greater reach?

is it possible to use a 4G LTE usb modem?, in the future maybe 5G? if yes, what settings are needed?

Is it possible to use more than one usb camera? 2 maybe?
if yes, is there a possibility to switch between cameras?

and finally, would it support RC Control via MAVLink ( RC_CHANNELS_OVERRIDE )?

Grateful

As long as the devices work (have drivers) on a Raspberry Pi, then yes.

Rpanion only fowards telemetry, so that’ll be up to your ground station setup.

Hi @stephendade ,

It took me a while, but I entered the swarm tests.

I took one of the quads and replaced it with Rpanion-server to test the ad-hoc network as we used it. My findings:

  • Connected to the standard ad-hoc network of other drones without nmcli;
  • After booting, the configuration was not maintained. It is necessary to redo it;
  • I was unable to select a listed interface other than wlan0. I usually use a USB dongle to have usable ranges in the field;
  • Manually, I used the function that makes the configuration[1] with the wlan1, and it worked well, however, the configuration was also lost in the reboot.

Any tips?

Cheers

[1] Rpanion-server/adhocManager.js at d44c87e930557b1a81e4a01e72a3a0c86141b75a · stephendade/Rpanion-server · GitHub

EDIT: May I propose the use of a /24 network instead a /16 network?