From 52476633a86693551da7f81b6cfa6b0b82e2fd69 Mon Sep 17 00:00:00 2001 From: Dmitry Ponomarev Date: Fri, 14 Apr 2023 17:47:10 +0300 Subject: [PATCH] Cyphal: use actual time instead of transfer id in uptime field of heartbeat --- src/drivers/cyphal/Cyphal.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/drivers/cyphal/Cyphal.cpp b/src/drivers/cyphal/Cyphal.cpp index 5ce3a0b77a..94030971b5 100644 --- a/src/drivers/cyphal/Cyphal.cpp +++ b/src/drivers/cyphal/Cyphal.cpp @@ -361,10 +361,10 @@ void CyphalNode::sendHeartbeat() if (hrt_elapsed_time(&_uavcan_node_heartbeat_last) >= 1_s) { uavcan_node_Heartbeat_1_0 heartbeat{}; - heartbeat.uptime = _uavcan_node_heartbeat_transfer_id; // TODO: use real uptime + const hrt_abstime now = hrt_absolute_time(); + heartbeat.uptime = now / 1000000; heartbeat.health.value = uavcan_node_Health_1_0_NOMINAL; heartbeat.mode.value = uavcan_node_Mode_1_0_OPERATIONAL; - const hrt_abstime now = hrt_absolute_time(); size_t payload_size = uavcan_node_Heartbeat_1_0_SERIALIZATION_BUFFER_SIZE_BYTES_; const CanardTransferMetadata transfer_metadata = {