Mavlink works on Plane but not on copter

Is there a difference between plane and copter in the mavlink stream from the telemetry port ?

I use an arduino telemetey converter to downink mavlink1 data to my rc receiver. With equal telemetry settings on the same pixhawk It works on plane firmware but not on copter. I would like to understand why.

Thoughts anyone?

Zero difference between the two, noting that Copter and Plane may use slightly different message sets.

Note that Ardupilot defaults to using MAVLink2 on telemetry ports.

1 Like

Thanks. If there is a slight difference in message sets then probably this is the reason (indicating bug in the arduino code). I was also thinking maybe mavlink is initialized differently, but then I scrap this thought.

I did verify on a cube orange that it works with plane but not copter (and yes double and triple checked the settings were the same). Arduino code is the mav2ex (mavlink1 to jeti duplex)

I had a look at the converter to see if it could be brought up to date but it wont compile on anything newer than arduino 1.6.2 and its heavily tied to the AVR chips using:
fast serial
AVR timers
AVR EPROM functions
APM math (tied to AVR)
AP parameter libraries (tied to AVR).

it would need all that replaced to be compatible with a newer chip like rp2040.

I compiled it with an updated mavlink 1 library if you want to try it. I don’t have a jeti radio to test with.

Jetibox.cpp.standard.zip (20.8 KB)

2 Likes

Thanks! That is so kind of you. I will give it a try and report the outcome

I tried it yesterday but it did not work on copter. Dont know about plane yet.

Did you just replace the mavlink v1.0 folder in “Mav2Duplex-master\libraries\GCS_MAVLink\include\mavlink\v1.0” to a newer version?

yes, I just updated it with this,

can you try manually setting the SR*_Parameters ? set all the rates to 5 for the serial port that the adapter is connected to, just so we can test if it cannot understand the data or its just not being requested.

1 Like

Thanks! you are awesome
I will do some more experiments.

1 Like

So there is a difference in mavlink between copter and plane (i learned today). The SRx parameters are by default disabled on Copter, but by default enabled on Plane. Thus on plane if you choose mavlink protocol for a serial port it will by automatically stream out mavlink data, but on copter it will only listen and transmit mavlink data if it is requested. That was the problem all along. The mav2ex code is still outdated and needs updating, but it works after all. When will I stop making noobi mistakes

1 Like

great!, let me know if there are any other issues,

I suspect a lot of flight modes are probably missing. The part of the code that requests the mavlink stream will need updated too, il look into it when I get a chance.

1 Like