Release v1.5 (dak_v1.5.bin)
Release Notes — v1.5
Дата: 2026‑04‑13
Проект: dak-esp32s3-fw (ESP32‑S3, SATCO DAK)
Изменения относительно v1.4
База сравнения: тег v1.4 (коммит релиза v1.4) → v1.5. Ниже — пользовательские и технические отличия; поведение из v1.4 (Meas.modes, Wi‑Fi в settings.json, RefractCoeff, USB без VBUS, пинг, SetTimeWeb и т.д.) сохраняется, если не указано иное.
Имя прошивки и проект CMake
- Проект ESP‑IDF переименован:
dak3→dak(CMakeLists.txt:project(dak)). - Версия сборки:
PROJECT_VER = "v1.5". - Готовый образ приложения в релизе:
dak_v1.5.binи копияdak.bin(тот же образ дляflasher_args.json). -
OTA / копирование по USB: путь обновления
/data/dak.bin(ранее/data/dak3.bin). Файл для обновления на накопителе должен называтьсяdak.bin.
Wi‑Fi: точка доступа для настройки
- Имя AP:
SATCO-DAK-WIFI-SET(ранееDAK-WIFI-SET). - Пароль AP:
satcodakconfig(ранееdak3config). - Сообщения в логах при ошибке подключения обновлены под новые имя/пароль.
Wi‑Fi: стабильность первого запуска
- Если SSID пустой, прошивка не вызывает
esp_wifi_init/disconnectс «сырой» инициализацией — это убирает сценарий с abort/перезагрузкой из‑за отмены незарегистрированных обработчиков. - В
disconnect()добавлены проверки: корректная очисткаsta_netif, если Wi‑Fi уже не инициализирован; избегание двойного destroy.
Сеть и код
- Исправлена константа
SYNC_TIME_TIMEOUT: теперь явно 6000 тиков (≈6 с), соответствующая прежнему замыслу0.1 * 1000 * 60в миллисекундах для таймаутов FreeRTOS. - Удалён мёртвый код
rpc_request/emsys_connect(жёстко зашитые учётные данные не используются).
Меню и настройки (GUI)
- Из пользовательского меню убран пункт Increment (автонумерация измерений); остальные пункты User / Service / Settings согласованы с документацией.
- В Settings добавлены/выведены в меню (см.
MENU_GUIDE.md):- Sync.time, TimeZone, DST Mode, SetTimeWeb, Upd.period — синхронизация и локальное время (NTP / ручной ввод, часовой пояс, летнее время EU, период автоизмерения на главном экране).
- Meas.modes (вкл/выкл pH, EC, Conc) доступен только в сервисном режиме (ранее был и в обычных настройках в части сценариев v1.4 — уточнено в v1.5 для разделения пользовательского и сервисного доступа).
Время: модуль app_time
- Вынесена логика UTC
↔ локальное время с учётомTimeZoneи DST (правило EU). - Учёт источника времени:
appTime_setTimeOriginNtp/appTime_isTimeFromNtpдля корректного поведения GUI после NTP и ручного ввода.
Измерения (app_measure)
- Доступ к структуре сенсоров: добавлен
appMeasure_getSensorsSnapshot()и мьютекс — безопасное чтение при работе задач. - Данные фотолинейки копируются во встроенный массив
phl_data(memcpy), указательphlведёт на локальную копию — нет гонок с временными буферами. - Если концентрация выключена в Meas.modes, при старте измерения не запускается цепочка фотолинейки — только опрос датчиков (температура / pH / EC по конфигурации).
USB / хранение
- Существенный рефакторинг
usb_storage.cpp/usb_storage.hpp(логика MSC, активности хоста, согласованность с настройками и ФС). Поведение без VBUS и таймаут активности хоста из v1.4 сохраняется в рамках новой структуры кода.
Документация и вспомогательные материалы
- Руководства:
docs/INSTRUCTION_MANUAL.md,docs/INSTRUCTION_MANUAL_de.md, HTML/Word варианты, скрипты сборки docx. -
trainview/translations_ru_en_fr.csvиTRANSLATIONS_README.md— материалы для перевода строк. - Обновлены
MENU_GUIDE.md,SETTINGS_JSON_DOCUMENTATION.md, flash/OTA/релизные инструкции под именаdak/ v1.5. - Kconfig: меню
SATCO DAK Configuration(вместоDAK3 Configuration).
Релиз и скрипты
- Каталог
release/v1.5/:dak_v1.5.bin,dak.bin,bootloader/,partition_table/,ota_data_initial.bin,flasher_args.json,FLASH_addresses.md(единый файл с командами esptool по образам). - Скрипты создания релиза GitLab / загрузки ассетов по умолчанию указывают на duklab.hopto.org и путь репозитория
dak_v.4/dak4-esp32s3-fw.
Удалено из репозитория
- Резервные копии
usb_storage_v1.1.30.cpp,usb_storage_v1.1.31.cpp(устаревшие дубликаты).
Сборка
-
PROJECT_VER = "v1.5", целевой бинарник:build/dak.bin, копия с версией:build/dak_v1.5.bin.
Состав релиза (тег v1.5)
| Файл | Назначение |
|---|---|
dak_v1.5.bin / dak.bin
|
Приложение @ 0x10000 |
bootloader/bootloader.bin |
Загрузчик @ 0x0 |
partition_table/partition-table.bin |
Таблица разделов @ 0x8000 |
ota_data_initial.bin |
OTA data @ 0x610000 |
flasher_args.json |
Аргументы esptool |
FLASH_addresses.md |
Пошаговые команды прошивки |
Обновление с v1.4
- Полная перепрошивка по
FLASH_addresses.mdили одной командой изflasher_args.json(рекомендуется из каталогаrelease/v1.5). - OTA / файл на USB: кладите образ как
dak.bin(неdak3.bin). - После обновления при первом входе в Wi‑Fi‑конфигурацию используйте AP
SATCO-DAK-WIFI-SET/ парольsatcodakconfig.