- добавлен локальный мастер настройки репитера: examples/simple_repeater/UITask.* (меню на кнопке, редактор координат, применение значений через CommonCLI) - MyMesh: публичный доступ к CommonCLI для UI (getCLI), main.cpp передаёт его в UITask - мастер работает на любой цели с дисплеем и кнопкой и исключается препроцессором там, где их нет; WiFi-код теперь под #if defined(ESP32) - новая страница документации posadmesh-docs/device-setup.md, ссылки в index.md и mkdocs.yml - README: раздел «Настройка с дисплея и кнопки» и запись в журнале изменений - проверено сборкой: heltec_v4_repeater_mqtt, Meshadventurer_sx1262_repeater_mqtt, Generic_E22_sx1262_repeater_mqtt (без дисплея), RAK_3112_repeater_mqtt
5.2 KiB
Настройка с дисплея и кнопки
Мастер настройки работает прямо на репитере: не нужен ни компьютер, ни телефон. Он доступен на любой плате, у которой есть дисплей и кнопка, и отсутствует на платах без дисплея — там настройка выполняется через последовательный CLI или веб-панель.
Что настраивается
Мастер меняет только то, что нужно для быстрого ввода узла в сеть:
| Пункт меню | Что делает | Команда CLI |
|---|---|---|
Coordinates |
широта и долгота узла | set lat, set lon |
Radio preset |
keep current или готовый пресет сети MeshCoreTel (868,731 МГц, 62,5 кГц, SF7, CR7) |
set radio |
TX power |
мощность передатчика, 1–30 дБм | set tx |
Repeat |
пересылка пакетов включена или выключена | set repeat |
Path hash |
размер хэша пути: 0, 1 или 2 байта | set path.hash.mode |
Advert int |
интервал advert в минутах (0 — выключено, иначе 60–240) | set advert.interval |
Flood advert |
интервал flood advert в часах (3–168) | set flood.advert.interval |
Flood max |
лимит пересылки flood (0–64) | set flood.max |
Save & exit |
выход из мастера | — |
Значения применяются сразу при выходе из пункта и сохраняются во флеш. Ответ устройства (OK или текст ошибки) показывается на экране — проверку выполняет тот же код, что и последовательный CLI, поэтому неверное значение не будет записано.
Управление кнопкой
Экран состояния (обычный режим):
- короткое — включить или продлить подсветку экрана;
- двойное — войти в мастер настройки;
- длинное — выключить питание узла.
В меню:
- короткое — следующий пункт, двойное — предыдущий;
- длинное — войти в пункт.
В пункте с числом или списком:
- короткое — увеличить значение, двойное — уменьшить;
- длинное — применить и вернуться в меню.
Если узел прошит «с нуля» и ещё не имеет имени, мастер открывается сам после заставки.
Ввод координат
Координаты показываются в формате xx.xxxx yy.yyyy — сначала широта, затем долгота. Активная цифра выделена инверсией.
| Действие | Что происходит |
|---|---|
| длинное нажатие | войти в изменение текущей цифры |
| короткое нажатие в режиме правки | цифра +1 |
| двойное нажатие в режиме правки | цифра −1 |
| длинное нажатие в режиме правки | применить цифру |
| короткое нажатие после применения | перейти к следующей цифре |
длинное нажатие на экране Save & exit? |
сохранить координаты и выйти |
двойное нажатие на экране Save & exit? |
вернуться к правке |
Всего перебираются 12 цифр: шесть для широты и шесть для долготы. Когда применены все, короткое нажатие выводит экран подтверждения. Координаты сохраняются двумя командами — set lat и set lon; после сохранения узел появится на карте MeshCoreTel в течение следующего advert.
Ограничение: мастер вводит положительные координаты (формат без знака). Для южного полушария и западной долготы используйте CLI (set lat -33.1234) или веб-панель.
Ограничения
- На экранах без кириллицы подписи меню выводятся латиницей.
- Мастер не настраивает Wi-Fi, MQTT, регионы и список доступа: для них нужен последовательный CLI или веб-панель. На плате с Wi-Fi их удобнее задавать из веб-панели.
- Если дисплея нет, мастер не компилируется в прошивку и на поведение узла не влияет.