|
|
|
@ -250,8 +250,8 @@ MavlinkReceiver::handle_message(mavlink_message_t *msg)
@@ -250,8 +250,8 @@ MavlinkReceiver::handle_message(mavlink_message_t *msg)
|
|
|
|
|
handle_message_adsb_vehicle(msg); |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
case MAVLINK_MSG_ID_GPS_INJECT_DATA: |
|
|
|
|
handle_message_gps_inject_data(msg); |
|
|
|
|
case MAVLINK_MSG_ID_GPS_RTCM_DATA: |
|
|
|
|
handle_message_gps_rtcm_data(msg); |
|
|
|
|
break; |
|
|
|
|
|
|
|
|
|
default: |
|
|
|
@ -1775,16 +1775,17 @@ void MavlinkReceiver::handle_message_adsb_vehicle(mavlink_message_t *msg)
@@ -1775,16 +1775,17 @@ void MavlinkReceiver::handle_message_adsb_vehicle(mavlink_message_t *msg)
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void MavlinkReceiver::handle_message_gps_inject_data(mavlink_message_t *msg) |
|
|
|
|
void MavlinkReceiver::handle_message_gps_rtcm_data(mavlink_message_t *msg) |
|
|
|
|
{ |
|
|
|
|
mavlink_gps_inject_data_t gps_inject_data_msg; |
|
|
|
|
mavlink_gps_rtcm_data_t gps_rtcm_data_msg; |
|
|
|
|
gps_inject_data_s gps_inject_data_topic; |
|
|
|
|
|
|
|
|
|
mavlink_msg_gps_inject_data_decode(msg, &gps_inject_data_msg); |
|
|
|
|
mavlink_msg_gps_rtcm_data_decode(msg, &gps_rtcm_data_msg); |
|
|
|
|
|
|
|
|
|
gps_inject_data_topic.len = gps_inject_data_msg.len; |
|
|
|
|
memcpy(gps_inject_data_topic.data, gps_inject_data_msg.data, |
|
|
|
|
math::min((int)sizeof(gps_inject_data_topic.data), (int)sizeof(uint8_t) * gps_inject_data_msg.len)); |
|
|
|
|
gps_inject_data_topic.len = gps_rtcm_data_msg.len; |
|
|
|
|
gps_inject_data_topic.flags = gps_rtcm_data_msg.flags; |
|
|
|
|
memcpy(gps_inject_data_topic.data, gps_rtcm_data_msg.data, |
|
|
|
|
math::min((int)sizeof(gps_inject_data_topic.data), (int)sizeof(uint8_t) * gps_rtcm_data_msg.len)); |
|
|
|
|
|
|
|
|
|
orb_advert_t &pub = _gps_inject_data_pub[_gps_inject_data_next_idx]; |
|
|
|
|
|
|
|
|
|