MAVLINK endianness confusion

I'm parsing MAVLINK 1.0 for my ground station.

From MAVLINK documentation, I understand that the protocol uses little-endian encoding on the wire. This assumption produces meaningful data for a lot of packets. However some packets make no sense in LE but produce meaningful data in BE, for example RC_CHANNELS_RAW message seems to encode channel values in BE uint16_t. I wonder if some fields (messages?) indeed use different endianness, and if they do, I wonder if there exists a canonical list of which messages are BE and which LE.

Ari.

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • I'm running the git version of Ardupilot; I'm writing my own ground station RX. I'm traveling now and so am away from my hardware. I can post the raw binary when I return next week.

    Ari.
  • Hi,

    Which MAVLink implementation did you use when you saw that (tx and rx)? Did you look at the raw binary data?

    I am not aware of inconsistencies..

    Regards

    Soren

This reply was deleted.

Activity