From f86e0d46b6eb5f892fdb0b92e4afc57379eaedcf Mon Sep 17 00:00:00 2001 From: Jm Casler Date: Tue, 7 Dec 2021 13:04:50 -0800 Subject: [PATCH] Add calculated airtimes to myNodeInfo https://github.com/meshtastic/Meshtastic-device/issues/970 --- src/airtime.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/airtime.cpp b/src/airtime.cpp index 221ba119..683b8f2c 100644 --- a/src/airtime.cpp +++ b/src/airtime.cpp @@ -1,7 +1,8 @@ #include "configuration.h" #include "airtime.h" +#include "NodeDB.h" -#define periodsToLog 48 +#define periodsToLog 24 AirTime *airTime; @@ -24,9 +25,11 @@ void AirTime::logAirtime(reportTypes reportType, uint32_t airtime_ms) if (reportType == TX_LOG) { DEBUG_MSG("AirTime - Packet transmitted : %ums\n", airtime_ms); airtimes.periodTX[0] = airtimes.periodTX[0] + airtime_ms; + myNodeInfo.air_period_tx[0] = myNodeInfo.air_period_tx[0] + airtime_ms; } else if (reportType == RX_LOG) { DEBUG_MSG("AirTime - Packet received : %ums\n", airtime_ms); airtimes.periodRX[0] = airtimes.periodRX[0] + airtime_ms; + myNodeInfo.air_period_rx[0] = myNodeInfo.air_period_rx[0] + airtime_ms; } else if (reportType == RX_ALL_LOG) { DEBUG_MSG("AirTime - Packet received (noise?) : %ums\n", airtime_ms); airtimes.periodRX_ALL[0] = airtimes.periodRX_ALL[0] + airtime_ms; @@ -50,11 +53,18 @@ void airtimeRotatePeriod() airtimes.periodTX[i + 1] = airtimes.periodTX[i]; airtimes.periodRX[i + 1] = airtimes.periodRX[i]; airtimes.periodRX_ALL[i + 1] = airtimes.periodRX_ALL[i]; + + myNodeInfo.air_period_tx[i + 1] = myNodeInfo.air_period_tx[i]; + myNodeInfo.air_period_rx[i + 1] = myNodeInfo.air_period_rx[i]; } airtimes.periodTX[0] = 0; airtimes.periodRX[0] = 0; airtimes.periodRX_ALL[0] = 0; + myNodeInfo.air_period_tx[0] = 0; + myNodeInfo.air_period_rx[0] = 0; + + airtimes.lastPeriodIndex = currentPeriodIndex(); } }