TCP scaling, GUI pooling, dev mode, protocol improvements

- TCP: wider drain budgets, TCP_NODELAY, no flush, PSRAM buffers, queue announces until hub ID
- GUI: object pool Messages/Contacts screens, partial MessageView status, targeted tab refresh
- LVGL throttled to 5fps when dimmed, non-blocking RSSI monitor, bounded I2S writes
- LXMF batch drain, BLE frame mutex, LoRa interrupt-driven RX, name cache cap 300
- Developer mode in settings: custom radio params (freq/txp/SF/BW/CR/preamble) behind warning
This commit is contained in:
DeFiDude
2026-03-15 12:25:29 -06:00
parent 02d7dedcce
commit fc91f8214e
30 changed files with 604 additions and 238 deletions
+11
View File
@@ -173,6 +173,17 @@ void AnnounceManager::received_announce(
if (nc == _nameCache.end() || nc->second != name) {
_nameCache[destHex] = name;
_nameCacheDirty = true;
// Cap name cache size: prune entries not in _nodes or saved contacts
if ((int)_nameCache.size() > MAX_NAME_CACHE) {
for (auto it = _nameCache.begin(); it != _nameCache.end() && (int)_nameCache.size() > MAX_NAME_CACHE; ) {
RNS::Bytes h; h.assignHex(it->first.c_str());
if (!findNode(h)) {
it = _nameCache.erase(it);
} else {
++it;
}
}
}
}
}