mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-07-26 23:08:11 +00:00
refactor(admin): make Admin remote-only, move device settings to Settings
A device administering itself via the Admin tool read as awkward, so the local mode is gone and its options relocated to Settings. - AdminScreen is remote-only: drop the CHOOSER phase, _local_mode, the LocalField/LocalKind model and activateLocalField/commitLocalField. Phases collapse to LOGIN/COMMAND/REPLY, entered only via startFor(). - Tools > Admin opens straight to the Nodes picker (ACT_ADMIN -> pickAdminTarget()). Backing out of a command screen returns to that picker; the picker's Cancel returns to Tools. gotoAdminScreen() removed. - Settings > System gains Name (keyboard-edited node_name) and Reboot (action row, placed last so it isn't the default cursor). Radio + TX power were already in Settings; Send advert is the home ADVERT page. Docs: tools_screen.md Admin section rewritten remote-only; settings_screen.md System table gains Name + Reboot. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -88,9 +88,11 @@ The **repeater** mode and its flood filters live on their own screen — see **T
|
||||
|
||||
| Setting | Options | Notes |
|
||||
| ----------- | --------------------------------------------------- | -------------------------------------------------------------------------------------- |
|
||||
| Name | keyboard entry (up to 31 chars) | This device's node name, shown to others and in every advert. **Enter** opens the keyboard pre-filled with the current name; applied and saved on submit |
|
||||
| Timezone | −12 h … +14 h | UTC offset in whole hours |
|
||||
| Low battery | off / 3.0 V / 3.1 V / 3.2 V / 3.3 V / 3.4 V / 3.5 V | Auto-shutdown threshold; also sets the 0 % anchor for the battery percentage indicator |
|
||||
| Units | Metric / Imperial | Global unit system for every distance/speed shown in Tools (Nearby Nodes, Trail, navigate-to-point). Metric: m / km, km/h, min/km. Imperial: ft / mi, mph, min/mi |
|
||||
| Reboot | action (**Enter**) | Restarts this device. Pending setting changes are saved first. Last row, so it isn't the default-selected one |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -517,13 +517,9 @@ Live forwarding stats — **Forwarded**, **Pool free**, **Queue** — are shown
|
||||
|
||||
<!-- screenshot pending: Admin — target picker, command entry, reply view -->
|
||||
|
||||
Send commands to **this device**, or to a **repeater/room server you have admin permission on** — the on-device equivalent of the companion app's repeater-admin feature for remote nodes, plus a local shim over settings this device already has. See [CLI Commands](../../cli_commands.md) for the full remote command grammar.
|
||||
Send commands to a **repeater/room server you have admin permission on** — the on-device equivalent of the companion app's repeater-admin feature. See [CLI Commands](../../cli_commands.md) for the full command grammar. (Admin only manages *remote* nodes; this device's own name, radio, TX power and reboot live in **Settings** — see below.)
|
||||
|
||||
Opening **Tools › Admin** shows a two-row chooser: **This device** or **Remote node...**.
|
||||
|
||||
### Remote node
|
||||
|
||||
1. **Select a node** — "Remote node..." opens **Tools › Nodes** (the same screen, filters, sort and live scan as browsing it normally) so picking a node for Admin looks exactly like using Nodes for anything else; **Enter** on a repeater/room row hands it to Admin. Admin is also reachable directly from a node's own **Hold Enter** menu in Nodes, without going through the chooser at all.
|
||||
1. **Select a node** — opening **Tools › Admin** goes straight to **Tools › Nodes** (the same screen, filters, sort and live scan as browsing it normally) so picking a node for Admin looks exactly like using Nodes for anything else; **Enter** on a repeater/room row hands it to Admin, **Cancel** returns to Tools. Admin is also reachable directly from a node's own **Hold Enter** menu in Nodes.
|
||||
2. **Log in** — type the node's **admin password** (the same login handshake Messages uses for room servers; a repeater's admin password is set with the `password` CLI command). If a password was already saved for this node from an earlier successful login, it retries silently instead of prompting. Only a login that comes back with **admin**-level permission unlocks the next step — anything less shows "Not admin on this node".
|
||||
3. **Pick a category and a field** — a tab carousel (**LEFT/RIGHT** to switch category, **UP/DOWN** to move within it, same as Auto-Reply Bot's tabs), so common settings don't need the CLI grammar memorised:
|
||||
|
||||
@@ -548,11 +544,4 @@ Opening **Tools › Admin** shows a two-row chooser: **This device** or **Remote
|
||||
|
||||
### This device
|
||||
|
||||
A lighter, login-free version of the same tab carousel, for settings this device already has:
|
||||
|
||||
| Tab | Rows |
|
||||
| --- | ---- |
|
||||
| **System** | Name, Radio (freq, bandwidth, spreading factor, coding rate), TX power, Lat, Lon |
|
||||
| **Actions** | Send advert, Reboot |
|
||||
|
||||
There's no fetch step here — the current value is already known, so **Enter** opens the keyboard pre-filled with it immediately, and submitting applies the change at once (the same apply logic Settings' own Radio/TX power rows use) and saves it. Reboot and Send advert fire immediately, same as their remote counterparts. This is a fast, lightly-validated shortcut alongside Settings' own fuller editors (radio presets, chip-bounds frequency entry, etc.) — for careful bounds-checked editing, prefer Settings.
|
||||
Admin doesn't manage the companion itself — its own settings live in **Settings**: **Radio** (preset / freq / SF / BW / CR) and **TX power** in the Radio section, and **Name** and **Reboot** in the System section. **Send advert** is the home **ADVERT** page.
|
||||
|
||||
Reference in New Issue
Block a user