Commit graph

5 commits

Author SHA1 Message Date
Marcus Kida
31c31df861 DMR text messages (SMS): ETSI/Motorola-TMS messaging on the radio
Full messaging support, implemented fresh in three layers:

- dmrDataProtocol: pure short-data codec (CSBK preamble, data/response
  headers, IP/UDP/TMS payload, ETSI CRCs) validated against on-air
  captures by a host-side test suite. Transmits Motorola TMS (UDP 4007),
  receives TMS and Anytone/"DMR standard" (UDP 5016).
- smsCore/smsStorage: TX queue with wait-for-channel and delivery
  confirmation (response PDU / ACK, resend prompt on timeout), ISR-side
  block assembly with layout auto-detection (confirmed/unconfirmed,
  rate-1/2 and full 18-byte rate-3/4 blocks), delivery reports to
  senders that request them, and a checksummed message store in SPI
  flash at 0xC00000 (inbox + sent, 8 each; 8 quick texts).
- UI: Messages hub (main menu or long-press GREEN), keypad compose with
  multi-tap (160 chars), inbox/sent/view with reply-resend-delete,
  quick-text picker/editor, options (Wait for ACK, My ID only), and an
  incoming-message popup with chime. Strings in all 20 languages.

The HR-C6000 does the BPTC/FEC; the driver streams 12-byte logical
bursts through the existing TX state machine (repeater wake included),
locks out PTT during a send, and leaves hotspot mode untouched.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 16:52:54 +02:00
Marcus Kida
8dcda476aa Revert main-menu icons: plain-text entries again
Remove the 16x16 main-menu icon bitmaps, menuIconForMenuNumber(),
menuSetNextEntryIconByMenuNum() and the icon drawing + text offset in
menuDisplayEntry(). Top-level menu entries render as plain text as before.
Docs updated.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-13 12:04:56 +02:00
Marcus Kida
23fd4df110 Themes: add 'Vertexic' orange preset
New theme preset: orange (#FF6A00) background with black text by day, inverted
(orange on black) at night. Vertex-style amber/orange look. Documented in
MANUAL.md and the README.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-13 10:02:16 +02:00
Marcus Kida
8c9828e386 Themes: selectable on-device presets (Custom / BASIC 80s / Terminal)
Add a Theme selector in Display Options that cycles three presets with a live
preview: Custom (CPS-editable, default), BASIC 80s (Commodore 64 light-blue on
blue) and Terminal (green-on-black night / black-on-green day). Presets fill all
theme items for a cohesive look.

The selection is stored in the codeplug custom-data area (new THEME_PRESET
block), which is migration-safe (missing block -> Custom) and needs no settings
reset. CPS theme edits only ever change the Custom theme. Documented in MANUAL.md
and the README.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 14:41:08 +02:00
Marcus Kida
5ae4fa70bd docs: add MANUAL.md user guide (OpenGD77 vs FreeTRX features tagged)
New user-facing feature & usage guide covering inherited OpenGD77 features and
FreeTRX additions, each marked [FreeTRX] or [OpenGD77]. Documents the spectrum
scope (VFO sweep, hold #), channel add/delete, mute, screen dimming, the S-meter
and 7-seg font, plus a button reference. Linked from the README.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-10 13:01:01 +02:00