Узел
Один порядок для DIY и Light. Сначала процессор микрофонов, потом ESP. Кабели не менять местами.
| Куда | Что это | Чем шить |
|---|---|---|
| USB-C у гнезда 3,5 мм | XVF3800, звук | кнопка DSP ниже |
| USB-C на модуле XIAO | ESP32-S3, прошивка узла | DIY или Light |
DIY — обычный XIAO, только Wi‑Fi. Light — XIAO Plus и Ethernet W5500. Прошивки разные, микрофонный чип один.
1 · DSP
XVF3800 · I2S slave 1.0.8 · 16 кГц
Это не прошивка ESP. Если чип уже 1.0.8, шаг пропускают. Mute и Reset — на противоположных краях платы.
- Кабель в USB-C у гнезда 3,5 мм. Браузер — Chrome или Edge.
- Зажать Mute, коротко Reset. Mute мигает, кольцо гаснет.
- Кнопка ниже сама берёт слот Upgrade. Не Factory и не прошивка 48 кГц.
Windows, если порта нет: скачать Zadig 2.9 → Options → List All Devices → reSpeaker / XVF3800 → WinUSB. TIMEOUT: вынуть USB около 10 с, снова Mute+Reset, одна попытка. Надпись про сбой USB reset значит, что образ уже записан: кабель у 3,5 мм вынуть на 5 с и не жать кнопку снова.
2 · ESP
DIY
Публичный канал diy-ota. Веса сети уже в файле. Закрытый ключ не нужен.
канал…
Полный образ с адреса 0x0: загрузчик, таблица разделов и приложение. Чистая плата шьётся этой кнопкой, как с публичного портала. В окне галку Erase не ставить.
Light
Закрытый канал light-ota. Вместе с прошивкой в память кладётся ключ обновлений. В файл прошивки ключ не вшит.
канал…
Тот же полный образ с адреса 0x0 и ключ обновлений Light в NVS. Облачный токен уже в прошивке. В окне галку Erase не ставить.
После записи ESP
- Дождаться 100 % и закрыть окно. Если порт мигает — вынуть USB на секунду.
- DIY и Light без кабеля: сеть NV…, пароль — то же имя, страница http://192.168.4.1. Light с Ethernet: точка доступа не поднимается, адрес даёт роутер или http://nv….local.
- Сразу сменить пароль страницы: admin / nevod-change-me. Пока он заводской, узел не сохраняет настройки и сам открывает вкладку «Система».
- Хлопнуть рядом. Пеленг должен сдвинуться.
- Система → Координаты GPS. Часы идут сами, сервер pool.ntp.org; индикатор должен стать зелёным.
- DIY: Сеть → Wi‑Fi площадки → «Сохранить и перезагрузить». Light с кабелем этот шаг пропускает.
- Облачный токен уже в прошивке. Клиент меняет его на вкладке Интеграции. Узел отвязывать не нужно.
- Light с модемом — вкладка LoRa. Имя модема узел берёт оттуда, не из этой прошивки.
Повторная прошивка этими кнопками возвращает завод: Wi‑Fi, пароль страницы и координаты вводят заново. Галку Erase в окне не ставить.
LoRa
Три платы Heltec: шлюз, модем у Light и пейджер. Прошивка Meshtastic 2.8 (пейджер — сборка NevodPager). Канал и ключ общие. Инженер задаёт только суффикс xxx — имена собираются сами.
Имена: GATE_… (GATE) · MIC_… (MIC) · PAGER_… (PAG)
| Шлюз GATE | Модем MIC | Пейджер PAG | |
|---|---|---|---|
| Роль | CLIENT_BASE | CLIENT | CLIENT |
| Где | розетка, Wi‑Fi + MQTT | у Light, BLE + mesh | с собой, OLED + mesh |
| Плата | Heltec V3/V4 | Heltec V3/V4 | Heltec V4 или LILYGO T-Echo Plus |
| GPS | — | встроенный или координаты вручную | встроенный или нет (расстояние до MIC считает Meshtastic) |
| В приложении | все выглядят как Client* — семейство Meshtastic. MIC/PAGER ретранслируют (не MUTE). ROUTER не ставить. | ||
ROUTER и REPEATER не ставить: на ESP32 они выключают Bluetooth и Wi‑Fi. Канон: mesh kit 2026-10-30 (MUTE — только low-airtime fallback).
Общее радио
| Регион | RU |
| Пресет | LONG_FAST |
| Слот | 1 · 868.825 МГц. Слот 0 сажает пару на публичные 869.075 МГц. |
| Имя канала | NEVOD, не длиннее 12 байт |
| Прыжки | 5 |
| Мощность | 20 дБм, RX boost включён |
| Повтор чужих | LOCAL_ONLY (узлы CLIENT участвуют в mesh) |
| Пояс | MSK-3 |
| Вторичные каналы | удалить, публичный LongFast тоже |
| Ключ канала | один на всех заказчиков, лежит на сервере. Кнопки ниже пишут его в плату. |
Это пишет кнопка. В приложении Meshtastic то же самое не выставлять.
1 · Прошивка пейджера
NevodPager (модифицированная, не stock)
Оба образа с модулем NevodPager (PRIVATE_APP DET/HB). Выберите плату.
Плата для прошивки
образ…
- Кабель USB в Heltec V4, Chrome или Edge. Приложение Meshtastic закрыто.
- В окне галку Erase не ставить — иначе сотрутся канал и имя.
- После 100 % подождите ~15 с (первый boot), затем шаг 2: суффикс xxx и «Настроить пейджер».
- Скачайте UF2. На T-Echo Plus: двойной Reset (или Reset+Boot) → диск TECHOBOOT.
- Скопируйте .uf2 на этот диск; плата сама перезагрузится.
- DET/HB — в All Messages на e-ink + LED. Затем шаг 2: суффикс и «Настроить пейджер».
Шлюз и модем — stock с flashmesh.ru, затем кнопками в шаге 2.
2 · Профиль по USB (имена и канал)
Пейджер PAGER_xxx
Канал, имя, GPS. После прошивки NevodPager выше (V4 или T-Echo Plus).
Плата
GPS пейджера
С GPS Meshtastic сам покажет расстояние до MIC (если у модема тоже есть точка). Ручные координаты у пейджера не задаём.
- Роль CLIENT, канал NEVOD, слот 1, hop 5.
- Heltec V4: DET на OLED — короткий клик сбрасывает тревогу. T-Echo Plus: DET/HB в Messages + LED; GPS — расстояние до MIC.
- Кнопка очищает старый список узлов: остаются участники NEVOD.
Модем MIC_xxx
Плата
GPS модема
- Роль CLIENT, тот же канал, uplink нет; участвует в hops.
- Wi‑Fi/MQTT выкл. config_ok_to_mqtt вкл.
- GPS: либо встроенный приёмник, либо широта/долгота вручную (не оба пустые).
- На Light в BLE-имени будет MIC_XXXX (short + хвост MAC).
Шлюз GATE_xxx
Плата
- Роль CLIENT_BASE, слот 1, hop 5, uplink да / downlink нет.
- Первый раз — Wi‑Fi и MQTT (лаб: брокер Hub). Пустые поля сеть не стирают.
- GPS у шлюза нет: ретранслирует закрытый mesh в MQTT.
- Все MIC пометить избранными в приложении (кнопка Web Serial favorite пока не пишет; CLI lora_kit_configure.py — да).
Узел Light
- Ethernet. Сеть → «Режим LoRa вместо Wi‑Fi».
- Имя BLE модема: MIC_ + 4 hex MAC (после записи модема видно в сканнере узла).
- PIN 123456 с завода. Галка «координаты с модема» — HB берёт lat/lon с MIC.
- Координаты узла на вкладке Система: при отключённом GPS они записываются в MIC.
USB
- Если на плате ещё нет Meshtastic 2.8: flashmesh.ru, Heltec V3 или V4. Файл NEVOD не выбирать.
- Кабель в Heltec, Chrome или Edge. Кнопка выше выбирает порт и пишет профиль. Приложение Meshtastic в этот момент закрыто.
- Проверка: текст с модема, на Шлюзе приём с номером модема. hops_away на столе должен быть 0. В статусе Шлюза — Wi‑Fi и MQTT подключены.
Канал…
Кадры узла идут в msh/NEVOD/2/e/…. Облачного токена в эфире нет: его подставляет Hub.
Hub
Один Hub на площадку, если нет FOG. Страница сама заходит на машину по SSH и ставит Hub. Ход виден ниже, туда же пишется ответ, если машина спросит.
Без последней галки Hub включается сразу на машине, куда зашли по SSH. С галкой панель там не открывается: коробка только скачивает программу. Её включают уже в сети заказчика, и панель берёт тамошний адрес. Адрес сверху пишут, только если у машины несколько сетей и узлы ходят не в ту, что нашлась бы сама. Для уезжающей коробки сюда не ставят адрес лаборатории.
Машина должна принимать SSH с этого сервера. Пароль уходит один раз и нигде не сохраняется. Если спросит пароль sudo — его вводят в строку ответа. С MQTT поднимается брокер :1883. Номер ZeroTier скрипт напишет, узел нужно разрешить. Облако и заводской токен подставляются сами.
FOG
Коробка площадки вместо Hub. Только Orange Pi 5 Plus. Страница сама заходит по SSH и ставит FOG. Ход виден ниже, туда же пишется ответ, если мастер спросит.
Сначала на плате уже есть SSH: образ Armbian vendor, пароль root сменён. Ключ кабинета и доступ к образам подставляются сами, их не вводят. Клиент меняет ключ, когда заводит свой кабинет. Мастер спросит, стереть ли диск, и нужен ли на плате Mosquitto (узлы, Home Assistant) и go2rtc. Ответ — в строку внизу.
Плата один раз перезагрузится сама, когда перенесёт систему на диск. Сессия тогда оборвётся, установка продолжится без неё. Пульт: http://адрес-платы:8090. Номер ZeroTier скрипт напишет, узел нужно разрешить. Пароль sudo, если спросит, вводят в строку ответа. Один адрес фидера не опрашивают и Hub, и FOG.
Приёмка
В конце, уже на площадке. Галочки остаются на этом компьютере. Новую площадку начинают с чистого листа.
-
Заводской пароль admin / nevod-change-me к этому шагу уже сменён. Пока он стоит, узел настройки не пишет.
-
На узле: Система → Координаты GPS. Сервер времени pool.ntp.org.
-
Один фидер смотрит только один из них. Пульт Hub — порт 9443, FOG — http://адрес:8090.
-
Проверка: NodeDB на MIC/GATE/PAGER; traceroute или hops_away; Wi‑Fi+MQTT шлюза. Без LoRa шаг отмечают сразу.
-
Номер узел пишет в ходе установки. Разрешает его администратор сети 856127940c797aee, если сеть не меняли.