Copy fields

This commit is contained in:
Jaeyoung-Lim
2019-10-12 13:38:14 +02:00
committed by Nuno Marques
parent 58d646e33d
commit 3dc3679f9e
2 changed files with 31 additions and 16 deletions

View File

@@ -4,19 +4,19 @@ uint32 uptime # time since system boot (miliseconds)
uint8 type # type of onboard computer
uint8[8] cpu_cores
uint8 cpu_combined
uint8[10] cpu_combined
uint8[4] gpu_cores
uint8[10] gpu_combined
int8 temperature_board
int8 tempearture_core
int16 fan_speed
int8[8] temperature_core
int16[4] fan_speed
uint32 ram_usage
uint32 ram_total
uint32[4] storage_type
uint32[4] storage_usage
uint32[4] storage_total
uint32 link_type
uint32 link_tx_rate
uint32 link_rx_rate
uint32 link_tx_max
uint32 link_rx_max
uint32[6] link_type
uint32[6] link_tx_rate
uint32[6] link_rx_rate
uint32[6] link_tx_max
uint32[6] link_rx_max

View File

@@ -2547,14 +2547,29 @@ MavlinkReceiver::handle_message_onboard_computer_status(mavlink_message_t *msg)
onboard_computer_status_s onboard_computer_status_topic{};
onboard_computer_status_topic.cpu_cores[0] = status_msg.cpu_cores[0];
onboard_computer_status_topic.cpu_cores[1] = status_msg.cpu_cores[1];
onboard_computer_status_topic.cpu_cores[2] = status_msg.cpu_cores[2];
onboard_computer_status_topic.cpu_cores[3] = status_msg.cpu_cores[3];
onboard_computer_status_topic.cpu_cores[4] = status_msg.cpu_cores[4];
onboard_computer_status_topic.cpu_cores[5] = status_msg.cpu_cores[5];
onboard_computer_status_topic.cpu_cores[6] = status_msg.cpu_cores[6];
onboard_computer_status_topic.cpu_cores[7] = status_msg.cpu_cores[7];
onboard_computer_status_topic.timestamp = hrt_absolute_time();
onboard_computer_status_topic.uptime = status_msg.uptime;
onboard_computer_status_topic.type = status_msg.type;
memcpy(onboard_computer_status_topic.cpu_cores, status_msg.cpu_cores, sizeof(status_msg.cpu_cores));
memcpy(onboard_computer_status_topic.cpu_combined, status_msg.cpu_combined, sizeof(status_msg.cpu_combined));
memcpy(onboard_computer_status_topic.gpu_cores, status_msg.gpu_cores, sizeof(status_msg.gpu_cores));
memcpy(onboard_computer_status_topic.gpu_combined, status_msg.gpu_combined, sizeof(status_msg.gpu_combined));
onboard_computer_status_topic.temperature_board = status_msg.temperature_board;
memcpy(onboard_computer_status_topic.temperature_core, status_msg.temperature_core,
sizeof(status_msg.temperature_core));
memcpy(onboard_computer_status_topic.fan_speed, status_msg.fan_speed, sizeof(status_msg.fan_speed));
onboard_computer_status_topic.ram_usage = status_msg.ram_usage;
onboard_computer_status_topic.ram_total = status_msg.ram_total;
memcpy(onboard_computer_status_topic.storage_type, status_msg.storage_type, sizeof(status_msg.storage_type));
memcpy(onboard_computer_status_topic.storage_usage, status_msg.storage_usage, sizeof(status_msg.storage_usage));
memcpy(onboard_computer_status_topic.storage_total, status_msg.storage_total, sizeof(status_msg.storage_total));
memcpy(onboard_computer_status_topic.link_type, status_msg.link_type, sizeof(status_msg.link_type));
memcpy(onboard_computer_status_topic.link_tx_rate, status_msg.link_tx_rate, sizeof(status_msg.link_tx_rate));
memcpy(onboard_computer_status_topic.link_rx_rate, status_msg.link_rx_rate, sizeof(status_msg.link_rx_rate));
memcpy(onboard_computer_status_topic.link_tx_max, status_msg.link_tx_max, sizeof(status_msg.link_tx_max));
memcpy(onboard_computer_status_topic.link_rx_max, status_msg.link_rx_max, sizeof(status_msg.link_rx_max));
_onboard_computer_status_pub.publish(onboard_computer_status_topic);
}