RPi relaying flight telemetry from Pixhawk to RPi.GPIO(using dronekit - vehicle.connect) && to GCS

Hey Guys,

This is the ultimate configuration I am trying to achieve:

Have the pixhawk and the GCS communicate with each other using the RPi as a tunnel, while simultaneously the RPi should be able to pull parameters from said tunnel to a GPIO pin.

My code is as follows
First terminal:
mavproxy.py --master=udpout:192.168.19.136:14550 --out=/dev/ttyS0 --out=udp:localhost:8080 --baudrate 57600

The first IP is the GCS computer IP, the pixhawk is connected through serial (/dev/ttyS0) and the second IP is the RPi localhost IP.
With this line of code, I get all telemetry working on the GCS and everything is fine.

Second terminal:
I run my script and I get the following output:
connecting on vehicle: localhost:8080

Exception in message handler for HEARTBEAT
mode 0 not available on mavlink definition

and nothing seems to work.

Everything was tested and was working!
Without the GCS I tested using:
mavproxy.py --master=/dev/ttyS0 --out=udp:192.168.26.78:14550 --baudrate 57600

So this places the RPi as the master while forwarding information to the RPi Wifi IP, after this, a second terminal is opened to run the code and implement a --connect “UDP:192.168.26.78:14550” and the script ran flawlessly.

From what I understand both the GCS and the pixhawk send heartbeats and so confusion happens when I try to run my script.

Any help is appreciated,

Thanks!

Making the RPi the master solved this for me

mavproxy.py --master=/dev/ttyS0 --out=udp:computerIP:14550 --out=udp:RPiethIP:8080 --baudrate 57600

cheers