- Исправлен перезапуск приложения после замены файлов и добавлено подтверждение запуска новой версии.
- Обеспечены откат при ошибке и корректное завершение фоновых задач.
- Исключены посторонние DLL из Windows-сборки, обновлены тесты и инструкция ручного перехода с v2.0.1.
- Сборки Windows и Linux теперь дополнительно формируют ZIP-архивы с бинарником и ресурсами.
- OTA-проверка выбирает ZIP-артефакт текущей платформы вместо отдельного исполняемого файла.
- Добавлена безопасная проверка архивов, защита от traversal, ссылок, повреждений и превышения лимитов.
- Обновление транзакционно заменяет все верхнеуровневые файлы и каталоги пакета с резервным копированием и откатом.
- Пользовательские файлы, отсутствующие в ZIP, включая settings.json, сохраняются.
- Версия приложения повышена до 2.0.1, документация и кроссплатформенные тесты обновлены.
- Добавлена обратная совместимость с прошивками, содержащими маркер no_auth.
- Повторная авторизация после команды 04 и успешного обновления прошивки приведена к требуемому порядку.
- В терминал команд добавлена ручная кнопка авторизации.
- Реализовано OTA-обновление приложения с загрузкой платформенного артефакта, безопасной заменой и перезапуском.
- Проверка обновлений учитывает только более новые версии по схеме major, minor и patch.
- Обновлены имена Windows и Linux сборок, документация и тестовое покрытие.
- удалена повторная авторизация перед отправкой команды 04
- полный AES-256 handshake запускается только после успешного OTA и перезагрузки контроллера
- обновлены сообщения интерфейса и документация порядка обновления
- тесты теперь проверяют, что команда 04 предшествует команде авторизации 07
- версия приложения повышена до 1.5.1
- локальные каталоги релизных артефактов исключены из Git
- добавлена полная повторная авторизация перед командой 04
- добавлена авторизация после успешного обновления и перезагрузки платы
- общий OTA-сценарий подключён к базовому и PRO-интерфейсам
- в терминал команд добавлена кнопка ручной авторизации
- состояние авторизации синхронизировано с основной вкладкой
- добавлены тесты порядка авторизации и обработки ошибок OTA
- версия приложения повышена до 1.5.0
- обновлена документация
- Добавлен стартовый handshake: ожидание строки версии контроллера, пауза 2000 мс и подтверждение готовности только по READY!.
- Исправлена работа COM-буфера и аппаратного сброса через RTS, добавлены модульные тесты протокола.
- Добавлена нативная сборка для Debian 13 x86_64 и обновлена документация.
- Улучшена очистка Windows-сборки и кроссплатформенная обработка devnull.
- Изменен процесс OTA-обновления (команда 04) в FirmwareDialog (PRO-режим): убрано всплывающее информационное окно, заменено на подробное фоновое логирование процесса (получение прогресса прошивки и перезапуска платы) в реальном времени.
- Внедрен QSplitter во все окна с логами (FirmwareDialog, FirmwareSection, CommandTerminalDialog) для обеспечения возможности ручного изменения высоты панели логов.
- Версия приложения обновлена до 1.4.2.
- Переименованы элементы выбора физического канала в настройках WS2812: "1-й канал" -> "2-й канал", "2-й" -> "3-й", "3-й" -> "4-й".
- Удален неиспользуемый "4-й канал (4)", так как команды 894XY не существует.
- Изменения внесены в LedTestDialog и LedTestSection.
- Версия приложения обновлена до 1.4.1.
- Удален кастомный безрамочный режим (FramelessWindowHint) главного окна и диалогов.
- Внедрено нативное управление окнами операционной системы (изменение размеров, максимизация, минимизация).
- Добавлено применение QPalette под выбранную тему (темную/свелую) и акцент для покраски системных элементов окон.
- Внутреннее содержимое диалогов (StyledDialog) обернуто в QScrollArea с автоскроллом и ограничением по высоте до 720px во избежание выхода окон за пределы экрана.
- TitleBar упрощен до простой верхней панели вкладок (sub-header/tabs).
- В диалог теста подсветки добавлен выбор номера ленты (1..4) при тесте пикселя виртуальной матрицы, обновлена логика генерации и отправки тестовой команды.
- Раздел "Бродяга морей" переименован в "Бродяги морей".
- Добавлен импорт QWidget из PySide6.QtWidgets в led_test_dialog.py.
- Устранена ошибка NameError: name 'QWidget' is not defined при открытии диалога тестирования подсветки.
- Импортирован модуль Qt из PySide6.QtCore в файле led_test_section.py, чтобы исправить ошибку при вызове QColorDialog.getColor.
- Проект успешно пересобран в dist.
- Добавлена поддержка выбора произвольного цвета (QColorDialog) с отправкой команды 8008RRRGGGBBB.
- Реализована панель управления GPIO25/GPIO26 (команда 50) в output_test_dialog.py.
- Добавлена поддержка direct-объектов и эффектов Бродяги морей (команда 81) в led_test_dialog.py.
- Реализованы тесты матриц и direct-шкалы (команда 85) в led_test_dialog.py.
- Создан новый диалог prize_showcase_dialog.py для ячеек призовой витрины (команда 25).
- Добавлена кнопка «Витрина призов» в PRO-кнопки connection_tab.py.
- В payment_section.py добавлен показ накопительного счетчика монет global_summa (команда 93).
- Обновлены коды базовых эффектов в Морской бой VR.lm с 0..12 на 10..22.
- Создан новый файл настроек подсветки Резервная панель RZ.lm.
- Полностью обновлен справочник команд Основные.csv с поддержкой новых команд v2.x.
- Добавлен выпадающий список стандартных ролей/матриц в диалог role_dialog.py.
- В led_test_dialog.py и led_test_section.py добавлены контролы для выбора физического канала, настройки яркости и гамма-коррекции WS2812.
- обновлён простой режим: тест цвета и проверка подсветки кнопок объединены в раздел «Тест подсветки»
- добавлена проверка подсветки кнопок через 8-й силовой выход с автоматическим коротким тестом
- упрощены описания пользовательских проверок и убраны лишние технические подробности из простого режима
- изменена раскладка теста цвета, увеличена длительность шага до 1 секунды и убраны описания из PRO-блока
- добавлена защита выпадающих списков от случайного изменения колесом мыши
- улучшены немодальные PRO-диалоги, настройки соединения и обработка событий COM-порта
- обновлены визуальные детали приложения, пользовательские ресурсы, инструкции AGENTS и Release Notes 1.3.0