Releases: danusha2345/SkylabFCCfree
Release list
SkylabFCCfree v1.5.82
Исправлено включение 5,8 ГГц: восстановлен полный FCC-профиль.
- Прежняя обрезка
fcc.jsonдо09:27(только SDR-мощность) поднимала мощность, но не переключала диапазон. Вернулись кадры переключения:06:72(RADIO set region FCC + commit) и07:30/07:18/07:19(WIFI-каналы). Проверено вживую на DJI Air 3S / RC Pro 2: 10-секундный режим включает 5,8 ГГц, и она держится после отбивки точки дома. - Если после обновления 5,8 не встаёт — один раз перезапустите дрон (сбрасывается «залипшее» состояние радио от прежних применений).
- 10-секундный режим: страна
07:30выбранного региона шлётся отдельной сессией (write-only, без чтения), профиль — двумя раундами.
SkylabFCCfree v1.5.80
- Добавлен сохранённый выбор региона FCC: Австралия (AU), Китай (CN), США (US), Боливия (BO), Россия (RU), Нидерланды (NL) и Малайзия (MY).
- Выбранный код применяется перед каждой ручной отправкой FCC, Home Point Auto FCC и периодическим Auto FCC.
- Список адаптирован для небольшого экрана RC2/RC Pro 2: открывается по центру, имеет ограниченную высоту и прокрутку.
- Селектор и popup получили отдельный цветовой акцент и тёплый тёмный фон.
Проверено: 240 debug + 240 release unit-тестов, Android lint и release-сборка.
SHA-256 app-release.apk: a4345317a85c7e1b2823d355b6f7c241e1ec700626b15e195d1640b3c2a475ea
SkylabFCCfree v1.5.79
Исправлена смена идентичности дрона: новая модель подтверждается устойчивым наблюдением, старый S/N очищается до нового bounded-чтения, служебные подписи DJI больше не считаются моделями. Один точный отчёт статистики теперь повторяется до подтверждения обоими production-приёмниками без расхождения sequence.
SkylabFCCfree v1.5.78
Исправлен воспроизводимый разрыв связи DJI Fly с дроном через 1–2 минуты: автоматическое чтение S/N больше не опрашивает порт 40007 по таймеру и после Home Point.
Теперь выполняется одна короткая identity-проба на сессию связи (не более двух попыток по 600 мс). Короткое N/A не переармит чтение; новая проба возможна только после N/A/явного disconnect не менее 10 секунд и последующего восстановления связи.
Также опубликованы проверенные документы по LTE/modem, TZOS/KDR, TBIE, p7_sign, Pigeon RTOS, Perception и eMMC-дампам, включая отзыв об успешной активации 4G на Mavic 4 Pro + Cellular Dongle 2 + RC 2.
Проверки: 233 unit tests, Android lint, debug/release builds и GitHub Actions — успешно. APK подписан тем же сертификатом, что 1.5.77.
SHA-256 app-release.apk: d2364b61674317ea5764fe08a0657ceed224babb4dee6c1d08312fc7471036d6
SkylabFCCfree v1.5.77
4G переписан по дизассемблированию прошивки: один точный запрос 51:1A (HYBRID + полный серийник дрона) вместо нерабочего 128-кадрового sweep; ответ контроллера (принят/отказ/нет ответа) теперь читается и показывается. Подробности — в CHANGELOG.md.
SkylabFCCfree v1.5.76
1.5.76 — 2026-08-09
- Статистика уходит, пока пульт ещё включён. Пульт включают на один полёт и
убирают, часто без сети, поэтому отчёт, у которого не удалась отправка, ждал
час — и к этому времени пульта уже не было. Теперь появление проверенного
подключения отменяет это ожидание. Суточный предел не меняется: больше одного
отчёта в сутки не отправляется ни при каких условиях, а мигающая сеть не
вызывает повторов чаще раза в минуту.
Подпись прежняя — APK ставится обновлением поверх установленного.
SkylabFCCfree v1.5.75
1.5.75 — 2026-08-09
- Чтение GPS и LED перестало платить за второе имя параметра. Приложение
спрашивает под каждым известным именем, и раньше делало это на каждой
попытке — даже когда уже знало, на какое имя борт отвечает. Одно чтение
занимало порт вдвое дольше, а второе имя на таких бортах не отвечает никогда.
Теперь подтверждённое имя спрашивается одно; пока имя неизвестно,
опрашиваются все — и то, которое работает, получает столько же попыток,
сколько и остальные. - Смена дрона сбрасывает запомненное имя параметра. Раньше оно переживало
отключение борта, и первая команда новому дрону могла уйти по имени
предыдущего — кнопка отчитывалась об успехе и ничего не делала. - Серийник читается из обеих форм ответа. Борт отвечает на один и тот же
запрос двумя способами; вторую форму приложение отбрасывало и теряло попытку
зря. Замерено на живом борту: одиночный запрос доходит примерно в трети
случаев, поэтому каждая потерянная попытка была дорогой. - В шторке галочка выбранного режима стала зелёной, активная кнопка
подсвечивается тем же цветом, а сами кнопки получили форму вместо голого
текста.
Подпись прежняя — APK ставится обновлением поверх установленного.
SkylabFCCfree v1.5.74
1.5.74 — 2026-08-09
- Серийник дрона теперь спрашивается, а не выслушивается. Приложение шлёт
DUML-запрос00:51и получает ответ сразу, вместо того чтобы держать порт
40007открытым целое окно в надежде, что борт сам объявит себя. Порт общий
с видеопотоком DJI Fly, и его удержание стоило связи с бортом; на живой
проверке прежний способ ловил серийник 3 раза из 6, новый отвечает с первой
попытки. Пассивное прослушивание осталось запасным путём — запрос проверен на
Avata 360, и борт, который его не поддерживает, работает как раньше. - Подмена дрона замечается сама. Раньше смену борта выдавали только смена
модели или Home Point, поэтому замена на другой дрон той же модели в
полёте без точки возврата оставалась незамеченной: старый серийник числился за
новым бортом всю сессию и уходил в статистику. Теперь личность перепроверяется
раз в две минуты — это стало возможно потому, что спрашивать дёшево. - Серийник больше не склеивается с моделью чужого борта. При доказанной смене
дрона модель прежнего не наследуется ни кодом, ни именем, а модель, которую
шина не приписала конкретному борту, не приписывается новому серийнику: сразу
после отключения шина ещё повторяет улетевший дрон. - LED и GPS адресуются по имени параметра, а не одним зашитым хэшем. Хэш — это
функция имени, и на прошивках, где у параметра пропал префиксg_config.*
(так на DJI Lito X1), старый хэш не находил ничего, а переключатель молча не
работал. Приложение спрашивает под каждым известным именем, запоминает то, на
которое борт ответил, и пишет им же. На живом Lito X1 не проверено —
короткие хэши вычислены, но борт для проверки не подключался. - После точки возврата чтение идентичности молчит 5 секунд вместо 30. Запись
FCC занимает пару секунд, а остальное было ожиданием впустую. Порт при этом
защищён надёжнее прежнего: он занимается для записи в момент, когда точка
возврата принята, и держится до конца записи со всеми её повторами, а не
угадывается таймером.
Подпись прежняя — APK ставится обновлением поверх установленного.
SkylabFCCfree v1.5.73
1.5.73 — 2026-08-07
- Статистика уходит на два адреса вместо одного. Один и тот же отчёт с одним
report_sequenceотправляется в одном цикле на оба приёмника, поэтому их базы
содержат одно и то же. Недоступность одного адреса больше не отменяет отправку
на другой: раньше единственный мёртвый адрес означал, что отчёт не уходил
никуда. Второй адрес задаётся на сборке и необязателен; совпадающие адреса
считаются одним приёмником. - Ошибка отправки на один адрес больше не прерывает цикл — оставшиеся адреса
всё равно получают отчёт.
Подпись прежняя — APK ставится обновлением поверх установленного.
SkylabFCCfree v1.5.72
1.5.72 — 2026-08-07
- Переезд приёмника статистики на новый сервер. Прежний хост стал недоступен, и
сборки начиная с этой отправляют snapshot на новый адрес. Код клиента не
менялся: адрес по-прежнему приходит в сборку изFREEFCC_STATISTICS_ENDPOINT
и не хранится в репозитории. Сборки до1.5.71включительно шлют отчёты на
мёртвый адрес и молча ничего не отправляют — работа самого FCC от этого не
зависит.
Подпись та же, что у 1.5.71, — APK ставится обновлением поверх установленного.