123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140 |
- #pragma once
- // MESSAGE VKINS_STATUS PACKING
- #define MAVLINK_MSG_ID_VKINS_STATUS 53000
- MAVPACKED(
- typedef struct __mavlink_vkins_status_t {
- uint32_t time_boot_ms; /*< [ms] Timestamp in ms from system boot.*/
- float g0; /*< [m/s/s] vkins initial calibrated gravitation acceleration.*/
- int32_t raw_latitude; /*< [degE7] raw longitude for data fusion*/
- int32_t raw_longitude; /*< [degE7] raw latitidue for data fusion*/
- float baro_alt; /*< [m] raw baromoter altitude for data fusion*/
- float raw_gps_alt; /*< [m] gps amsl altitude for data fusion*/
- int16_t temperature; /*< [degC] temperature*/
- uint8_t nav_status; /*< VKINS
- navigation status flag.*/
- uint8_t s_flag1; /*< vinks flag1*/
- uint8_t s_flag2; /*< vinks flag2.*/
- uint8_t s_flag3; /*< vinks flag3.*/
- uint8_t s_flag4; /*< vinks flag4.*/
- uint8_t s_flag5; /*< vinks flag5.*/
- uint8_t s_flag6; /*< vinks flag6.*/
- uint8_t mag_calib_stage; /*< vkins mag calib
- stage.*/
- uint8_t solv_psat_num; /*< satelites number for position*/
- uint8_t solv_hsat_num; /*< satelites number for heading*/
- uint8_t vibe_coe; /*< */
- float roll; /*< [deg] solved roll angle*/
- float pitch; /*< [deg] solved pitch angle*/
- float yaw; /*< [deg] solved yaw angle*/
- float ve; /*< [m/s] solved east speed*/
- float vn; /*< [m/s] solved north speed*/
- float vu; /*< [m/s] solved up speed*/
- float ae; /*< [m/s/s] solved east acceleration*/
- float an; /*< [m/s/s] solved north acceleration*/
- float au; /*< [m/s/s] solved up acceleration*/
- int32_t solv_lon; /*< [degE7] solved longitude*/
- int32_t solv_lat; /*< [degE7] solved lattidue*/
- float solv_hR; /*< [m] solved relative altitude*/
- uint32_t sensor_state; /*< sensor state*/
- uint8_t id; /*< nav id, 0 for main nav, 1 for aux nav*/
- }) mavlink_vkins_status_t;
- #define MAVLINK_MSG_ID_VKINS_STATUS_LEN 90
- #define MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN 37
- #define MAVLINK_MSG_ID_53000_LEN 90
- #define MAVLINK_MSG_ID_53000_MIN_LEN 37
- #define MAVLINK_MSG_ID_VKINS_STATUS_CRC 22
- #define MAVLINK_MSG_ID_53000_CRC 22
- #if MAVLINK_COMMAND_24BIT
- #define MAVLINK_MESSAGE_INFO_VKINS_STATUS { \
- 53000, \
- "VKINS_STATUS", \
- 32, \
- { { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_vkins_status_t, time_boot_ms) }, \
- { "nav_status", "0x%02x", MAVLINK_TYPE_UINT8_T, 0, 26, offsetof(mavlink_vkins_status_t, nav_status) }, \
- { "s_flag1", NULL, MAVLINK_TYPE_UINT8_T, 0, 27, offsetof(mavlink_vkins_status_t, s_flag1) }, \
- { "s_flag2", NULL, MAVLINK_TYPE_UINT8_T, 0, 28, offsetof(mavlink_vkins_status_t, s_flag2) }, \
- { "s_flag3", NULL, MAVLINK_TYPE_UINT8_T, 0, 29, offsetof(mavlink_vkins_status_t, s_flag3) }, \
- { "s_flag4", NULL, MAVLINK_TYPE_UINT8_T, 0, 30, offsetof(mavlink_vkins_status_t, s_flag4) }, \
- { "s_flag5", NULL, MAVLINK_TYPE_UINT8_T, 0, 31, offsetof(mavlink_vkins_status_t, s_flag5) }, \
- { "s_flag6", NULL, MAVLINK_TYPE_UINT8_T, 0, 32, offsetof(mavlink_vkins_status_t, s_flag6) }, \
- { "mag_calib_stage", NULL, MAVLINK_TYPE_UINT8_T, 0, 33, offsetof(mavlink_vkins_status_t, mag_calib_stage) }, \
- { "g0", NULL, MAVLINK_TYPE_FLOAT, 0, 4, offsetof(mavlink_vkins_status_t, g0) }, \
- { "raw_latitude", NULL, MAVLINK_TYPE_INT32_T, 0, 8, offsetof(mavlink_vkins_status_t, raw_latitude) }, \
- { "raw_longitude", NULL, MAVLINK_TYPE_INT32_T, 0, 12, offsetof(mavlink_vkins_status_t, raw_longitude) }, \
- { "baro_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_vkins_status_t, baro_alt) }, \
- { "raw_gps_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_vkins_status_t, raw_gps_alt) }, \
- { "solv_psat_num", NULL, MAVLINK_TYPE_UINT8_T, 0, 34, offsetof(mavlink_vkins_status_t, solv_psat_num) }, \
- { "solv_hsat_num", NULL, MAVLINK_TYPE_UINT8_T, 0, 35, offsetof(mavlink_vkins_status_t, solv_hsat_num) }, \
- { "temperature", NULL, MAVLINK_TYPE_INT16_T, 0, 24, offsetof(mavlink_vkins_status_t, temperature) }, \
- { "vibe_coe", NULL, MAVLINK_TYPE_UINT8_T, 0, 36, offsetof(mavlink_vkins_status_t, vibe_coe) }, \
- { "roll", NULL, MAVLINK_TYPE_FLOAT, 0, 37, offsetof(mavlink_vkins_status_t, roll) }, \
- { "pitch", NULL, MAVLINK_TYPE_FLOAT, 0, 41, offsetof(mavlink_vkins_status_t, pitch) }, \
- { "yaw", NULL, MAVLINK_TYPE_FLOAT, 0, 45, offsetof(mavlink_vkins_status_t, yaw) }, \
- { "ve", NULL, MAVLINK_TYPE_FLOAT, 0, 49, offsetof(mavlink_vkins_status_t, ve) }, \
- { "vn", NULL, MAVLINK_TYPE_FLOAT, 0, 53, offsetof(mavlink_vkins_status_t, vn) }, \
- { "vu", NULL, MAVLINK_TYPE_FLOAT, 0, 57, offsetof(mavlink_vkins_status_t, vu) }, \
- { "ae", NULL, MAVLINK_TYPE_FLOAT, 0, 61, offsetof(mavlink_vkins_status_t, ae) }, \
- { "an", NULL, MAVLINK_TYPE_FLOAT, 0, 65, offsetof(mavlink_vkins_status_t, an) }, \
- { "au", NULL, MAVLINK_TYPE_FLOAT, 0, 69, offsetof(mavlink_vkins_status_t, au) }, \
- { "solv_lon", NULL, MAVLINK_TYPE_INT32_T, 0, 73, offsetof(mavlink_vkins_status_t, solv_lon) }, \
- { "solv_lat", NULL, MAVLINK_TYPE_INT32_T, 0, 77, offsetof(mavlink_vkins_status_t, solv_lat) }, \
- { "solv_hR", NULL, MAVLINK_TYPE_FLOAT, 0, 81, offsetof(mavlink_vkins_status_t, solv_hR) }, \
- { "sensor_state", NULL, MAVLINK_TYPE_UINT32_T, 0, 85, offsetof(mavlink_vkins_status_t, sensor_state) }, \
- { "id", NULL, MAVLINK_TYPE_UINT8_T, 0, 89, offsetof(mavlink_vkins_status_t, id) }, \
- } \
- }
- #else
- #define MAVLINK_MESSAGE_INFO_VKINS_STATUS { \
- "VKINS_STATUS", \
- 32, \
- { { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_vkins_status_t, time_boot_ms) }, \
- { "nav_status", "0x%02x", MAVLINK_TYPE_UINT8_T, 0, 26, offsetof(mavlink_vkins_status_t, nav_status) }, \
- { "s_flag1", NULL, MAVLINK_TYPE_UINT8_T, 0, 27, offsetof(mavlink_vkins_status_t, s_flag1) }, \
- { "s_flag2", NULL, MAVLINK_TYPE_UINT8_T, 0, 28, offsetof(mavlink_vkins_status_t, s_flag2) }, \
- { "s_flag3", NULL, MAVLINK_TYPE_UINT8_T, 0, 29, offsetof(mavlink_vkins_status_t, s_flag3) }, \
- { "s_flag4", NULL, MAVLINK_TYPE_UINT8_T, 0, 30, offsetof(mavlink_vkins_status_t, s_flag4) }, \
- { "s_flag5", NULL, MAVLINK_TYPE_UINT8_T, 0, 31, offsetof(mavlink_vkins_status_t, s_flag5) }, \
- { "s_flag6", NULL, MAVLINK_TYPE_UINT8_T, 0, 32, offsetof(mavlink_vkins_status_t, s_flag6) }, \
- { "mag_calib_stage", NULL, MAVLINK_TYPE_UINT8_T, 0, 33, offsetof(mavlink_vkins_status_t, mag_calib_stage) }, \
- { "g0", NULL, MAVLINK_TYPE_FLOAT, 0, 4, offsetof(mavlink_vkins_status_t, g0) }, \
- { "raw_latitude", NULL, MAVLINK_TYPE_INT32_T, 0, 8, offsetof(mavlink_vkins_status_t, raw_latitude) }, \
- { "raw_longitude", NULL, MAVLINK_TYPE_INT32_T, 0, 12, offsetof(mavlink_vkins_status_t, raw_longitude) }, \
- { "baro_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_vkins_status_t, baro_alt) }, \
- { "raw_gps_alt", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_vkins_status_t, raw_gps_alt) }, \
- { "solv_psat_num", NULL, MAVLINK_TYPE_UINT8_T, 0, 34, offsetof(mavlink_vkins_status_t, solv_psat_num) }, \
- { "solv_hsat_num", NULL, MAVLINK_TYPE_UINT8_T, 0, 35, offsetof(mavlink_vkins_status_t, solv_hsat_num) }, \
- { "temperature", NULL, MAVLINK_TYPE_INT16_T, 0, 24, offsetof(mavlink_vkins_status_t, temperature) }, \
- { "vibe_coe", NULL, MAVLINK_TYPE_UINT8_T, 0, 36, offsetof(mavlink_vkins_status_t, vibe_coe) }, \
- { "roll", NULL, MAVLINK_TYPE_FLOAT, 0, 37, offsetof(mavlink_vkins_status_t, roll) }, \
- { "pitch", NULL, MAVLINK_TYPE_FLOAT, 0, 41, offsetof(mavlink_vkins_status_t, pitch) }, \
- { "yaw", NULL, MAVLINK_TYPE_FLOAT, 0, 45, offsetof(mavlink_vkins_status_t, yaw) }, \
- { "ve", NULL, MAVLINK_TYPE_FLOAT, 0, 49, offsetof(mavlink_vkins_status_t, ve) }, \
- { "vn", NULL, MAVLINK_TYPE_FLOAT, 0, 53, offsetof(mavlink_vkins_status_t, vn) }, \
- { "vu", NULL, MAVLINK_TYPE_FLOAT, 0, 57, offsetof(mavlink_vkins_status_t, vu) }, \
- { "ae", NULL, MAVLINK_TYPE_FLOAT, 0, 61, offsetof(mavlink_vkins_status_t, ae) }, \
- { "an", NULL, MAVLINK_TYPE_FLOAT, 0, 65, offsetof(mavlink_vkins_status_t, an) }, \
- { "au", NULL, MAVLINK_TYPE_FLOAT, 0, 69, offsetof(mavlink_vkins_status_t, au) }, \
- { "solv_lon", NULL, MAVLINK_TYPE_INT32_T, 0, 73, offsetof(mavlink_vkins_status_t, solv_lon) }, \
- { "solv_lat", NULL, MAVLINK_TYPE_INT32_T, 0, 77, offsetof(mavlink_vkins_status_t, solv_lat) }, \
- { "solv_hR", NULL, MAVLINK_TYPE_FLOAT, 0, 81, offsetof(mavlink_vkins_status_t, solv_hR) }, \
- { "sensor_state", NULL, MAVLINK_TYPE_UINT32_T, 0, 85, offsetof(mavlink_vkins_status_t, sensor_state) }, \
- { "id", NULL, MAVLINK_TYPE_UINT8_T, 0, 89, offsetof(mavlink_vkins_status_t, id) }, \
- } \
- }
- #endif
- /**
- * @brief Pack a vkins_status message
- * @param system_id ID of this system
- * @param component_id ID of this component (e.g. 200 for IMU)
- * @param msg The MAVLink message to compress the data into
- *
- * @param time_boot_ms [ms] Timestamp in ms from system boot.
- * @param nav_status VKINS
- navigation status flag.
- * @param s_flag1 vinks flag1
- * @param s_flag2 vinks flag2.
- * @param s_flag3 vinks flag3.
- * @param s_flag4 vinks flag4.
- * @param s_flag5 vinks flag5.
- * @param s_flag6 vinks flag6.
- * @param mag_calib_stage vkins mag calib
- stage.
- * @param g0 [m/s/s] vkins initial calibrated gravitation acceleration.
- * @param raw_latitude [degE7] raw longitude for data fusion
- * @param raw_longitude [degE7] raw latitidue for data fusion
- * @param baro_alt [m] raw baromoter altitude for data fusion
- * @param raw_gps_alt [m] gps amsl altitude for data fusion
- * @param solv_psat_num satelites number for position
- * @param solv_hsat_num satelites number for heading
- * @param temperature [degC] temperature
- * @param vibe_coe
- * @param roll [deg] solved roll angle
- * @param pitch [deg] solved pitch angle
- * @param yaw [deg] solved yaw angle
- * @param ve [m/s] solved east speed
- * @param vn [m/s] solved north speed
- * @param vu [m/s] solved up speed
- * @param ae [m/s/s] solved east acceleration
- * @param an [m/s/s] solved north acceleration
- * @param au [m/s/s] solved up acceleration
- * @param solv_lon [degE7] solved longitude
- * @param solv_lat [degE7] solved lattidue
- * @param solv_hR [m] solved relative altitude
- * @param sensor_state sensor state
- * @param id nav id, 0 for main nav, 1 for aux nav
- * @return length of the message in bytes (excluding serial stream start sign)
- */
- static inline uint16_t mavlink_msg_vkins_status_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
- uint32_t time_boot_ms, uint8_t nav_status, uint8_t s_flag1, uint8_t s_flag2, uint8_t s_flag3, uint8_t s_flag4, uint8_t s_flag5, uint8_t s_flag6, uint8_t mag_calib_stage, float g0, int32_t raw_latitude, int32_t raw_longitude, float baro_alt, float raw_gps_alt, uint8_t solv_psat_num, uint8_t solv_hsat_num, int16_t temperature, uint8_t vibe_coe, float roll, float pitch, float yaw, float ve, float vn, float vu, float ae, float an, float au, int32_t solv_lon, int32_t solv_lat, float solv_hR, uint32_t sensor_state, uint8_t id)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- char buf[MAVLINK_MSG_ID_VKINS_STATUS_LEN];
- _mav_put_uint32_t(buf, 0, time_boot_ms);
- _mav_put_float(buf, 4, g0);
- _mav_put_int32_t(buf, 8, raw_latitude);
- _mav_put_int32_t(buf, 12, raw_longitude);
- _mav_put_float(buf, 16, baro_alt);
- _mav_put_float(buf, 20, raw_gps_alt);
- _mav_put_int16_t(buf, 24, temperature);
- _mav_put_uint8_t(buf, 26, nav_status);
- _mav_put_uint8_t(buf, 27, s_flag1);
- _mav_put_uint8_t(buf, 28, s_flag2);
- _mav_put_uint8_t(buf, 29, s_flag3);
- _mav_put_uint8_t(buf, 30, s_flag4);
- _mav_put_uint8_t(buf, 31, s_flag5);
- _mav_put_uint8_t(buf, 32, s_flag6);
- _mav_put_uint8_t(buf, 33, mag_calib_stage);
- _mav_put_uint8_t(buf, 34, solv_psat_num);
- _mav_put_uint8_t(buf, 35, solv_hsat_num);
- _mav_put_uint8_t(buf, 36, vibe_coe);
- _mav_put_float(buf, 37, roll);
- _mav_put_float(buf, 41, pitch);
- _mav_put_float(buf, 45, yaw);
- _mav_put_float(buf, 49, ve);
- _mav_put_float(buf, 53, vn);
- _mav_put_float(buf, 57, vu);
- _mav_put_float(buf, 61, ae);
- _mav_put_float(buf, 65, an);
- _mav_put_float(buf, 69, au);
- _mav_put_int32_t(buf, 73, solv_lon);
- _mav_put_int32_t(buf, 77, solv_lat);
- _mav_put_float(buf, 81, solv_hR);
- _mav_put_uint32_t(buf, 85, sensor_state);
- _mav_put_uint8_t(buf, 89, id);
- memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #else
- mavlink_vkins_status_t packet;
- packet.time_boot_ms = time_boot_ms;
- packet.g0 = g0;
- packet.raw_latitude = raw_latitude;
- packet.raw_longitude = raw_longitude;
- packet.baro_alt = baro_alt;
- packet.raw_gps_alt = raw_gps_alt;
- packet.temperature = temperature;
- packet.nav_status = nav_status;
- packet.s_flag1 = s_flag1;
- packet.s_flag2 = s_flag2;
- packet.s_flag3 = s_flag3;
- packet.s_flag4 = s_flag4;
- packet.s_flag5 = s_flag5;
- packet.s_flag6 = s_flag6;
- packet.mag_calib_stage = mag_calib_stage;
- packet.solv_psat_num = solv_psat_num;
- packet.solv_hsat_num = solv_hsat_num;
- packet.vibe_coe = vibe_coe;
- packet.roll = roll;
- packet.pitch = pitch;
- packet.yaw = yaw;
- packet.ve = ve;
- packet.vn = vn;
- packet.vu = vu;
- packet.ae = ae;
- packet.an = an;
- packet.au = au;
- packet.solv_lon = solv_lon;
- packet.solv_lat = solv_lat;
- packet.solv_hR = solv_hR;
- packet.sensor_state = sensor_state;
- packet.id = id;
- memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #endif
- msg->msgid = MAVLINK_MSG_ID_VKINS_STATUS;
- return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- }
- /**
- * @brief Pack a vkins_status message
- * @param system_id ID of this system
- * @param component_id ID of this component (e.g. 200 for IMU)
- * @param status MAVLink status structure
- * @param msg The MAVLink message to compress the data into
- *
- * @param time_boot_ms [ms] Timestamp in ms from system boot.
- * @param nav_status VKINS
- navigation status flag.
- * @param s_flag1 vinks flag1
- * @param s_flag2 vinks flag2.
- * @param s_flag3 vinks flag3.
- * @param s_flag4 vinks flag4.
- * @param s_flag5 vinks flag5.
- * @param s_flag6 vinks flag6.
- * @param mag_calib_stage vkins mag calib
- stage.
- * @param g0 [m/s/s] vkins initial calibrated gravitation acceleration.
- * @param raw_latitude [degE7] raw longitude for data fusion
- * @param raw_longitude [degE7] raw latitidue for data fusion
- * @param baro_alt [m] raw baromoter altitude for data fusion
- * @param raw_gps_alt [m] gps amsl altitude for data fusion
- * @param solv_psat_num satelites number for position
- * @param solv_hsat_num satelites number for heading
- * @param temperature [degC] temperature
- * @param vibe_coe
- * @param roll [deg] solved roll angle
- * @param pitch [deg] solved pitch angle
- * @param yaw [deg] solved yaw angle
- * @param ve [m/s] solved east speed
- * @param vn [m/s] solved north speed
- * @param vu [m/s] solved up speed
- * @param ae [m/s/s] solved east acceleration
- * @param an [m/s/s] solved north acceleration
- * @param au [m/s/s] solved up acceleration
- * @param solv_lon [degE7] solved longitude
- * @param solv_lat [degE7] solved lattidue
- * @param solv_hR [m] solved relative altitude
- * @param sensor_state sensor state
- * @param id nav id, 0 for main nav, 1 for aux nav
- * @return length of the message in bytes (excluding serial stream start sign)
- */
- static inline uint16_t mavlink_msg_vkins_status_pack_status(uint8_t system_id, uint8_t component_id, mavlink_status_t *_status, mavlink_message_t* msg,
- uint32_t time_boot_ms, uint8_t nav_status, uint8_t s_flag1, uint8_t s_flag2, uint8_t s_flag3, uint8_t s_flag4, uint8_t s_flag5, uint8_t s_flag6, uint8_t mag_calib_stage, float g0, int32_t raw_latitude, int32_t raw_longitude, float baro_alt, float raw_gps_alt, uint8_t solv_psat_num, uint8_t solv_hsat_num, int16_t temperature, uint8_t vibe_coe, float roll, float pitch, float yaw, float ve, float vn, float vu, float ae, float an, float au, int32_t solv_lon, int32_t solv_lat, float solv_hR, uint32_t sensor_state, uint8_t id)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- char buf[MAVLINK_MSG_ID_VKINS_STATUS_LEN];
- _mav_put_uint32_t(buf, 0, time_boot_ms);
- _mav_put_float(buf, 4, g0);
- _mav_put_int32_t(buf, 8, raw_latitude);
- _mav_put_int32_t(buf, 12, raw_longitude);
- _mav_put_float(buf, 16, baro_alt);
- _mav_put_float(buf, 20, raw_gps_alt);
- _mav_put_int16_t(buf, 24, temperature);
- _mav_put_uint8_t(buf, 26, nav_status);
- _mav_put_uint8_t(buf, 27, s_flag1);
- _mav_put_uint8_t(buf, 28, s_flag2);
- _mav_put_uint8_t(buf, 29, s_flag3);
- _mav_put_uint8_t(buf, 30, s_flag4);
- _mav_put_uint8_t(buf, 31, s_flag5);
- _mav_put_uint8_t(buf, 32, s_flag6);
- _mav_put_uint8_t(buf, 33, mag_calib_stage);
- _mav_put_uint8_t(buf, 34, solv_psat_num);
- _mav_put_uint8_t(buf, 35, solv_hsat_num);
- _mav_put_uint8_t(buf, 36, vibe_coe);
- _mav_put_float(buf, 37, roll);
- _mav_put_float(buf, 41, pitch);
- _mav_put_float(buf, 45, yaw);
- _mav_put_float(buf, 49, ve);
- _mav_put_float(buf, 53, vn);
- _mav_put_float(buf, 57, vu);
- _mav_put_float(buf, 61, ae);
- _mav_put_float(buf, 65, an);
- _mav_put_float(buf, 69, au);
- _mav_put_int32_t(buf, 73, solv_lon);
- _mav_put_int32_t(buf, 77, solv_lat);
- _mav_put_float(buf, 81, solv_hR);
- _mav_put_uint32_t(buf, 85, sensor_state);
- _mav_put_uint8_t(buf, 89, id);
- memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #else
- mavlink_vkins_status_t packet;
- packet.time_boot_ms = time_boot_ms;
- packet.g0 = g0;
- packet.raw_latitude = raw_latitude;
- packet.raw_longitude = raw_longitude;
- packet.baro_alt = baro_alt;
- packet.raw_gps_alt = raw_gps_alt;
- packet.temperature = temperature;
- packet.nav_status = nav_status;
- packet.s_flag1 = s_flag1;
- packet.s_flag2 = s_flag2;
- packet.s_flag3 = s_flag3;
- packet.s_flag4 = s_flag4;
- packet.s_flag5 = s_flag5;
- packet.s_flag6 = s_flag6;
- packet.mag_calib_stage = mag_calib_stage;
- packet.solv_psat_num = solv_psat_num;
- packet.solv_hsat_num = solv_hsat_num;
- packet.vibe_coe = vibe_coe;
- packet.roll = roll;
- packet.pitch = pitch;
- packet.yaw = yaw;
- packet.ve = ve;
- packet.vn = vn;
- packet.vu = vu;
- packet.ae = ae;
- packet.an = an;
- packet.au = au;
- packet.solv_lon = solv_lon;
- packet.solv_lat = solv_lat;
- packet.solv_hR = solv_hR;
- packet.sensor_state = sensor_state;
- packet.id = id;
- memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #endif
- msg->msgid = MAVLINK_MSG_ID_VKINS_STATUS;
- #if MAVLINK_CRC_EXTRA
- return mavlink_finalize_message_buffer(msg, system_id, component_id, _status, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- #else
- return mavlink_finalize_message_buffer(msg, system_id, component_id, _status, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #endif
- }
- /**
- * @brief Pack a vkins_status message on a channel
- * @param system_id ID of this system
- * @param component_id ID of this component (e.g. 200 for IMU)
- * @param chan The MAVLink channel this message will be sent over
- * @param msg The MAVLink message to compress the data into
- * @param time_boot_ms [ms] Timestamp in ms from system boot.
- * @param nav_status VKINS
- navigation status flag.
- * @param s_flag1 vinks flag1
- * @param s_flag2 vinks flag2.
- * @param s_flag3 vinks flag3.
- * @param s_flag4 vinks flag4.
- * @param s_flag5 vinks flag5.
- * @param s_flag6 vinks flag6.
- * @param mag_calib_stage vkins mag calib
- stage.
- * @param g0 [m/s/s] vkins initial calibrated gravitation acceleration.
- * @param raw_latitude [degE7] raw longitude for data fusion
- * @param raw_longitude [degE7] raw latitidue for data fusion
- * @param baro_alt [m] raw baromoter altitude for data fusion
- * @param raw_gps_alt [m] gps amsl altitude for data fusion
- * @param solv_psat_num satelites number for position
- * @param solv_hsat_num satelites number for heading
- * @param temperature [degC] temperature
- * @param vibe_coe
- * @param roll [deg] solved roll angle
- * @param pitch [deg] solved pitch angle
- * @param yaw [deg] solved yaw angle
- * @param ve [m/s] solved east speed
- * @param vn [m/s] solved north speed
- * @param vu [m/s] solved up speed
- * @param ae [m/s/s] solved east acceleration
- * @param an [m/s/s] solved north acceleration
- * @param au [m/s/s] solved up acceleration
- * @param solv_lon [degE7] solved longitude
- * @param solv_lat [degE7] solved lattidue
- * @param solv_hR [m] solved relative altitude
- * @param sensor_state sensor state
- * @param id nav id, 0 for main nav, 1 for aux nav
- * @return length of the message in bytes (excluding serial stream start sign)
- */
- static inline uint16_t mavlink_msg_vkins_status_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
- mavlink_message_t* msg,
- uint32_t time_boot_ms,uint8_t nav_status,uint8_t s_flag1,uint8_t s_flag2,uint8_t s_flag3,uint8_t s_flag4,uint8_t s_flag5,uint8_t s_flag6,uint8_t mag_calib_stage,float g0,int32_t raw_latitude,int32_t raw_longitude,float baro_alt,float raw_gps_alt,uint8_t solv_psat_num,uint8_t solv_hsat_num,int16_t temperature,uint8_t vibe_coe,float roll,float pitch,float yaw,float ve,float vn,float vu,float ae,float an,float au,int32_t solv_lon,int32_t solv_lat,float solv_hR,uint32_t sensor_state,uint8_t id)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- char buf[MAVLINK_MSG_ID_VKINS_STATUS_LEN];
- _mav_put_uint32_t(buf, 0, time_boot_ms);
- _mav_put_float(buf, 4, g0);
- _mav_put_int32_t(buf, 8, raw_latitude);
- _mav_put_int32_t(buf, 12, raw_longitude);
- _mav_put_float(buf, 16, baro_alt);
- _mav_put_float(buf, 20, raw_gps_alt);
- _mav_put_int16_t(buf, 24, temperature);
- _mav_put_uint8_t(buf, 26, nav_status);
- _mav_put_uint8_t(buf, 27, s_flag1);
- _mav_put_uint8_t(buf, 28, s_flag2);
- _mav_put_uint8_t(buf, 29, s_flag3);
- _mav_put_uint8_t(buf, 30, s_flag4);
- _mav_put_uint8_t(buf, 31, s_flag5);
- _mav_put_uint8_t(buf, 32, s_flag6);
- _mav_put_uint8_t(buf, 33, mag_calib_stage);
- _mav_put_uint8_t(buf, 34, solv_psat_num);
- _mav_put_uint8_t(buf, 35, solv_hsat_num);
- _mav_put_uint8_t(buf, 36, vibe_coe);
- _mav_put_float(buf, 37, roll);
- _mav_put_float(buf, 41, pitch);
- _mav_put_float(buf, 45, yaw);
- _mav_put_float(buf, 49, ve);
- _mav_put_float(buf, 53, vn);
- _mav_put_float(buf, 57, vu);
- _mav_put_float(buf, 61, ae);
- _mav_put_float(buf, 65, an);
- _mav_put_float(buf, 69, au);
- _mav_put_int32_t(buf, 73, solv_lon);
- _mav_put_int32_t(buf, 77, solv_lat);
- _mav_put_float(buf, 81, solv_hR);
- _mav_put_uint32_t(buf, 85, sensor_state);
- _mav_put_uint8_t(buf, 89, id);
- memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #else
- mavlink_vkins_status_t packet;
- packet.time_boot_ms = time_boot_ms;
- packet.g0 = g0;
- packet.raw_latitude = raw_latitude;
- packet.raw_longitude = raw_longitude;
- packet.baro_alt = baro_alt;
- packet.raw_gps_alt = raw_gps_alt;
- packet.temperature = temperature;
- packet.nav_status = nav_status;
- packet.s_flag1 = s_flag1;
- packet.s_flag2 = s_flag2;
- packet.s_flag3 = s_flag3;
- packet.s_flag4 = s_flag4;
- packet.s_flag5 = s_flag5;
- packet.s_flag6 = s_flag6;
- packet.mag_calib_stage = mag_calib_stage;
- packet.solv_psat_num = solv_psat_num;
- packet.solv_hsat_num = solv_hsat_num;
- packet.vibe_coe = vibe_coe;
- packet.roll = roll;
- packet.pitch = pitch;
- packet.yaw = yaw;
- packet.ve = ve;
- packet.vn = vn;
- packet.vu = vu;
- packet.ae = ae;
- packet.an = an;
- packet.au = au;
- packet.solv_lon = solv_lon;
- packet.solv_lat = solv_lat;
- packet.solv_hR = solv_hR;
- packet.sensor_state = sensor_state;
- packet.id = id;
- memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- #endif
- msg->msgid = MAVLINK_MSG_ID_VKINS_STATUS;
- return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- }
- /**
- * @brief Encode a vkins_status struct
- *
- * @param system_id ID of this system
- * @param component_id ID of this component (e.g. 200 for IMU)
- * @param msg The MAVLink message to compress the data into
- * @param vkins_status C-struct to read the message contents from
- */
- static inline uint16_t mavlink_msg_vkins_status_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_vkins_status_t* vkins_status)
- {
- return mavlink_msg_vkins_status_pack(system_id, component_id, msg, vkins_status->time_boot_ms, vkins_status->nav_status, vkins_status->s_flag1, vkins_status->s_flag2, vkins_status->s_flag3, vkins_status->s_flag4, vkins_status->s_flag5, vkins_status->s_flag6, vkins_status->mag_calib_stage, vkins_status->g0, vkins_status->raw_latitude, vkins_status->raw_longitude, vkins_status->baro_alt, vkins_status->raw_gps_alt, vkins_status->solv_psat_num, vkins_status->solv_hsat_num, vkins_status->temperature, vkins_status->vibe_coe, vkins_status->roll, vkins_status->pitch, vkins_status->yaw, vkins_status->ve, vkins_status->vn, vkins_status->vu, vkins_status->ae, vkins_status->an, vkins_status->au, vkins_status->solv_lon, vkins_status->solv_lat, vkins_status->solv_hR, vkins_status->sensor_state, vkins_status->id);
- }
- /**
- * @brief Encode a vkins_status struct on a channel
- *
- * @param system_id ID of this system
- * @param component_id ID of this component (e.g. 200 for IMU)
- * @param chan The MAVLink channel this message will be sent over
- * @param msg The MAVLink message to compress the data into
- * @param vkins_status C-struct to read the message contents from
- */
- static inline uint16_t mavlink_msg_vkins_status_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_vkins_status_t* vkins_status)
- {
- return mavlink_msg_vkins_status_pack_chan(system_id, component_id, chan, msg, vkins_status->time_boot_ms, vkins_status->nav_status, vkins_status->s_flag1, vkins_status->s_flag2, vkins_status->s_flag3, vkins_status->s_flag4, vkins_status->s_flag5, vkins_status->s_flag6, vkins_status->mag_calib_stage, vkins_status->g0, vkins_status->raw_latitude, vkins_status->raw_longitude, vkins_status->baro_alt, vkins_status->raw_gps_alt, vkins_status->solv_psat_num, vkins_status->solv_hsat_num, vkins_status->temperature, vkins_status->vibe_coe, vkins_status->roll, vkins_status->pitch, vkins_status->yaw, vkins_status->ve, vkins_status->vn, vkins_status->vu, vkins_status->ae, vkins_status->an, vkins_status->au, vkins_status->solv_lon, vkins_status->solv_lat, vkins_status->solv_hR, vkins_status->sensor_state, vkins_status->id);
- }
- /**
- * @brief Encode a vkins_status struct with provided status structure
- *
- * @param system_id ID of this system
- * @param component_id ID of this component (e.g. 200 for IMU)
- * @param status MAVLink status structure
- * @param msg The MAVLink message to compress the data into
- * @param vkins_status C-struct to read the message contents from
- */
- static inline uint16_t mavlink_msg_vkins_status_encode_status(uint8_t system_id, uint8_t component_id, mavlink_status_t* _status, mavlink_message_t* msg, const mavlink_vkins_status_t* vkins_status)
- {
- return mavlink_msg_vkins_status_pack_status(system_id, component_id, _status, msg, vkins_status->time_boot_ms, vkins_status->nav_status, vkins_status->s_flag1, vkins_status->s_flag2, vkins_status->s_flag3, vkins_status->s_flag4, vkins_status->s_flag5, vkins_status->s_flag6, vkins_status->mag_calib_stage, vkins_status->g0, vkins_status->raw_latitude, vkins_status->raw_longitude, vkins_status->baro_alt, vkins_status->raw_gps_alt, vkins_status->solv_psat_num, vkins_status->solv_hsat_num, vkins_status->temperature, vkins_status->vibe_coe, vkins_status->roll, vkins_status->pitch, vkins_status->yaw, vkins_status->ve, vkins_status->vn, vkins_status->vu, vkins_status->ae, vkins_status->an, vkins_status->au, vkins_status->solv_lon, vkins_status->solv_lat, vkins_status->solv_hR, vkins_status->sensor_state, vkins_status->id);
- }
- /**
- * @brief Send a vkins_status message
- * @param chan MAVLink channel to send the message
- *
- * @param time_boot_ms [ms] Timestamp in ms from system boot.
- * @param nav_status VKINS
- navigation status flag.
- * @param s_flag1 vinks flag1
- * @param s_flag2 vinks flag2.
- * @param s_flag3 vinks flag3.
- * @param s_flag4 vinks flag4.
- * @param s_flag5 vinks flag5.
- * @param s_flag6 vinks flag6.
- * @param mag_calib_stage vkins mag calib
- stage.
- * @param g0 [m/s/s] vkins initial calibrated gravitation acceleration.
- * @param raw_latitude [degE7] raw longitude for data fusion
- * @param raw_longitude [degE7] raw latitidue for data fusion
- * @param baro_alt [m] raw baromoter altitude for data fusion
- * @param raw_gps_alt [m] gps amsl altitude for data fusion
- * @param solv_psat_num satelites number for position
- * @param solv_hsat_num satelites number for heading
- * @param temperature [degC] temperature
- * @param vibe_coe
- * @param roll [deg] solved roll angle
- * @param pitch [deg] solved pitch angle
- * @param yaw [deg] solved yaw angle
- * @param ve [m/s] solved east speed
- * @param vn [m/s] solved north speed
- * @param vu [m/s] solved up speed
- * @param ae [m/s/s] solved east acceleration
- * @param an [m/s/s] solved north acceleration
- * @param au [m/s/s] solved up acceleration
- * @param solv_lon [degE7] solved longitude
- * @param solv_lat [degE7] solved lattidue
- * @param solv_hR [m] solved relative altitude
- * @param sensor_state sensor state
- * @param id nav id, 0 for main nav, 1 for aux nav
- */
- #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
- static inline void mavlink_msg_vkins_status_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t nav_status, uint8_t s_flag1, uint8_t s_flag2, uint8_t s_flag3, uint8_t s_flag4, uint8_t s_flag5, uint8_t s_flag6, uint8_t mag_calib_stage, float g0, int32_t raw_latitude, int32_t raw_longitude, float baro_alt, float raw_gps_alt, uint8_t solv_psat_num, uint8_t solv_hsat_num, int16_t temperature, uint8_t vibe_coe, float roll, float pitch, float yaw, float ve, float vn, float vu, float ae, float an, float au, int32_t solv_lon, int32_t solv_lat, float solv_hR, uint32_t sensor_state, uint8_t id)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- char buf[MAVLINK_MSG_ID_VKINS_STATUS_LEN];
- _mav_put_uint32_t(buf, 0, time_boot_ms);
- _mav_put_float(buf, 4, g0);
- _mav_put_int32_t(buf, 8, raw_latitude);
- _mav_put_int32_t(buf, 12, raw_longitude);
- _mav_put_float(buf, 16, baro_alt);
- _mav_put_float(buf, 20, raw_gps_alt);
- _mav_put_int16_t(buf, 24, temperature);
- _mav_put_uint8_t(buf, 26, nav_status);
- _mav_put_uint8_t(buf, 27, s_flag1);
- _mav_put_uint8_t(buf, 28, s_flag2);
- _mav_put_uint8_t(buf, 29, s_flag3);
- _mav_put_uint8_t(buf, 30, s_flag4);
- _mav_put_uint8_t(buf, 31, s_flag5);
- _mav_put_uint8_t(buf, 32, s_flag6);
- _mav_put_uint8_t(buf, 33, mag_calib_stage);
- _mav_put_uint8_t(buf, 34, solv_psat_num);
- _mav_put_uint8_t(buf, 35, solv_hsat_num);
- _mav_put_uint8_t(buf, 36, vibe_coe);
- _mav_put_float(buf, 37, roll);
- _mav_put_float(buf, 41, pitch);
- _mav_put_float(buf, 45, yaw);
- _mav_put_float(buf, 49, ve);
- _mav_put_float(buf, 53, vn);
- _mav_put_float(buf, 57, vu);
- _mav_put_float(buf, 61, ae);
- _mav_put_float(buf, 65, an);
- _mav_put_float(buf, 69, au);
- _mav_put_int32_t(buf, 73, solv_lon);
- _mav_put_int32_t(buf, 77, solv_lat);
- _mav_put_float(buf, 81, solv_hR);
- _mav_put_uint32_t(buf, 85, sensor_state);
- _mav_put_uint8_t(buf, 89, id);
- _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_VKINS_STATUS, buf, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- #else
- mavlink_vkins_status_t packet;
- packet.time_boot_ms = time_boot_ms;
- packet.g0 = g0;
- packet.raw_latitude = raw_latitude;
- packet.raw_longitude = raw_longitude;
- packet.baro_alt = baro_alt;
- packet.raw_gps_alt = raw_gps_alt;
- packet.temperature = temperature;
- packet.nav_status = nav_status;
- packet.s_flag1 = s_flag1;
- packet.s_flag2 = s_flag2;
- packet.s_flag3 = s_flag3;
- packet.s_flag4 = s_flag4;
- packet.s_flag5 = s_flag5;
- packet.s_flag6 = s_flag6;
- packet.mag_calib_stage = mag_calib_stage;
- packet.solv_psat_num = solv_psat_num;
- packet.solv_hsat_num = solv_hsat_num;
- packet.vibe_coe = vibe_coe;
- packet.roll = roll;
- packet.pitch = pitch;
- packet.yaw = yaw;
- packet.ve = ve;
- packet.vn = vn;
- packet.vu = vu;
- packet.ae = ae;
- packet.an = an;
- packet.au = au;
- packet.solv_lon = solv_lon;
- packet.solv_lat = solv_lat;
- packet.solv_hR = solv_hR;
- packet.sensor_state = sensor_state;
- packet.id = id;
- _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_VKINS_STATUS, (const char *)&packet, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- #endif
- }
- /**
- * @brief Send a vkins_status message
- * @param chan MAVLink channel to send the message
- * @param struct The MAVLink struct to serialize
- */
- static inline void mavlink_msg_vkins_status_send_struct(mavlink_channel_t chan, const mavlink_vkins_status_t* vkins_status)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- mavlink_msg_vkins_status_send(chan, vkins_status->time_boot_ms, vkins_status->nav_status, vkins_status->s_flag1, vkins_status->s_flag2, vkins_status->s_flag3, vkins_status->s_flag4, vkins_status->s_flag5, vkins_status->s_flag6, vkins_status->mag_calib_stage, vkins_status->g0, vkins_status->raw_latitude, vkins_status->raw_longitude, vkins_status->baro_alt, vkins_status->raw_gps_alt, vkins_status->solv_psat_num, vkins_status->solv_hsat_num, vkins_status->temperature, vkins_status->vibe_coe, vkins_status->roll, vkins_status->pitch, vkins_status->yaw, vkins_status->ve, vkins_status->vn, vkins_status->vu, vkins_status->ae, vkins_status->an, vkins_status->au, vkins_status->solv_lon, vkins_status->solv_lat, vkins_status->solv_hR, vkins_status->sensor_state, vkins_status->id);
- #else
- _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_VKINS_STATUS, (const char *)vkins_status, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- #endif
- }
- #if MAVLINK_MSG_ID_VKINS_STATUS_LEN <= MAVLINK_MAX_PAYLOAD_LEN
- /*
- This variant of _send() can be used to save stack space by re-using
- memory from the receive buffer. The caller provides a
- mavlink_message_t which is the size of a full mavlink message. This
- is usually the receive buffer for the channel, and allows a reply to an
- incoming message with minimum stack space usage.
- */
- static inline void mavlink_msg_vkins_status_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t nav_status, uint8_t s_flag1, uint8_t s_flag2, uint8_t s_flag3, uint8_t s_flag4, uint8_t s_flag5, uint8_t s_flag6, uint8_t mag_calib_stage, float g0, int32_t raw_latitude, int32_t raw_longitude, float baro_alt, float raw_gps_alt, uint8_t solv_psat_num, uint8_t solv_hsat_num, int16_t temperature, uint8_t vibe_coe, float roll, float pitch, float yaw, float ve, float vn, float vu, float ae, float an, float au, int32_t solv_lon, int32_t solv_lat, float solv_hR, uint32_t sensor_state, uint8_t id)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- char *buf = (char *)msgbuf;
- _mav_put_uint32_t(buf, 0, time_boot_ms);
- _mav_put_float(buf, 4, g0);
- _mav_put_int32_t(buf, 8, raw_latitude);
- _mav_put_int32_t(buf, 12, raw_longitude);
- _mav_put_float(buf, 16, baro_alt);
- _mav_put_float(buf, 20, raw_gps_alt);
- _mav_put_int16_t(buf, 24, temperature);
- _mav_put_uint8_t(buf, 26, nav_status);
- _mav_put_uint8_t(buf, 27, s_flag1);
- _mav_put_uint8_t(buf, 28, s_flag2);
- _mav_put_uint8_t(buf, 29, s_flag3);
- _mav_put_uint8_t(buf, 30, s_flag4);
- _mav_put_uint8_t(buf, 31, s_flag5);
- _mav_put_uint8_t(buf, 32, s_flag6);
- _mav_put_uint8_t(buf, 33, mag_calib_stage);
- _mav_put_uint8_t(buf, 34, solv_psat_num);
- _mav_put_uint8_t(buf, 35, solv_hsat_num);
- _mav_put_uint8_t(buf, 36, vibe_coe);
- _mav_put_float(buf, 37, roll);
- _mav_put_float(buf, 41, pitch);
- _mav_put_float(buf, 45, yaw);
- _mav_put_float(buf, 49, ve);
- _mav_put_float(buf, 53, vn);
- _mav_put_float(buf, 57, vu);
- _mav_put_float(buf, 61, ae);
- _mav_put_float(buf, 65, an);
- _mav_put_float(buf, 69, au);
- _mav_put_int32_t(buf, 73, solv_lon);
- _mav_put_int32_t(buf, 77, solv_lat);
- _mav_put_float(buf, 81, solv_hR);
- _mav_put_uint32_t(buf, 85, sensor_state);
- _mav_put_uint8_t(buf, 89, id);
- _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_VKINS_STATUS, buf, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- #else
- mavlink_vkins_status_t *packet = (mavlink_vkins_status_t *)msgbuf;
- packet->time_boot_ms = time_boot_ms;
- packet->g0 = g0;
- packet->raw_latitude = raw_latitude;
- packet->raw_longitude = raw_longitude;
- packet->baro_alt = baro_alt;
- packet->raw_gps_alt = raw_gps_alt;
- packet->temperature = temperature;
- packet->nav_status = nav_status;
- packet->s_flag1 = s_flag1;
- packet->s_flag2 = s_flag2;
- packet->s_flag3 = s_flag3;
- packet->s_flag4 = s_flag4;
- packet->s_flag5 = s_flag5;
- packet->s_flag6 = s_flag6;
- packet->mag_calib_stage = mag_calib_stage;
- packet->solv_psat_num = solv_psat_num;
- packet->solv_hsat_num = solv_hsat_num;
- packet->vibe_coe = vibe_coe;
- packet->roll = roll;
- packet->pitch = pitch;
- packet->yaw = yaw;
- packet->ve = ve;
- packet->vn = vn;
- packet->vu = vu;
- packet->ae = ae;
- packet->an = an;
- packet->au = au;
- packet->solv_lon = solv_lon;
- packet->solv_lat = solv_lat;
- packet->solv_hR = solv_hR;
- packet->sensor_state = sensor_state;
- packet->id = id;
- _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_VKINS_STATUS, (const char *)packet, MAVLINK_MSG_ID_VKINS_STATUS_MIN_LEN, MAVLINK_MSG_ID_VKINS_STATUS_LEN, MAVLINK_MSG_ID_VKINS_STATUS_CRC);
- #endif
- }
- #endif
- #endif
- // MESSAGE VKINS_STATUS UNPACKING
- /**
- * @brief Get field time_boot_ms from vkins_status message
- *
- * @return [ms] Timestamp in ms from system boot.
- */
- static inline uint32_t mavlink_msg_vkins_status_get_time_boot_ms(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint32_t(msg, 0);
- }
- /**
- * @brief Get field nav_status from vkins_status message
- *
- * @return VKINS
- navigation status flag.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_nav_status(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 26);
- }
- /**
- * @brief Get field s_flag1 from vkins_status message
- *
- * @return vinks flag1
- */
- static inline uint8_t mavlink_msg_vkins_status_get_s_flag1(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 27);
- }
- /**
- * @brief Get field s_flag2 from vkins_status message
- *
- * @return vinks flag2.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_s_flag2(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 28);
- }
- /**
- * @brief Get field s_flag3 from vkins_status message
- *
- * @return vinks flag3.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_s_flag3(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 29);
- }
- /**
- * @brief Get field s_flag4 from vkins_status message
- *
- * @return vinks flag4.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_s_flag4(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 30);
- }
- /**
- * @brief Get field s_flag5 from vkins_status message
- *
- * @return vinks flag5.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_s_flag5(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 31);
- }
- /**
- * @brief Get field s_flag6 from vkins_status message
- *
- * @return vinks flag6.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_s_flag6(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 32);
- }
- /**
- * @brief Get field mag_calib_stage from vkins_status message
- *
- * @return vkins mag calib
- stage.
- */
- static inline uint8_t mavlink_msg_vkins_status_get_mag_calib_stage(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 33);
- }
- /**
- * @brief Get field g0 from vkins_status message
- *
- * @return [m/s/s] vkins initial calibrated gravitation acceleration.
- */
- static inline float mavlink_msg_vkins_status_get_g0(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 4);
- }
- /**
- * @brief Get field raw_latitude from vkins_status message
- *
- * @return [degE7] raw longitude for data fusion
- */
- static inline int32_t mavlink_msg_vkins_status_get_raw_latitude(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_int32_t(msg, 8);
- }
- /**
- * @brief Get field raw_longitude from vkins_status message
- *
- * @return [degE7] raw latitidue for data fusion
- */
- static inline int32_t mavlink_msg_vkins_status_get_raw_longitude(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_int32_t(msg, 12);
- }
- /**
- * @brief Get field baro_alt from vkins_status message
- *
- * @return [m] raw baromoter altitude for data fusion
- */
- static inline float mavlink_msg_vkins_status_get_baro_alt(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 16);
- }
- /**
- * @brief Get field raw_gps_alt from vkins_status message
- *
- * @return [m] gps amsl altitude for data fusion
- */
- static inline float mavlink_msg_vkins_status_get_raw_gps_alt(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 20);
- }
- /**
- * @brief Get field solv_psat_num from vkins_status message
- *
- * @return satelites number for position
- */
- static inline uint8_t mavlink_msg_vkins_status_get_solv_psat_num(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 34);
- }
- /**
- * @brief Get field solv_hsat_num from vkins_status message
- *
- * @return satelites number for heading
- */
- static inline uint8_t mavlink_msg_vkins_status_get_solv_hsat_num(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 35);
- }
- /**
- * @brief Get field temperature from vkins_status message
- *
- * @return [degC] temperature
- */
- static inline int16_t mavlink_msg_vkins_status_get_temperature(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_int16_t(msg, 24);
- }
- /**
- * @brief Get field vibe_coe from vkins_status message
- *
- * @return
- */
- static inline uint8_t mavlink_msg_vkins_status_get_vibe_coe(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 36);
- }
- /**
- * @brief Get field roll from vkins_status message
- *
- * @return [deg] solved roll angle
- */
- static inline float mavlink_msg_vkins_status_get_roll(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 37);
- }
- /**
- * @brief Get field pitch from vkins_status message
- *
- * @return [deg] solved pitch angle
- */
- static inline float mavlink_msg_vkins_status_get_pitch(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 41);
- }
- /**
- * @brief Get field yaw from vkins_status message
- *
- * @return [deg] solved yaw angle
- */
- static inline float mavlink_msg_vkins_status_get_yaw(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 45);
- }
- /**
- * @brief Get field ve from vkins_status message
- *
- * @return [m/s] solved east speed
- */
- static inline float mavlink_msg_vkins_status_get_ve(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 49);
- }
- /**
- * @brief Get field vn from vkins_status message
- *
- * @return [m/s] solved north speed
- */
- static inline float mavlink_msg_vkins_status_get_vn(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 53);
- }
- /**
- * @brief Get field vu from vkins_status message
- *
- * @return [m/s] solved up speed
- */
- static inline float mavlink_msg_vkins_status_get_vu(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 57);
- }
- /**
- * @brief Get field ae from vkins_status message
- *
- * @return [m/s/s] solved east acceleration
- */
- static inline float mavlink_msg_vkins_status_get_ae(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 61);
- }
- /**
- * @brief Get field an from vkins_status message
- *
- * @return [m/s/s] solved north acceleration
- */
- static inline float mavlink_msg_vkins_status_get_an(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 65);
- }
- /**
- * @brief Get field au from vkins_status message
- *
- * @return [m/s/s] solved up acceleration
- */
- static inline float mavlink_msg_vkins_status_get_au(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 69);
- }
- /**
- * @brief Get field solv_lon from vkins_status message
- *
- * @return [degE7] solved longitude
- */
- static inline int32_t mavlink_msg_vkins_status_get_solv_lon(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_int32_t(msg, 73);
- }
- /**
- * @brief Get field solv_lat from vkins_status message
- *
- * @return [degE7] solved lattidue
- */
- static inline int32_t mavlink_msg_vkins_status_get_solv_lat(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_int32_t(msg, 77);
- }
- /**
- * @brief Get field solv_hR from vkins_status message
- *
- * @return [m] solved relative altitude
- */
- static inline float mavlink_msg_vkins_status_get_solv_hR(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_float(msg, 81);
- }
- /**
- * @brief Get field sensor_state from vkins_status message
- *
- * @return sensor state
- */
- static inline uint32_t mavlink_msg_vkins_status_get_sensor_state(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint32_t(msg, 85);
- }
- /**
- * @brief Get field id from vkins_status message
- *
- * @return nav id, 0 for main nav, 1 for aux nav
- */
- static inline uint8_t mavlink_msg_vkins_status_get_id(const mavlink_message_t* msg)
- {
- return _MAV_RETURN_uint8_t(msg, 89);
- }
- /**
- * @brief Decode a vkins_status message into a struct
- *
- * @param msg The message to decode
- * @param vkins_status C-struct to decode the message contents into
- */
- static inline void mavlink_msg_vkins_status_decode(const mavlink_message_t* msg, mavlink_vkins_status_t* vkins_status)
- {
- #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
- vkins_status->time_boot_ms = mavlink_msg_vkins_status_get_time_boot_ms(msg);
- vkins_status->g0 = mavlink_msg_vkins_status_get_g0(msg);
- vkins_status->raw_latitude = mavlink_msg_vkins_status_get_raw_latitude(msg);
- vkins_status->raw_longitude = mavlink_msg_vkins_status_get_raw_longitude(msg);
- vkins_status->baro_alt = mavlink_msg_vkins_status_get_baro_alt(msg);
- vkins_status->raw_gps_alt = mavlink_msg_vkins_status_get_raw_gps_alt(msg);
- vkins_status->temperature = mavlink_msg_vkins_status_get_temperature(msg);
- vkins_status->nav_status = mavlink_msg_vkins_status_get_nav_status(msg);
- vkins_status->s_flag1 = mavlink_msg_vkins_status_get_s_flag1(msg);
- vkins_status->s_flag2 = mavlink_msg_vkins_status_get_s_flag2(msg);
- vkins_status->s_flag3 = mavlink_msg_vkins_status_get_s_flag3(msg);
- vkins_status->s_flag4 = mavlink_msg_vkins_status_get_s_flag4(msg);
- vkins_status->s_flag5 = mavlink_msg_vkins_status_get_s_flag5(msg);
- vkins_status->s_flag6 = mavlink_msg_vkins_status_get_s_flag6(msg);
- vkins_status->mag_calib_stage = mavlink_msg_vkins_status_get_mag_calib_stage(msg);
- vkins_status->solv_psat_num = mavlink_msg_vkins_status_get_solv_psat_num(msg);
- vkins_status->solv_hsat_num = mavlink_msg_vkins_status_get_solv_hsat_num(msg);
- vkins_status->vibe_coe = mavlink_msg_vkins_status_get_vibe_coe(msg);
- vkins_status->roll = mavlink_msg_vkins_status_get_roll(msg);
- vkins_status->pitch = mavlink_msg_vkins_status_get_pitch(msg);
- vkins_status->yaw = mavlink_msg_vkins_status_get_yaw(msg);
- vkins_status->ve = mavlink_msg_vkins_status_get_ve(msg);
- vkins_status->vn = mavlink_msg_vkins_status_get_vn(msg);
- vkins_status->vu = mavlink_msg_vkins_status_get_vu(msg);
- vkins_status->ae = mavlink_msg_vkins_status_get_ae(msg);
- vkins_status->an = mavlink_msg_vkins_status_get_an(msg);
- vkins_status->au = mavlink_msg_vkins_status_get_au(msg);
- vkins_status->solv_lon = mavlink_msg_vkins_status_get_solv_lon(msg);
- vkins_status->solv_lat = mavlink_msg_vkins_status_get_solv_lat(msg);
- vkins_status->solv_hR = mavlink_msg_vkins_status_get_solv_hR(msg);
- vkins_status->sensor_state = mavlink_msg_vkins_status_get_sensor_state(msg);
- vkins_status->id = mavlink_msg_vkins_status_get_id(msg);
- #else
- uint8_t len = msg->len < MAVLINK_MSG_ID_VKINS_STATUS_LEN? msg->len : MAVLINK_MSG_ID_VKINS_STATUS_LEN;
- memset(vkins_status, 0, MAVLINK_MSG_ID_VKINS_STATUS_LEN);
- memcpy(vkins_status, _MAV_PAYLOAD(msg), len);
- #endif
- }
|