diff --git a/src/boards/Payload/CanHandler/CanHandler.cpp b/src/boards/Payload/CanHandler/CanHandler.cpp index 14eb457bda3976651dcedb1081f9a440d56906a2..2fad71b8e1fcb4398320bfaa7ed4fd828fd87e1c 100644 --- a/src/boards/Payload/CanHandler/CanHandler.cpp +++ b/src/boards/Payload/CanHandler/CanHandler.cpp @@ -157,7 +157,7 @@ bool CanHandler::start() static_cast<uint8_t>(SensorId::PITOT_DYNAMIC_PRESSURE), dynamicPressure); }, - config::Pitot::PERIOD); + config::Pitot::SEND_RATE); if (pitotTask == 0) { @@ -185,6 +185,14 @@ void CanHandler::sendEvent(EventId event) static_cast<uint8_t>(Board::PAYLOAD), static_cast<uint8_t>(Board::BROADCAST), static_cast<uint8_t>(event)); + + auto data = CanEvent{ + .timestamp = TimestampTimer::getTimestamp(), + .source = static_cast<uint8_t>(Board::PAYLOAD), + .target = static_cast<uint8_t>(Board::BROADCAST), + .event = static_cast<uint8_t>(event), + }; + Logger::getInstance().log(data); } void CanHandler::sendServoOpenCommand(ServosList servo, uint32_t openingTime) @@ -233,7 +241,15 @@ void CanHandler::handleMessage(const CanMessage& msg) void CanHandler::handleEvent(const Boardcore::Canbus::CanMessage& msg) { - auto event = canEventToEvent(msg.getSecondaryType()); + auto canEvent = CanEvent{ + .timestamp = TimestampTimer::getTimestamp(), + .source = msg.getSource(), + .target = msg.getDestination(), + .event = msg.getSecondaryType(), + }; + Logger::getInstance().log(canEvent); + + auto event = canEventToEvent(canEvent.event); if (event == LAST_EVENT) { return; diff --git a/src/boards/Payload/Configs/CanHandlerConfig.h b/src/boards/Payload/Configs/CanHandlerConfig.h index 6170dbfe72917b04b112db3bb76487ec54615497..05290120f9838a683276e58d554fad6d85edeb31 100644 --- a/src/boards/Payload/Configs/CanHandlerConfig.h +++ b/src/boards/Payload/Configs/CanHandlerConfig.h @@ -22,6 +22,10 @@ #pragma once +#include <units/Frequency.h> + +#include <chrono> + namespace Payload { namespace Config @@ -30,6 +34,7 @@ namespace CanHandler { /* linter-off */ using namespace std::chrono_literals; +/* linter-off */ using namespace Boardcore::Units::Frequency; namespace Status { @@ -40,7 +45,7 @@ constexpr auto TIMEOUT = 1500ms; namespace Pitot { -constexpr auto PERIOD = 50ms; +constexpr auto SEND_RATE = 20_hz; } } // namespace CanHandler