Skip to content

firmware v1.1.2 — полевой режим (Outdoor AP) + captive-landing + CRC32 stream-export

Latest

Choose a tag to compare

@Verter73 Verter73 released this 11 Jul 20:22

Полевой режим (Outdoor AP) + captive-landing + контроль целостности stream-export.

Накопительный релиз v1.0.11 → v1.1.2 (промежуточные v1.1.0/v1.1.1 отдельными релизами не публиковались).

🌲 Полевой режим (Outdoor AP) — главное в этом релизе

Плата теперь умеет работать в поле без роутера и интернета — сама поднимает точку доступа Wi-Fi, к которой подключается телефон и получает полный интерфейс прибора. Всё, что нужно в поле: плата, телефон и (по желанию) повербанк для питания.

Как это работает:

  • Плата поднимает точку доступа AtomSpectra-Outdoor (пароль atomspectra, WPA2-PSK), адрес 192.168.4.1.
  • Телефон подключается к сети → операционная система делает обычную «проверку связи» → показывает привычное уведомление «Вход в сеть» (как в кафе или аэропорту) → всплывает лёгкая страница входа с крупным адресом прибора (192.168.4.1 и atomspectra.local), которая сама открывает интерфейс прибора за ~1 секунду. Там же кнопка «Открыть прибор →».
  • Страница входа нарочно лёгкая (без внешних шрифтов и скриптов) — гарантированно рисуется в упрощённом «captive-браузере» телефона, где тяжёлый основной интерфейс иногда не догружается. Если авто-переход не сработал (iOS умеет ограничивать) — адрес виден на экране, введите 192.168.4.1 в браузере вручную.
  • В интерфейсе доступно всё: живой спектр, водопад, экспорт (N42/XML/SPE/CSV), управление прибором (-sta/-sto/-rst), калибровка, сохранение спектров.
  • Данные водопада всё это время копятся на flash платы (LittleFS) и забираются дома в режиме Indoor приёмником.
  • Всё офлайн: ни SNTP, ни выгрузки наружу, ни облака.

Три способа войти в Outdoor:

  1. Переключатель Indoor ↔ Outdoor в шапке стартовой страницы — «липкий» режим, сохраняется между перезагрузками, пока не переключите обратно.
  2. Автоматически (fallback) — если домашняя сеть недоступна ≥ 90 с, плата одноразово поднимает полевой AP; следующая перезагрузка снова пробует домашнюю сеть.
  3. С новой (ненастроенной) платы — кнопка «Полевой режим (Outdoor)» в setup-портале.

Время в поле. Интернета нет → SNTP не работает. Время берётся с браузера телефона автоматически при открытии любой страницы (и раз в час); ручная коррекция — поле datetime-local в разделе «Система». При активном SNTP (дома) ручная/браузерная установка игнорируется. Экспорт со дня, когда время ещё не пришло (часы = 1970), помечается «TIME NOT SYNCHRONIZED» и не портит нормальные записи.

Безопасность. Пароль AP по умолчанию atomspectra — публичный, документированный; через открытый AP управляется прибор (включая -rst, стирающий спектр), поэтому для людных мест смените пароль в разделе «Система» (применяется после ребута). При дефолтном пароле Web UI показывает предупреждение.

Bluetooth. Не используется и не собирается (CONFIG_BT_ENABLED=n) — BLE-радио не инициализируется ни в одном режиме, RAM и питание не тратит.

Прочее в релизе

  • CRC32 на stream-export (v1.1.1): GET /api/waterfall/export.aswf (выгрузка из кольца ОЗУ) теперь пишет per-row CRC32 — единый формат v5 с flash-сегментами. Контроль целостности .aswf доступен и на потоковых выгрузках, не только на сегментах flash.

Прошивка

Web-флешер тянет firmware.factory.bin автоматически (offset 0x0). Ручная прошивка — см. INSTALL.md (bootloader / partition-table / app по offset'ам из flasher_args.json).

SHA256: firmware.factory.bin a7d39da9998293cff53f8804439b25e05a9702626d052e6ace1cbc8b841ebd4c