diff --git a/code/espurna/data/index.rfm69.html.gz b/code/espurna/data/index.rfm69.html.gz index 9b22f6ec..c20ddf2d 100644 Binary files a/code/espurna/data/index.rfm69.html.gz and b/code/espurna/data/index.rfm69.html.gz differ diff --git a/code/espurna/rfm69.ino b/code/espurna/rfm69.ino index 5ab8924a..fa32a8f9 100644 --- a/code/espurna/rfm69.ino +++ b/code/espurna/rfm69.ino @@ -95,9 +95,23 @@ void _rfm69Configure() { // Radio // ----------------------------------------------------------------------------- -void _rfm69Process(packet_t * data) { +void _rfm69Debug(const char * level, packet_t * data) { - char response[4] = "OK "; + DEBUG_MSG_P( + PSTR("[RFM69] %s: messageID:%05d senderID:%03d targetID:%03d packetID:%03d rssi:%-04d name:%s value:%s\n"), + level, + data->messageID, + data->senderID, + data->targetID, + data->packetID, + data->rssi, + data->name, + data->value + ); + +} + +void _rfm69Process(packet_t * data) { // Count seen nodes and packets if (_rfm69_node_info[data->senderID].count == 0) ++_rfm69_node_count; @@ -111,30 +125,20 @@ void _rfm69Process(packet_t * data) { unsigned char gap = data->packetID - _rfm69_node_info[data->senderID].lastPacketID; if (gap == 0) { - strncpy(response, "DUP", sizeof(response)); _rfm69_node_info[data->senderID].duplicates = _rfm69_node_info[data->senderID].duplicates + 1; + //_rfm69Debug("DUP", data); return; } if ((gap > 1) && (data->packetID > 1)) { - strncpy(response, "MIS", sizeof(response)); _rfm69_node_info[data->senderID].missing = _rfm69_node_info[data->senderID].missing + gap - 1; + DEBUG_MSG_P(PSTR("[RFM69] %u missing packets detected\n"), gap - 1); } } } - DEBUG_MSG_P( - PSTR("[RFM69] %s: messageID:%05d senderID:%03d targetID:%03d packetID:%03d rssi:%-04d name:%s value:%s\n"), - response, - data->messageID, - data->senderID, - data->targetID, - data->packetID, - data->rssi, - data->name, - data->value - ); + _rfm69Debug("OK ", data); _rfm69_node_info[data->senderID].lastPacketID = data->packetID; _rfm69_node_info[data->senderID].count = _rfm69_node_info[data->senderID].count + 1; @@ -153,7 +157,7 @@ void _rfm69Process(packet_t * data) { } // If we are the target of the message, forward it via MQTT, otherwise quit - //if (RFM69_GATEWAY_ID != data->targetID) return; + if (!RFM69_PROMISCUOUS_SENDS && (RFM69_GATEWAY_ID != data->targetID)) return; // Try to find a matching mapping for (unsigned int i=0; i