From fdacae73f859cf5ddd06d52055728c37a1e20c21 Mon Sep 17 00:00:00 2001 From: Manuel Bl <10954524+manuelbl@users.noreply.github.com> Date: Sat, 1 Aug 2020 18:30:47 +0200 Subject: [PATCH] Add rssi() function --- examples/monitoring/main/main.cpp | 2 ++ include/TheThingsNetwork.h | 9 +++++++++ src/TheThingsNetwork.cpp | 5 +++++ 3 files changed, 16 insertions(+) diff --git a/examples/monitoring/main/main.cpp b/examples/monitoring/main/main.cpp index 5454c6f..5087821 100644 --- a/examples/monitoring/main/main.cpp +++ b/examples/monitoring/main/main.cpp @@ -93,6 +93,7 @@ void messageReceived(const uint8_t* message, size_t length, port_t port) for (int i = 0; i < length; i++) printf(" %02x", message[i]); printf("\n"); + printf("RSSI: %d dBm\n", ttn.rssi()); } extern "C" void app_main(void) @@ -131,6 +132,7 @@ extern "C" void app_main(void) { printf("Joined.\n"); printAllRFSettings(); + printf("RSSI: %d dBm\n", ttn.rssi()); xTaskCreate(sendMessages, "send_messages", 1024 * 4, (void* )0, 3, nullptr); } else diff --git a/include/TheThingsNetwork.h b/include/TheThingsNetwork.h index f057cb6..d8e85b5 100644 --- a/include/TheThingsNetwork.h +++ b/include/TheThingsNetwork.h @@ -400,6 +400,15 @@ public: */ TTNRFSettings rx2Settings(); + /** + * @brief Gets the received signal strength indicator (RSSI). + * + * RSSI is the measured signal strength of the last recevied message (incl. join responses). + * + * @return RSSI, in dBm + */ + int rssi(); + private: TTNMessageCallback messageCallback; diff --git a/src/TheThingsNetwork.cpp b/src/TheThingsNetwork.cpp index 28f0651..3528c0f 100644 --- a/src/TheThingsNetwork.cpp +++ b/src/TheThingsNetwork.cpp @@ -320,6 +320,11 @@ TTNRxTxWindow TheThingsNetwork::rxTxWindow() return currentWindow; } +int TheThingsNetwork::rssi() +{ + return LMIC.rssi; +} + // --- Callbacks ---