I’m writing custom software for interpreting mavlink endpoint data and I’m seeing some large discrepancy between the common BATTERY_STATUS message and what I’m interpreting from the endpoint (attached) the battery voltages do not seem to match and there is 41bytes of payload vs. the 36 that the message definition states.
Was a custom message defined instead of this common message structure?
You haven’t specified which firmware type or version you’re using, so I can’t go looking for the relevant message generation code, but from the message definition you linked to you don’t seem to have allowed for the extension fields in your bytes count, so perhaps your firmware is including time_remaining and charge_state estimates in the message?
This would have my battery voltage starting at index 10 (voltage index 0 with all other voltages reading as FF ff) where the message definition should have it at index 5. I’m either not understanding how the payload / extensions are generated , or I would say the message definition is radically different the the common definition. Or maybe both.
In regards to my parser it seems to be parsing the attitude and pressure messages just fine, just this message was the only one where I didn’t follow common message definition exactly.