It’s a right-handed inertial frame similar to NED but where the x and y axes are NOT aligned to North and East (but z is still Down)
It’s attached to a fixed location on the vehicle and rotates with it. Normally a body frame is attached to the center of mass of the vehicle. One can then define the position of all components (IMU, GNSS, …) in body-frame coordinates.
In FRD (Forward-Right-Down). In PX4, everything is NED and FRD
It’s a right-handed inertial frame similar to NED but where the x and y axes are NOT aligned to North and East (but z is still Down)
So origin is still world fixed to point of EKF startup.
So what are they aligned with? What does “arbitrary heading reference mean”?
My “guess” is that FRD means that X, Y are vehicle aligned, but since Z is always pointing down, it is more like “X, Y are vehicle aligned but only in the frame over ground”.
Just what it says - it is a moving frame, centred on the vehicle, and aligned with the vehicle.
So if you were to use POSE_FRAME_FRD to go 2 m forward, you’d be moving 2 m over ground, while VELOCITY_FRAME_BODY_FRD would be 2 m forward aligned with the vehicle, and if the vehicle was facing down, that would be straight down.
Arbitrary heading reference here means that the X axis has a fixed reference that is not North. It could be 42 degrees from north, it could be South or anything else. The frame is non-rotating and fixed at some location on the Earth.