Alternative to Companion routing

Hello,

The routing on the companion:

is not reliable enough for my requirments.

Does anyone have an alternative solution?

I am looking at installing a software that would capture serial ports other than the one used for the Pixhawk.

Cheers,
E.

Hi Etienne,

What about using Netcat (nc)…

sudo add-apt-repository universe
sudo apt-get install netcat-traditional
sudo update-alternatives --config nc
nc --help

For instance, if you want to capture and redirect a UDP flow:
mkfifo backpipe
nc -ulp 14550 0<backpipe | nc -u 9.0.0.13 14550 1>backpipe

Hope this help.
Denis

Another solution is to use Node-RED - https://nodered.org/

Hi @enderocean thank you for your suggestion, I will give it a try later.

For now, I ended up going a different route.

I used virtualhere.

I was helped by @SoSub and Isaac Banister from SOSUB so the credit really goes to them.

This is free for one device and seems to work well.

Here is a step by step

Ensure your Rpi is accessible.

Open Chrome

Type in 192.168.2.2:8088

Click on open terminal

Type in:
image

This should happen:

Type in:
image

Type in:
image

When done your terminal window should look like this:

You have now installed and started the USB server

Now you need to make sue its going to start when the Rpi starts.

Type In:
image

this will appear:
image

type 2 and press enter

This will appear:

Use your down key and go all the way to the bottom and type this:
image

image

Press Ctrl + X to exit

You will be prompted to save or discard

image

Type Y and press enter

You should be back on the main screen and it should look like this:

This is it for the Rpi.

Close the browser and download the VirtualHere USB Client

https://www.virtualhere.com/usb_client_software?fbclid=IwAR0S13Q4BPTxPkjgVrJv3F1YwVfOvGwt_te2VOosMOG3EnZfNgDTRzDIM2w

Then you run the software and you should get this:

image

right click on USB Hubs and select Specify Hubs…
image

This window will open:
image

Click add and this window will open

image

Type in the Rpi ip address
image

Press ok
image

Press close

When the port gets detected this window will appear:
image

Then the client will show something like this depending on what you have connected
image

In my case it opened com26.

So its like my arduino is connected directly on my computer on com port 26…

Hope this helps someone else.

Cheers,
E.

There is also bridges, that export serial ports as UDP endpoints.

is not reliable enough for my requirments.

Can you explain a bit more why the actual routing page is not working for you ?

I get a lot of dropped and/or corrupt packets.

Sometime the data freezes up and then when it pick up again I get what is accumulated in the buffer and can’t send commands down anymore.

While attempting to do this today I ran into the issue where the certificate was expired.

Replace this line

> wget http://www.virtualhere.com/sites/default/files/usbserver/vhusbdarm

With this line

> wget --no-check-certificate http://www.virtualhere.com/sites/default/files/usbserver/vhusbdarm

Adding the "–no-check-certificate " argument will allow to download the file with the expired certificate.

For those using an arduino nano, you will need to use this driver for this solution to work.

https://cdn.sparkfun.com/assets/learn_tutorials/8/4/4/CH341SER.EXE