RTC time. Received time on rx list

pull/33/head
Łukasz Nidecki 2021-04-26 14:45:29 +02:00
parent 5ff9a350d2
commit bd6a99373c
5 changed files with 22 additions and 1 deletions

View File

@ -167,6 +167,7 @@
<table class="u-full-width"> <table class="u-full-width">
<thead> <thead>
<tr> <tr>
<th>Time (UTC)</th>
<th>Frame</th> <th>Frame</th>
<th>RSSI</th> <th>RSSI</th>
<th>SNR</th> <th>SNR</th>

View File

@ -47,6 +47,9 @@ window.onload = function () {
tbody.innerHTML = ''; tbody.innerHTML = '';
for (const frameInfo of response['received']) { for (const frameInfo of response['received']) {
let tr = document.createElement('tr'); let tr = document.createElement('tr');
let td_t = document.createElement('td');
td_t.innerHTML = frameInfo['time'];
tr.appendChild(td_t);
let td_p = document.createElement('td'); let td_p = document.createElement('td');
td_p.innerHTML = frameInfo['packet']; td_p.innerHTML = frameInfo['packet'];
tr.appendChild(td_p); tr.appendChild(td_p);

View File

@ -16,6 +16,7 @@ typedef struct {
} tWebServerCfg; } tWebServerCfg;
typedef struct { typedef struct {
struct tm rxTime;
String *packet; String *packet;
int RSSI; int RSSI;
int SNR; int SNR;

View File

@ -441,6 +441,7 @@ void sendToWebList(const String& TNC2FormatedFrame, const int RSSI, const int SN
receivedPacketData->packet->concat(TNC2FormatedFrame); receivedPacketData->packet->concat(TNC2FormatedFrame);
receivedPacketData->RSSI = RSSI; receivedPacketData->RSSI = RSSI;
receivedPacketData->SNR = SNR; receivedPacketData->SNR = SNR;
getLocalTime(&receivedPacketData->rxTime);
if (xQueueSend(webListReceivedQueue, &receivedPacketData, (1000 / portTICK_PERIOD_MS)) != pdPASS){ if (xQueueSend(webListReceivedQueue, &receivedPacketData, (1000 / portTICK_PERIOD_MS)) != pdPASS){
// remove buffer on error // remove buffer on error

View File

@ -2,6 +2,7 @@
#include "taskWebServer.h" #include "taskWebServer.h"
#include "preference_storage.h" #include "preference_storage.h"
#include "syslog_log.h" #include "syslog_log.h"
#include <time.h>
/** /**
* @see board_build.embed_txtfiles in platformio.ini * @see board_build.embed_txtfiles in platformio.ini
*/ */
@ -154,6 +155,9 @@ void handle_ReceivedList() {
auto count = receivedPackets.size(); auto count = receivedPackets.size();
for (auto element: receivedPackets){ for (auto element: receivedPackets){
jsonData += "{"; jsonData += "{";
char buf[64];
strftime(buf, 64, "%Y.%m.%d %H:%M:%S", &element->rxTime);
jsonData += jsonLineFromString("time", buf);
jsonData += jsonLineFromString("packet", element->packet->c_str()); jsonData += jsonLineFromString("packet", element->packet->c_str());
jsonData += jsonLineFromInt("rssi", element->RSSI); jsonData += jsonLineFromInt("rssi", element->RSSI);
jsonData += jsonLineFromInt("snr", element->SNR, true); jsonData += jsonLineFromInt("snr", element->SNR, true);
@ -285,7 +289,17 @@ void handle_saveDeviceCfg(){
syslog.defaultPriority(LOG_KERN); syslog.defaultPriority(LOG_KERN);
syslog_log(LOG_INFO, "Connected. IP: " + WiFi.localIP().toString()); syslog_log(LOG_INFO, "Connected. IP: " + WiFi.localIP().toString());
#endif #endif
configTime(0, 0, "pool.ntp.org");
#ifdef ENABLE_SYSLOG
struct tm timeinfo{};
if(!getLocalTime(&timeinfo)){
syslog_log(LOG_WARNING, "Failed to obtain time");
} else {
char buf[64];
strftime(buf, 64, "%A, %B %d %Y %H:%M:%S", &timeinfo);
syslog_log(LOG_INFO, String("Time: ") + String(buf));
}
#endif
} }
server.begin(); server.begin();
@ -313,6 +327,7 @@ void handle_saveDeviceCfg(){
receivedPacketToQueue->packet->concat(*receivedPacketData->packet); receivedPacketToQueue->packet->concat(*receivedPacketData->packet);
receivedPacketToQueue->RSSI = receivedPacketData->RSSI; receivedPacketToQueue->RSSI = receivedPacketData->RSSI;
receivedPacketToQueue->SNR = receivedPacketData->SNR; receivedPacketToQueue->SNR = receivedPacketData->SNR;
receivedPacketToQueue->rxTime = receivedPacketData->rxTime;
receivedPackets.push_back(receivedPacketToQueue); receivedPackets.push_back(receivedPacketToQueue);
if (receivedPackets.size() > MAX_RECEIVED_LIST_SIZE){ if (receivedPackets.size() > MAX_RECEIVED_LIST_SIZE){
auto *packetDataToDelete = receivedPackets.front(); auto *packetDataToDelete = receivedPackets.front();