• v1.5.82 f9d48dafa6

    danik released this 2026-08-19 20:51:23 +03:00 | 8 commits to main since this release

    Исправлено включение 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, без чтения), профиль — двумя раундами.
    Downloads
  • v1.5.80 ce5c4f8b7c

    danik released this 2026-08-15 10:29:16 +03:00 | 13 commits to main since this release

    • Добавлен сохранённый выбор региона 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

    Downloads
  • v1.5.79 1c4a49f5ff

    danik released this 2026-08-12 20:16:03 +03:00 | 14 commits to main since this release

    Исправлена смена идентичности дрона: новая модель подтверждается устойчивым наблюдением, старый S/N очищается до нового bounded-чтения, служебные подписи DJI больше не считаются моделями. Один точный отчёт статистики теперь повторяется до подтверждения обоими production-приёмниками без расхождения sequence.

    Downloads
  • v1.5.78 f90a3dd4fb

    danik released this 2026-08-12 13:15:05 +03:00 | 15 commits to main since this release

    Исправлен воспроизводимый разрыв связи 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

    Downloads
  • v1.5.77 b1f40eed6c

    danik released this 2026-08-11 18:01:38 +03:00 | 16 commits to main since this release

    4G переписан по дизассемблированию прошивки: один точный запрос 51:1A (HYBRID + полный серийник дрона) вместо нерабочего 128-кадрового sweep; ответ контроллера (принят/отказ/нет ответа) теперь читается и показывается. Подробности — в CHANGELOG.md.

    Downloads
  • v1.5.76 4eb344cd1a

    danik released this 2026-08-09 15:14:40 +03:00 | 19 commits to main since this release

    1.5.76 — 2026-08-09

    • Статистика уходит, пока пульт ещё включён. Пульт включают на один полёт и
      убирают, часто без сети, поэтому отчёт, у которого не удалась отправка, ждал
      час — и к этому времени пульта уже не было. Теперь появление проверенного
      подключения отменяет это ожидание. Суточный предел не меняется: больше одного
      отчёта в сутки не отправляется ни при каких условиях, а мигающая сеть не
      вызывает повторов чаще раза в минуту.

    Подпись прежняя — APK ставится обновлением поверх установленного.

    Downloads
  • v1.5.75 fcc169d604

    danik released this 2026-08-09 11:48:13 +03:00 | 23 commits to main since this release

    1.5.75 — 2026-08-09

    • Чтение GPS и LED перестало платить за второе имя параметра. Приложение
      спрашивает под каждым известным именем, и раньше делало это на каждой
      попытке — даже когда уже знало, на какое имя борт отвечает. Одно чтение
      занимало порт вдвое дольше, а второе имя на таких бортах не отвечает никогда.
      Теперь подтверждённое имя спрашивается одно; пока имя неизвестно,
      опрашиваются все — и то, которое работает, получает столько же попыток,
      сколько и остальные.
    • Смена дрона сбрасывает запомненное имя параметра. Раньше оно переживало
      отключение борта, и первая команда новому дрону могла уйти по имени
      предыдущего — кнопка отчитывалась об успехе и ничего не делала.
    • Серийник читается из обеих форм ответа. Борт отвечает на один и тот же
      запрос двумя способами; вторую форму приложение отбрасывало и теряло попытку
      зря. Замерено на живом борту: одиночный запрос доходит примерно в трети
      случаев, поэтому каждая потерянная попытка была дорогой.
    • В шторке галочка выбранного режима стала зелёной, активная кнопка
      подсвечивается тем же цветом, а сами кнопки получили форму вместо голого
      текста.

    Подпись прежняя — APK ставится обновлением поверх установленного.

    Downloads
  • v1.5.74 4024b84d46

    danik released this 2026-08-09 10:47:32 +03:00 | 26 commits to main since this release

    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 ставится обновлением поверх установленного.

    Downloads
  • v1.5.73 30a9497d83

    danik released this 2026-08-07 22:57:14 +03:00 | 40 commits to main since this release

    1.5.73 — 2026-08-07

    • Статистика уходит на два адреса вместо одного. Один и тот же отчёт с одним
      report_sequence отправляется в одном цикле на оба приёмника, поэтому их базы
      содержат одно и то же. Недоступность одного адреса больше не отменяет отправку
      на другой: раньше единственный мёртвый адрес означал, что отчёт не уходил
      никуда. Второй адрес задаётся на сборке и необязателен; совпадающие адреса
      считаются одним приёмником.
    • Ошибка отправки на один адрес больше не прерывает цикл — оставшиеся адреса
      всё равно получают отчёт.

    Подпись прежняя — APK ставится обновлением поверх установленного.

    Downloads
  • v1.5.72 12737342ba

    danik released this 2026-08-07 21:24:25 +03:00 | 41 commits to main since this release

    1.5.72 — 2026-08-07

    • Переезд приёмника статистики на новый сервер. Прежний хост стал недоступен, и
      сборки начиная с этой отправляют snapshot на новый адрес. Код клиента не
      менялся: адрес по-прежнему приходит в сборку из FREEFCC_STATISTICS_ENDPOINT
      и не хранится в репозитории. Сборки до 1.5.71 включительно шлют отчёты на
      мёртвый адрес и молча ничего не отправляют — работа самого FCC от этого не
      зависит.

    Подпись та же, что у 1.5.71, — APK ставится обновлением поверх установленного.

    Downloads