ExpressLRS — передатчики и приемники: настройка, прошивка и обновление

ExpressLRS  — это система радиоуправления на большие расстояния с открытым исходным кодом, разработанная Алессандро Карчоне (он же AlessandroAU) и рядом других разработчиков.

О системе

ExpressLRS разработал Alessandro Carcione (AlessandroAU), у него получилось добиться максимальной дальности передачи и приема сигнала и при этом все работает с очень маленькой задержкой благодаря оптимизированным пакетам данных, которые передаются для обмена между оборудованием.

Небольшой недостаток: есть только базовая телеметрия, которая включает в себя VBAT, нисходящий/восходящий LQ и нисходящий/восходящий RSSI, но уже ведутся работы для поддержки полной телеметрии.

Посмотрите на картинку ниже, здесь вы можете сравнить систему с CrossFire и убедиться в значительном отличии задержек:

График задержки

Читайте также: Приемники и передатчики работающие на ExpressLRS, список

Настройка ExpressLRS в OpenTX 

Система использует  последовательный протокол CRSF для связи между радиопередатчиком и модулем. Чтобы установить протокол CRSF, перейдите к настройкам выбранной модели, на вкладке Model Setup включите External TX и выберите CRSF в качестве протокола:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Настройка модуля ExpressLRS с помощью LUA скрипта

Все изменения в конфигурации модуля можно делать с помощью LUA скрипта.

Скачать скрипт можно по этой ссылке: https://github.com/ExpressLRS/ExpressLRS/blob/master/src/lua/ELRS.lua (правой кнопкой мыши — сохранить ссылку как)

Конфигуратор ExpressLRS

У протокола для конфигурации систем на которой он работает, есть свой конфигуратор.

Скачать конфигуратор можно здесь: https://www.expresslrs.org/

Скачать скрипт LUA можно прямо из этого конфигуратора:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Скопируйте файл сценария ELRS.lua в папку \ SCRIPTS \ TOOLS \ на SD-карту аппаратуры.

Можно запустить конфигуратор ExpressLRS LUA , нажав и удерживая кнопку настроек на аппаратуре (SYS) и выбрав сценарий Lua ELRS из списка:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Когда сценарий запустится, вы увидите такую информацию:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Возможные проблемы при запуске скрипта и решения

Если сценарий LUA показывает на экране только сообщение «Connecting…», это значит, что LUA не взаимодействует с передатчиком.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Возможные причины и способы решения этой проблемы:

  • Модуль неправильно  подключен к отсеку для внешнего модуля JR . Попробуйте переустановить модуль в отсек / корпус JR. На работающем модуле должен гореть красный светодиод.
  • Вы используете версию OpenTX старше 2.3.12. Нужно обновиться как минимум до 2.3.12 версия для того, чтобы ExpressLRS мог работать.
  • Вы не установили для External RF значение CRSF в настройке модели. Перейдите к настройке модели и проверьте настройки. Внутренний приемник (Internal RF) должен быть выключен.
  • Передатчик находится в режиме обновления WiFi . Чтобы запустить модуль ExpressLRS в нормальном режиме, необходимо выключить и снова включить аппаратуру управления.

Если скрипт LUA показывает предупреждение об ошибке: «!!! VERSION MISMATCH !!!«(несоответствие версий), это означает, что вам необходимо обновить прошивку модуля TX.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Как прошить или обновить модуль и приемник ExpressLRS

Существует несколько способов прошивки ExpressLRS в модулях TX (передатчик) и RX (приемники). Это зависит от оборудования, которое вы используете и его возможностей — есть ли у него USB-разъем, есть ли чип WiFi ESP32 и так далее.

  • Для модуля TX (передатчик) доступны методы по WiFi и через UART.
  • Для модулей RX (приемники) доступны методы через BF, по WiFi и через UART.

Если TX или RX имеет на борту чип ESP, то доступно обновление по WiFi. Если модуль TX имеет разъем USB, тогда доступен метод обновления UART. Любой приемник может быть обновлен с помощью последовательной передачи BF или метода обновления UART.

Список возможных методов прошивки для каждого оборудования можно посмотреть здесь: https://github.com/ExpressLRS/ExpressLRS/wiki/Flashing-ExpressLRS

Для прошивки модуля TX или RX вам необходимо подготовить (скомпилировать) прошивку.

Подготовка (компиляция) прошивки ExpressLRS

Шаг 1. Загрузите и установите конфигуратор.

Скачать конфигуратор можно отсюда:  https://github.com/ExpressLRS/ExpressLRS-Configurator/releases

Шаг 2. Запустите конфигуратор и выберите версию прошивки. Дополнение «RC» к номеру выпуска означает, что это версия Release Candidate. То есть, кандидат в релиз и такую версию не рекомендуется устанавливать, так как возможны ошибки в работе. Лучше использовать стабильные версии, такие как «1.0.0» и выше.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Следующие инструкции сделаны для обновления модулей радиопередатчиков Happymodel ES24TX и приемников EP1 / EP2. Инструкции аналогичны для других модулей ExpressLRS TX и RX, которые уже есть на рынке.

Компиляция прошивки модуля передатчика (TX)

Шаг 1. Выберите свое название оборудования с типом обновления, версию прошивки и скачайте скрипт LUA:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 2. После того, как устройство выбрано, вам нужно установить параметры устройства, относящиеся к выбранному оборудованию:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Расшифровка параметров:

  • USE_500HZ — включает скорость обновления 500 Гц  (эта опция удалена в поздних версиях)
  • HYBRID_SWITCHES_8 — разрешает использование 3 и 6-позиционных переключателей (по умолчанию ExpressLRS передает только двухсторонние (On-Off) переключатели в данных канала).
  • ENABLE_TELEMETRY — включает дополнительную телеметрию, такую ​​как напряжение аккумулятора, ток, данные GPS , режим полета (базовая телеметрия, такая как RSSI, качество связи, передается всегда)

Шаг 3. После того, как все настроено, нажмите кнопку BUILD:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 4. По окончании компиляции Конфигуратор откроет папку с скомпилированным файлом firmware.bin:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Прошивка / обновление ExpressLRS TX через Wi-Fi

Обновление через WiFi самый удобный способ прошивки и обновления.

Шаг 1. Сначала вам нужно перевести передатчик в режим обновления WiFi. Перейдите к скрипту ELRS Lua на передатчике, долго зажав SYS (кнопка системных настроек).

Шаг 2. Затем подключитесь к сети Wi-Fi под названием «ExpressLRS TX Module«. Пароль сети Wi-Fi — «expresslrs«. Не путайте с сетью Wi-Fi «ESP WiFiManager» — это чип ESP, создающий свою сеть точек доступа и в настоящее время (начиная с версии прошивки 1.0) не используется. Подробнее об этой сети ниже в примечаниях.

Шаг 3. После подключения к сети «ExpressLRS TX Module«, откройте в браузере адрес: http://10.0.0.1

Вы увидите экран приветствия:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 4. Прокрутите страницу вниз, выберите скомпилированный файл прошивки firmware.bin, нажав кнопку «Choose file«. Нажмите кнопку «Update«, чтобы начать процесс обновления.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 5. После этого дождитесь, когда страница начнет перенаправлять на http://10.0.0.1/update.

Тут нужно ждать. Браузер будет ругаться подобной страницей, но нужно подождать еще немного:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Прошивка / обновление ExpressLRS TX через UART

Если вы выбрали прошивку через «_via_UART», то можете сразу нажать кнопку [ BUILD & FLASH ], чтобы собрать и прошить модуль. Перед этим шагом модуль передатчика должен быть подключен к ПК через USB-кабель.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Конфигуратор соберет прошивку, а затем автоматически обнаружит последовательный порт, модуль передатчика должен быть подключен. Как только все будет собрано и порт обнаружен, начнется автоматическая прошивка.

Если сборка и прошивка прошли успешно, вы увидите это:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Если конфигуратор не «увидит» модуль, то будет такая ошибка:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Для исправления проверьте подключение, а затем в ручную выберите нужный порт. Чтобы узнать какой назначен порт, откройте Диспетчер устройств и найдите подключенное устройство:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Выбрать порт нужно в самом низу программы:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Компиляция (сборка) прошивки приемника (RX) ExpressLRS

Шаг 1. Здесь все аналогично. Выбираем свой приемник и тип прошивки:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 2. После выбора устройства, нужно включить такие настройки:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Расшифровка значений:

USE_500HZ — включает скорость обновления 500 Гц  (эта опция удалена в более поздних версиях)

HYBRID_SWITCHES_8 — включает использование 3 и 6-позиционных переключателей (по умолчанию система передает только двухсторонние (On-Off) переключатели в данных канала).

ENABLE_TELEMETRY — включает дополнительную телеметрию, такую ​​как напряжение аккумулятора, ток, данные GPS, режим полета (базовая телеметрия, такая как RSSI, качество связи, передается всегда)

AUTO_WIFI_ON_INTERVAL — включает автоматический запуск обновления WiFi при запуске. Значение тайм-аута можно настроить (по умолчанию 40 секунд).

Прошивка / обновление ExpressLRS RX (приемник) через Wi-Fi

Обновление приемника через Wi-Fi все также самый удобный способ.

Шаг 1. Сначала нужно перевести приемник в режим обновления WiFi. Для этого необходимо включить приемник без включения аппаратуры. Приемник перейдет в автоматический режим обновления через 40 секунд (настраивается в строке AUTO_WIFI_ON_INTERVAL).

Шаг 2. Затем подключитесь к сети Wi-Fi под названием «ExpressLRS RX Module«. Пароль сети Wi-Fi — «expresslrs».

Шаг 3. После подключения к сети «ExpressLRS RX Module«, откройте в браузере адрес: http://10.0.0.1

Вы увидите экран приветствия на странице обновления ExpressLRS WiFi:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 4. Прокрутите страницу вниз, выберите скомпилированный файл прошивки firmware.bin, нажав кнопку «Choose file«. Нажмите кнопку «Update«, чтобы начать процесс обновления.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Шаг 5. После этого дождитесь, когда страница начнет перенаправлять на http://10.0.0.1/update.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Прошивка / обновление приемника ExpressLRS через Betaflight Passthaught

Если вы выбрали прошивку » _via_BetaflightPassthaught», то вы можете сразу нажать кнопку [ BUILD & FLASH ], чтобы собрать прошивку и прошить приемник. Перед этим приемник должен быть подключен к полетному контроллеру, а полетный контроллер должен быть подключен к ПК через USB-кабель.

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

После этого начнется процедура сборки прошивки, поиска порта полетного контроллера и перевода его в режим Betaflight Passthrough. 

Если все пройдет удачно, будет знакомое окно:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Как привязать приемник ExpressLRS

Приемники можно связать двумя способами — автоматически при использовании одной и той же фразы связывания или обычным способом, переведя TX (передатчик) и RX (приемник) в режим связывания.

Приемник автоматически связывается с модулем передатчика, если оба модуля TX и RX прошиты с одной и той же фразой привязки. Можно задать свою фразу в конфигураторе, об этом в начале руководства.

Вам необходимо скомпилировать и обновить прошивку для TX и RX с одной и той же связывающей фразой. Не нужно использовать опцию привязки в сценарии Lua ELRS, TX и RX должны связываться автоматически.

В качестве альтернативы вы можете привязать любой приемник ExpressLRS к любому передатчику ExpressLRS, переведя оба устройства в режим привязки.

Для этого нужно включить и выключить приемник 3 раза и он перейдет в режим привязки.

Модуль передатчика можно перевести в режим привязки, выбрав опцию [Bind] в скрипте ERLS Lua.

На некоторых передатчиках есть кнопка Bind, что упрощает перевод в нужный режим.

Как подключить приемник ExpressLRS к полетному контроллеру

Эти приемники используют протокол CRSF для обмена данными с полетным контроллером.

Поэтому приемники должны подключаться так же, как приемники TBS Crossfire.

Любая схема подключения приемника Crossfire подходит и для приемника ExpressLRS. Более того, приемники эти имеют ту же распиновку, что и приемники TBS Crossfire Nano, поэтому их можно напрямую установить (припаять) на плату ПК или платы адаптера, как и у TBS Crossfire Nano RX.

Общая схема для подключения приемника:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Как настроить приемник ExpressLRS в Betaflight

Тут тоже все просто, открываем Betaflight и выбираем последовательный приемник и ниже кросфайр:

ExpressLRS - передатчики и приемники: настройка, прошивка и обновление

Заключение

Ответим на частые вопросы

Сергей
Сергей
Пилот как съемочного, так и гоночного квадрокоптеров
Вопрос эксперту
Как правильно включать оборудование?
Сергей
Первым всегда включайте передатчик (аппаратуру управления) и только потом приемник (дрон).

Если сделать наоборот и замешкаться, приемник может перейти в режим обновления по WiFi. Можно конечно увеличить время с 40 секунд на большее и тогда проблемы не будет.
Почему так важно использовать AUX1 для снятия с охраны? (арминг)
Сергей
Когда опция HYBRID_SWITCHES_8 включена, то пакеты отправляются только по каналу AUX1.

Использование AUX1 для постановки на охрану обеспечивает максимально быструю отправку команды снятия с охраны. AUX1 - это просто канал AUX с наименьшей задержкой в ExpressLRS.

Если вы не используете HYBRID_SWITCHES_8, то вы можете использовать любой канал для ARM / DISARM. Но, все каналы будут только 2-позиционными.
CRSFShot или Sync Pulses?
Сергей
CRSFShot - это то, что ExpressLRS использует для повышения скорости.

CRSFShot снижает задержку до 25%, а также снижает переменную задержку на 95%.

На самом деле вы можете увидеть, что CRSFShot называется по-разному.

OpenTX называет это "Sync Pulses", а поддержка начинается с OpenTX версии 2.3.12.

CRSFShot также может называться как "Mixersync".
Понравилась статья? Поделиться с друзьями:
Все о квадрокоптерах | PROFPV.RU
Комментарии: 15
  1. Андрей

    Прошил передатчик и 2 приемника нужными!!! прошивками, версией 3.10 телеметрию показывает, но стики не шевелятся. На приемнике вспышка стветодиода 3 раза. В настройках приемников стоит порт -сериал, режим — CROSF для BF приемников -2 шт betafpv и happymodel. По описаниям мануала 3 — вспышки — НЕ соответствующая прошивка модуля. На версии 3.0.0 вроде все модули работали. Теперь осталось попробовать откатить назад. Перепрошивал по WI-FI и через FDTI результат одинаков. Номера версий прошивок ПРД и Приемников совпадаю по странице http:// 10.0.0.1 скрипт Lua3. заменил то — же. Но самое интересное, что 3 приемник марки betafpv пашет!!))) Есть вариант поменять порты UART на FC. :cry:

  2. Евгений

    Подскажите что выбрать хочу взять аппу радиомастер tx16s варианты мульти и ELRS в наличии есть уже есть кросфайр приемник передатчик.

    1. Денис

      Берите ERLS, multi не актуален. Отвечу на любые вопросы в телеге @ch347

  3. Murat

    Подскажите пожалуйста, что можно сделать с ep1 который ровно горит зеленым, при подключении к GEP-f411-35a AIO и не хочет включать режим вайфай для прошивки.
    Подключил через gnd к gnd, 5v на 5v, tx на r2, rx на t2(как при подключении TBS nanoRX).
    Застрял на данном этапе. :cry:

    1. Евгений

      Такая же проблема ,в чате рекомендуют прошивать через UART преобразователь! Буду пробовать, если получится — расскажу как.

    2. Артем

      Добрый день, решили ли вы проблему ? У меня тоже горит зелёный раз в 4 секунды. Нет вай Фая. Не знаю что делать((

    3. First4FPV

      Такая же проблема была на таком же железе. Решил подключить по кабелю и прошить через пилотник. В результате приёмник перешёл в нужный режим (длинные вспышки индикатора раз в секунду, а через 20-30 секунд быстро заморгал индикатор и в списке Wi-Fi сетей появился EspressLRS RX). При подключении питания через батарейку только горел зелёный индикатор.

    4. First4FPV

      Напиши в техподдержку GEPRC, оперативно скинут инструкцию: перевесить RX модуль надо на RX1, TX1 (у меня по-умолчанию там сидела камера). Все завелось!👌

  4. ceргей

    Спасибо, доходчиво.
    У меня вопросик по EPW5, та которая с PWM.
    У нее прошивка по умолчанию 2.0.
    Скрипт для нее elrsV2.lua из конфигуратора (для прошивок после версии 2.0) вообще не работает на передатчике TX16S виснет при запуске, висит «Loading ???????» в верхней строчке.
    Скрипт ELRS.lua тоже из конфигуратора, но для прошивок 1.х работает нормально, но не биндится с EPW5.
    Прошил EPW5 прошивкой 1.2. для EP RX.
    Забиндился нормально, но протокол приемника — CRSF. А мне то нужен PWM.
    Как с ней обходиться?

    1. ceргей

      Убил день но разобрался. Инструкция чтобы дни жили:smile:: если понадобится прошить Happymodel EPW5 :
      Замыкаем минус и выход1.
      Присоединяем к переходнику USB-UART(напр FTDI232, или можно прямо через полетный контроллер). выход 2 TX -> на RX переходника; выход 3 RX -> на TX переходника.
      Включаем, диод должен гореть постоянно.
      В ExpressLRS Configurator выбираем прошивку 2.0; Device category — DIV 2.4 GHZ; Device — DIY 2400 RX PWMP ; Flashing method — UART. Через Wifi у меня не залилось.
      Нажимаем BUILD&FLASH. Надо, чтобы комп был в интернете для подкачки модулей.
      После заливки передергиваем питание, ждем минуту до быстрого моргания, заходим через wifi на страницу, прокручиваем вниз настраиваем PWM Output по желанию ( у меня 1500, 1500, 988, 1500, 1500 без инверсий) и жмем Set PWM Output.
      Биндим как обычно
      Всё.

      1. profpv (автор)

        Спасибо за такой полезный комментарий, думаю он многим поможет!)

        1. Денис

          Добрый день, передатчик подключён, телеметрия пульт говорит есть, а стики на пульте не работают, в чем может быть проблема?

  5. Олег

    Как привязать BETAFPV ELRS Micro TX к BETAFPV 65s Lite по протоколу Bayang???

    1. profpv (автор)

      А зачем вам именно этот странный протокол? — Bayang
      У вашего дрона доступны приемники Frsky, DSMX, Flysky, Futaba S-FHSS и там вроде нет такого. Поэтому и аппаратуру свою тоже никак не сможете привязать, так как она использует протокол ELRS, а в приведенном списке ничего его не поддерживает.

  6. Alex

    Спасибо за проделанную работу/статью!
    Обновил передатчик и ресивер, всё работает, только дальность очень маленькая, игрался с выходной мощностью,plt rate и tlm ratio но не получил результата дальше 500-700м.
    Передатчик FCC, нахожусь в России
    Куда копать, в чем может быть дело?

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Как правильно включать оборудование?
Первым всегда включайте передатчик (аппаратуру управления) и только потом приемник (дрон).

Если сделать наоборот и замешкаться, приемник может перейти в режим обновления по WiFi. Можно конечно увеличить время с 40 секунд на большее и тогда проблемы не будет.
Почему так важно использовать AUX1 для снятия с охраны? (арминг)
Когда опция HYBRID_SWITCHES_8 включена, то пакеты отправляются только по каналу AUX1.

Использование AUX1 для постановки на охрану обеспечивает максимально быструю отправку команды снятия с охраны. AUX1 - это просто канал AUX с наименьшей задержкой в ExpressLRS.

Если вы не используете HYBRID_SWITCHES_8, то вы можете использовать любой канал для ARM / DISARM. Но, все каналы будут только 2-позиционными.
CRSFShot или Sync Pulses?
CRSFShot - это то, что ExpressLRS использует для повышения скорости.

CRSFShot снижает задержку до 25%, а также снижает переменную задержку на 95%.

На самом деле вы можете увидеть, что CRSFShot называется по-разному.

OpenTX называет это "Sync Pulses", а поддержка начинается с OpenTX версии 2.3.12.

CRSFShot также может называться как "Mixersync".