refactor: rebrand to PosadMesh, translate docs to Russian, drop legacy brokers
Build and deploy Docs site to GitHub Pages / github-pages (push) Canceled after 0s
PR Build Check / build (Heltec_v3_companion_radio_ble) (push) Canceled after 0s
PR Build Check / build (Heltec_v3_repeater) (push) Canceled after 0s
PR Build Check / build (Heltec_v3_room_server) (push) Canceled after 0s
PR Build Check / build (LilyGo_Tlora_C6_repeater_) (push) Canceled after 0s
PR Build Check / build (PicoW_repeater) (push) Canceled after 0s
PR Build Check / build (RAK_4631_companion_radio_ble) (push) Canceled after 0s
PR Build Check / build (RAK_4631_companion_radio_ethernet) (push) Canceled after 0s
PR Build Check / build (RAK_4631_repeater) (push) Canceled after 0s
PR Build Check / build (RAK_4631_repeater_ethernet) (push) Canceled after 0s
PR Build Check / build (RAK_4631_room_server) (push) Canceled after 0s
PR Build Check / build (RAK_4631_room_server_ethernet) (push) Canceled after 0s
PR Build Check / build (Tbeam_SX1276_repeater) (push) Canceled after 0s
PR Build Check / build (wio-e5-mini_repeater) (push) Canceled after 0s
PR Build Check / build (wio_wm1110_repeater) (push) Canceled after 0s
Run Unit Tests / test (push) Canceled after 0s

This commit is contained in:
2026-10-07 19:04:39 +03:00
parent c0c1336540
commit c86ae584ab
81 changed files with 6942 additions and 5118 deletions
+200
View File
@@ -0,0 +1,200 @@
# Локальная сборка с помощью uv
В этом репозитории `uv` используется для инструментов Python, а PlatformIO запускается через `uv run`.
Эта страница посвящена сборке из исходников. Если вам нужна только готовая прошивка, чтобы прошить устройство, начните со страницы [Скачивание и прошивка релизов](./releases.md).
Используйте эту страницу, когда изменяете прошивку, тестируете таргет перед релизом или собираете локальный артефакт, недоступный в разделе Releases.
## Настройка
Из корня репозитория:
```bash
uv sync
```
## Полезные команды
Список таргетов сборки:
```bash
bash posadmesh-build.sh list
```
Обычная сборка PlatformIO для одного таргета:
```bash
uv run pio run -e heltec_v4_repeater_observer
uv run pio run -e heltec_v4_companion_radio_wifi
uv run pio run -e heltec_v4_repeater_bridge_espnow
uv run pio run -e heltec_v4_repeater_observer_espnow
uv run pio run -e Xiao_S3_WIO_repeater_observer_mqtt_bridge
```
Прошивка таргета:
```bash
uv run pio run -e heltec_v4_repeater_observer -t upload --upload-port /dev/tty.usbmodemXXXX
```
Монитор последовательного порта:
```bash
uv run pio device monitor --port /dev/tty.usbmodemXXXX --baud 115200
```
## Локальные сборки в стиле релиза
Если вам нужны те же метаданные версии, которые используются при выпуске релиза, сначала экспортируйте переменные версии.
Companion Wi-Fi:
```bash
export FIRMWARE_VERSION=v1.14.1
bash posadmesh-build.sh build-firmware heltec_v4_companion_radio_wifi
```
Обсервер:
```bash
export FIRMWARE_VERSION=v1.15.0
export POSADMESH_VERSION=v2026.5.1
bash posadmesh-build.sh build-firmware heltec_v4_repeater_observer
```
Мост ESP-NOW репитера:
```bash
export FIRMWARE_VERSION=v1.15.0
bash posadmesh-build.sh build-firmware heltec_v4_repeater_bridge_espnow
```
Обсервер ESP-NOW:
```bash
export FIRMWARE_VERSION=v1.15.0
export POSADMESH_VERSION=v2026.5.1
bash posadmesh-build.sh build-firmware heltec_v4_repeater_observer_espnow
```
На выходе получаются артефакты с версиями в `out/`.
Правило версионирования:
- `companion-wifi` и `repeater-bridge-espnow` используют версию upstream MeshCore как `FIRMWARE_VERSION`
- `observer-posadmesh`, `observer-posadmesh-bridge-espnow` и `observer-posadmesh-bridge-mqtt` используют версию upstream MeshCore как `FIRMWARE_VERSION` плюс версию релиза PosadMesh как `POSADMESH_VERSION`
## Поддерживаемые платы `repeater_observer`
Это полные имена окружений PlatformIO, используемые для локальных сборок из исходников и для именования артефактов релизов.
```text
Generic_E22_sx1262_repeater_observer
Generic_E22_sx1268_repeater_observer
Heltec_E213_repeater_observer
Heltec_E290_repeater_observer
Heltec_T190_repeater_observer
heltec_tracker_v2_repeater_observer
Heltec_v2_repeater_observer
Heltec_v3_repeater_observer
heltec_v4_repeater_observer
heltec_v4_tft_repeater_observer
Heltec_Wireless_Paper_repeater_observer
Heltec_Wireless_Tracker_repeater_observer
Heltec_WSL3_repeater_observer
LilyGo_T3S3_sx1262_repeater_observer
LilyGo_T3S3_sx1276_repeater_observer
LilyGo_TBeam_1W_repeater_observer
LilyGo_TDeck_repeater_observer
LilyGo_Tlora_C6_repeater_observer
M5Stack_Unit_C6L_repeater_observer
Meshadventurer_sx1262_repeater_observer
Meshadventurer_sx1268_repeater_observer
Meshimi_repeater_observer
nibble_screen_connect_repeater_observer
RAK_3112_repeater_observer
Station_G2_logging_repeater_observer
Station_G2_repeater_observer
T_Beam_S3_Supreme_SX1262_repeater_observer
Tbeam_SX1262_repeater_observer
Tbeam_SX1276_repeater_observer
WHY2025_badge_repeater_observer
Xiao_C6_repeater_observer
Xiao_S3_LoRa2021F33-2G4_repeater_observer
Xiao_S3_WIO_repeater_observer
```
## Поддерживаемые платы мостов
Таргеты мостов можно вывести списком из корня репозитория:
```bash
bash posadmesh-build.sh list | grep '_repeater_bridge_espnow'
bash posadmesh-build.sh list | grep '_repeater_observer_espnow'
```
Типичные примеры:
```text
heltec_v4_repeater_bridge_espnow
heltec_v4_repeater_observer_espnow
Station_G2_repeater_bridge_espnow
Station_G2_repeater_observer_espnow
T_Beam_S3_Supreme_SX1262_repeater_bridge_espnow
T_Beam_S3_Supreme_SX1262_repeater_observer_espnow
```
## Поддерживаемые платы `repeater_observer_mqtt_bridge`
Для каждой платы обсервера определён вариант сборки `mqtt_bridge`.
Список доступных таргетов:
```bash
bash posadmesh-build.sh list | grep '_repeater_observer_mqtt_bridge'
```
Прошивка моста предназначена для локального использования ESP-NOW-моста между близлежащими репитерами. Это не мост MQTT-over-WAN и не VPN-мост.
## Поддерживаемые платы `companion_radio_wifi`
Это полные имена окружений PlatformIO, используемые для локальных сборок из исходников и для именования артефактов релизов.
```text
heltec_tracker_v2_companion_radio_wifi
Heltec_v2_companion_radio_wifi
Heltec_v3_companion_radio_wifi
heltec_v4_companion_radio_wifi
heltec_v4_tft_companion_radio_wifi
Heltec_WSL3_companion_radio_wifi
LilyGo_TBeam_1W_companion_radio_wifi
LilyGo_TLora_V2_1_1_6_companion_radio_wifi
nibble_screen_connect_companion_radio_wifi
RAK_3112_companion_radio_wifi
Station_G2_companion_radio_wifi
T_Beam_S3_Supreme_SX1262_companion_radio_wifi
ThinkNode_M2_companion_radio_wifi
ThinkNode_M5_companion_radio_wifi
Xiao_S3_LoRa2021F33-2G4_companion_radio_wifi
Xiao_S3_WIO_companion_radio_wifi
```
## CLI companion Wi-Fi
Текущие сборки companion Wi-Fi поддерживают сохраняемые команды восстановления Wi-Fi:
- откройте монитор последовательного порта на скорости `115200` бод
- перезагрузите устройство
- в течение первых 8 секунд после загрузки зажмите пользовательскую кнопку, чтобы войти в `CLI Rescue`
- дождитесь `========= CLI Rescue =========`
- затем выполните приведённые ниже команды восстановления Wi-Fi из монитора последовательного порта
```text
get wifi.status
get wifi.ssid
get wifi.powersaving
set wifi.ssid <ssid>
set wifi.pwd <password>
set wifi.powersaving none|min|max
```