// generated from rosidl_adapter/resource/msg.idl.em
// with input from px4_msgs/msg/VehicleImu.msg
// generated code does not contain a copyright notice


module px4_msgs {
  module msg {
    typedef float float__3[3];
    module VehicleImu_Constants {
      const uint8 CLIPPING_X = 1;
      const uint8 CLIPPING_Y = 2;
      const uint8 CLIPPING_Z = 4;
    };
    @verbatim (language="comment", text=
      "IMU readings in SI-unit form.")
    struct VehicleImu {
      @verbatim (language="comment", text=
        "time since system start (microseconds)")
      uint64 timestamp;

      uint64 timestamp_sample;

      @verbatim (language="comment", text=
        "Accelerometer unique device ID for the sensor that does not change between power cycles")
      uint32 accel_device_id;

      @verbatim (language="comment", text=
        "Gyroscope unique device ID for the sensor that does not change between power cycles")
      uint32 gyro_device_id;

      @verbatim (language="comment", text=
        "delta angle about the FRD body frame XYZ-axis in rad over the integration time frame (delta_angle_dt)")
      float__3 delta_angle;

      @verbatim (language="comment", text=
        "delta velocity in the FRD body frame XYZ-axis in m/s over the integration time frame (delta_velocity_dt)")
      float__3 delta_velocity;

      @verbatim (language="comment", text=
        "integration period in microseconds")
      uint16 delta_angle_dt;

      @verbatim (language="comment", text=
        "integration period in microseconds")
      uint16 delta_velocity_dt;

      @verbatim (language="comment", text=
        "bitfield indicating if there was any gyro clipping (per axis) during the integration time frame")
      uint8 delta_angle_clipping;

      @verbatim (language="comment", text=
        "bitfield indicating if there was any accelerometer clipping (per axis) during the integration time frame")
      uint8 delta_velocity_clipping;

      @verbatim (language="comment", text=
        "Calibration changed counter. Monotonically increases whenever accelermeter calibration changes.")
      uint8 accel_calibration_count;

      @verbatim (language="comment", text=
        "Calibration changed counter. Monotonically increases whenever rate gyro calibration changes.")
      uint8 gyro_calibration_count;
    };
  };
};
