Can someone please explain what the apm.pdef.xml/json files do?

I’m a new developer trying to implement new/custom flight modes. I’ve gone through most of the ArduPilot Dev documentation, however I still don’t understand how and where the apm.pdef.xml and apm.pdef.json files come into play in the grand scheme of things.

Specifically, it seems like the json and xml files define parameters along with descriptions and values. Is this information only ingested by the GCS software? Is it used in logging? Do I need to update these files if I add a new flight mode?

Thanks in advanced.

apm.pdef.xml and friends contain parameter information. They’re generated

  • if you add a parameter you’ll need to add docs for it and they’ll be
    added. If you new flight mode doesn’t need parameters then they’re not


1 Like

That makes sense. Thank you!