@@ -142,16 +142,35 @@ void Mavlink::send_imu(uint8_t system_id, uint64_t timestamp_us, const turbomath
142142 gyro.x , gyro.y , gyro.z , temperature);
143143 send_message (msg, 0 );
144144}
145+
146+ #ifdef MAVLINK_MESSAGE_INFO_ROSFLIGHT2_GNSS
147+ void Mavlink::send_gnss (uint8_t system_id, const GNSSData & data)
148+ {
149+ mavlink_message_t msg;
150+ mavlink_msg_rosflight2_gnss_pack (
151+ system_id, compid_, &msg,
152+ data.unix_seconds , // Unix time in seconds
153+ data.nano , // nanoseconds
154+ data.fix_type ,
155+ data.num_sat ,
156+ data.lat , data.lon , data.height_ellipsoid ,
157+ data.vel_n , data.vel_e , data.vel_d ,
158+ data.h_acc , data.v_acc , data.speed_accy ,
159+ data.header .timestamp );
160+ send_message (msg);
161+ }
162+ #else
145163void Mavlink::send_gnss (uint8_t system_id, const GNSSData & data)
146164{
147165 mavlink_message_t msg;
148166 mavlink_msg_rosflight_gnss_pack (
149- system_id, compid_, &msg, data.time_of_week , data.fix_type , data.time , data.nano , data.lat ,
167+ system_id, compid_, &msg, data.time_of_week , data.fix_type , data.unix_seconds , data.nano , data.lat ,
150168 data.lon , data.height_ellipsoid , data.vel_n , data.vel_e , data.vel_d , data.h_acc , data.v_acc , data.ecef .x ,
151169 data.ecef .y , data.ecef .z , data.ecef .p_acc , data.ecef .vx , data.ecef .vy , data.ecef .vz ,
152170 data.ecef .s_acc , data.header .timestamp );
153171 send_message (msg);
154172}
173+ #endif
155174
156175void Mavlink::send_gnss_full (uint8_t system_id, const GNSSFull & full)
157176{
0 commit comments