* PUSH_CODE_LOG_RX_DATA: is now just: {snr*4},{rssi},{raw-lora-packet}

This commit is contained in:
Scott Powell 2025-03-09 17:04:22 +11:00
parent 8f609524bd
commit f77a6944f9
3 changed files with 9 additions and 11 deletions

View file

@ -436,19 +436,13 @@ protected:
return (int) ((pow(_prefs.rx_delay_base, 0.85f - score) - 1.0) * air_time);
}
void logRx(mesh::Packet* pkt, int len, float score) override {
void logRxRaw(float snr, float rssi, const uint8_t raw[], int len) override {
if (_serial->isConnected()) {
int i = 0;
out_frame[i++] = PUSH_CODE_LOG_RX_DATA;
out_frame[i++] = (int8_t)(_radio->getLastSNR() * 4);
out_frame[i++] = (int8_t)(_radio->getLastRSSI());
if (pkt->isRouteFlood()) {
out_frame[i++] = pkt->path_len;
memcpy(&out_frame[i], pkt->path, pkt->path_len); i += pkt->path_len;
} else {
out_frame[i++] = 0xFF;
}
memcpy(&out_frame[i], pkt->payload, pkt->payload_len); i += pkt->payload_len;
out_frame[i++] = (int8_t)(snr * 4);
out_frame[i++] = (int8_t)(rssi);
memcpy(&out_frame[i], raw, len); i += len;
_serial->writeFrame(out_frame, i);
}

View file

@ -78,9 +78,11 @@ void Dispatcher::checkRecv() {
float score;
uint32_t air_time;
{
uint8_t raw[MAX_TRANS_UNIT];
uint8_t raw[MAX_TRANS_UNIT+1];
int len = _radio->recvRaw(raw, MAX_TRANS_UNIT);
if (len > 0) {
logRxRaw(_radio->getLastSNR(), _radio->getLastRSSI(), raw, len);
pkt = _mgr->allocNew();
if (pkt == NULL) {
MESH_DEBUG_PRINTLN("%s Dispatcher::checkRecv(): WARNING: received data, no unused packets available!", getLogDateTime());

View file

@ -117,6 +117,8 @@ protected:
virtual DispatcherAction onRecvPacket(Packet* pkt) = 0;
virtual void logRxRaw(float snr, float rssi, const uint8_t raw[], int len) { } // custom hook
virtual void logRx(Packet* packet, int len, float score) { } // hooks for custom logging
virtual void logTx(Packet* packet, int len) { }
virtual void logTxFail(Packet* packet, int len) { }