35 #if PERIODIC_TELEMETRY
47 pprz_msg_send_VECTORNAV_INFO(trans,
dev, AC_ID,
117 #if PERIODIC_TELEMETRY
Main include for ABI (AirBorneInterface).
void ahrs_vectornav_event(void)
Event handling for Vectornav.
void ahrs_vectornav_propagate(void)
Read received data.
struct AhrsVectornav ahrs_vn
void ahrs_vectornav_init(void)
Initialize Vectornav struct.
static void send_vn_info(struct transport_tx *trans, struct link_device *dev)
Vectornav VN-200 as AHRS.
enum VNStatus vn_status
VN status.
struct Int32Vect3 accel_i
float vn_freq
data frequency
struct OrientationReps body_to_imu
body_to_imu rotation
struct VNData vn_data
Data struct.
struct VNPacket vn_packet
Packet struct.
bool ahrs_vectornav_is_enabled(void)
Vectornav VN-200 as AHRS.
uint32_t get_sys_time_usec(void)
Get the time in microseconds since startup.
void float_rmat_ratemult(struct FloatRates *rb, struct FloatRMat *m_a2b, struct FloatRates *ra)
rotate anglular rates by rotation matrix.
void float_quat_of_eulers(struct FloatQuat *q, struct FloatEulers *e)
quat of euler roation 'ZYX'
#define RATES_BFP_OF_REAL(_ri, _rf)
#define ACCELS_BFP_OF_REAL(_ef, _ei)
#define INT32_VECT3_ZERO(_v)
static struct FloatRMat * orientationGetRMat_f(struct OrientationReps *orientation)
Get vehicle body attitude rotation matrix (float).
static void stateSetNedToBodyQuat_f(struct FloatQuat *ned_to_body_quat)
Set vehicle body attitude from quaternion (float).
static void stateSetBodyRates_f(struct FloatRates *body_rate)
Set vehicle body angular rate (float).
API to get/set the generic vehicle states.
static const struct usb_device_descriptor dev
int8_t register_periodic_telemetry(struct periodic_telemetry *_pt, uint8_t _id, telemetry_cb _cb)
Register a telemetry callback function.
Periodic telemetry system header (includes downlink utility and generated code).
#define DefaultPeriodic
Set default periodic telemetry.
unsigned short uint16_t
Typedef defining 16 bit unsigned short type.
unsigned int uint32_t
Typedef defining 32 bit unsigned int type.
void vn200_read_message(struct VNPacket *vn_packet, struct VNData *vn_data)
Read received message and populate data struct with new measurements.
void vn200_event(struct VNPacket *vnp)
uint8_t err
see page 122 of VN-200 datasheet
struct FloatRates gyro
Rates in the imu frame m/s.
struct FloatEulers attitude
Attitude, float, [rad], yaw, pitch, roll.
struct FloatEulers ypr_u
Attitude uncertainty, 1sigma, float, [degrees], yaw, pitch, roll.
struct FloatVect3 accel
Acceleration in the imu frame, m/s.
uint8_t mode
0-not tracking, 1 - poor performance, 2- OK
float timestamp
Time since VN startup [s].