fix(l2): a dot per DM send, lists that notice every change, the LED lit only on TX

- A pending DM shows a dot per send, as on the L1. The thread is read from
  the SD archive, which a resend never updated: it does now, and the
  thread's signature and patch state count the attempt.
- Nearby redraws when a node goes live, changes type or the units change;
  the scan popup when a name or the remote SNR arrives.
- The user LED is active high: it was lit all the time and went dark
  while transmitting.
- Sim hooks "dm" and "send" for testing a DM thread.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Jakub
2026-10-08 14:32:54 +02:00
co-authored by Claude Opus 5.5
parent 8324d0c6d1
commit 38925dde65
5 changed files with 34 additions and 11 deletions
@@ -460,6 +460,9 @@ public:
e.ack_tag = expected_ack; // each attempt has a distinct ACK CRC
e.ack_deadline_ms = now + est_timeout + 4000;
e.resends_left--;
#ifdef HIST_ARCHIVE
if (_arc) _arc->dmUpdate(e); // the thread is read from it: a dot per send
#endif
} else {
failDm(e); // couldn't compose/send — give up
}