"vehicle_odometry" is giving negative "z position" when the pixhawk is in higher position

I am using holybro pixhawk 6c. The chosen airframe is Aion Robotics R1 UGV. The pixhawk is calibrated.

I tested the pixhawk with QgroundControl and viewed the odometry data using “listener vehicle_odometry” in the MAVLink console.

When I went upstair, the z position was showing negative value. When I went downstair, the value of z position was positive.

Is it a normal situation for pixhawk? Should I use negative z position when I am going to convert it from “px4_msgs/msg/VehicleOdometry” to “nav_msgs/msg/Odometry”?

It is because “vehicle_odometry” is using NED earth-fixed frame by default and REP-103 (nav_msgs/msg/odometry) is using ENU (East, North, Up) coordinate frame.