Update fpv.md

pull/64/head
RD000000 2022-12-13 16:59:27 +03:00 committed by GitHub
parent 42b0e50802
commit 0143a175ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 13 additions and 17 deletions

View File

@ -114,7 +114,7 @@ sudo iwconfig wlan0 channel 14
sudo ip link set wlan0 up
```
* Убедитесь, что на камере и десктопе на WiFi адаптерах установлена одинаковая частота через команду `iwconfig`, при необходимости смените частоту через редактирование конфига `/etc/wfb.conf` на камере (параметр `channel`) или командой `sudo iwconfig <имя_адаптера> channel <номер>` на десктопе.
* Скомпилируйте из исходного кода [WFB-ng](https://github.com/svpcom/wifibroadcast), __обязательно используйте бранч stable__, скопируйте ключ `gs.key` с IP-камеры и запустите прием `sudo ./wfb_rx -p 0 -u 5600 -K -i 7669206 gs.key wlan0`
* Скомпилируйте из исходного кода [WFB-ng](https://github.com/svpcom/wifibroadcast), __обязательно используйте бранч stable__, скопируйте ключ `./etс/gs.key` с IP-камеры на десктоп и запустите прием `sudo ./wfb_rx -p 0 -u 5600 -K -i 7669206 gs.key wlan0`
* Проверьте, что в консоли вывод
```
32168228 PKT 0:0:0:0:0:0
@ -146,40 +146,36 @@ sudo ip link set wlan0 up
sudo systemctl restart wifibroadcast@gs
wfb-cli gs
```
* Убедитесь, что идут пакеты видео. Здесь же можно видеть значения RSSI антенн WiFi адаптера:
![wfb-cli-video](../images/wfb-cli_video_only.png)
* Настройте полетный контроллер под ArduPilot на выдачу телеметрии в формате mavlink1 на скорости 115200 на, например, порту Serial1. В случае односторонней телеметрии (только вниз) убедитесь, что ПК выдает требуемый телеметрический поток по умолчанию, без соединения с наземной станцией. Это выполняется через установку параметров SR1_xxx, см. [mavlink SR_ parameters](https://ardupilot.org/dev/docs/mavlink-requesting-data.html).
* Соедините Serial1 ПК c UART камеры, rx на tx, tx на rx. В случае современных ПК на STM32F4/7 уровни напряжения совпадают (3.3В), в случае 5В APM потребуется преобразование уровней. Тонкость - бутлоадер камеры на загрузке останавливается, получив на вход UART любые байты. ПК должен начать выдавать телеметрию c задержкой на несколько секунд, через установку параметра TELEM_DELAY. На столе проще предусмотреть разрыв в линии от ПК к камере.
* На камере в файле /etc/wfb.conf установите параметр `telemetry=true` , в файле /etc/telemetry.conf - параметр `one_way=true/false` для односторонней или двустронней телеметрии соответственно. Простейший способ правки файлов на камере - Shell Link в Midnight Commander:
Если значение recv остается нулем, а значение lost растет - скорее всего, не совпадают ключи камеры и наземной станции. Убедитесь, что /etc/gs.key скопирован на наземную станцию. Если никаких пакетов нет - убедитесь, что 'channel=xx' в /etc/wfb.conf на камере и 'wifi_channel=xx' в /etc/wifibroadcast.cfg на земле имеют одинаковые значения. Для диапазона 5.8 ГГц адаптера RTL8812AU рекомендуется использовать каналы 60 и выше.
* Настройте полетный контроллер под ArduPilot на выдачу телеметрии в формате mavlink1 на скорости 115200 на, например, порту Serial1. В случае односторонней телеметрии (только вниз) убедитесь, что ПК выдает требуемый телеметрический поток по умолчанию, без соединения с наземной станцией. Это выполняется через установку параметров SR1_xxx, см. [mavlink SR_ parameters](https://ardupilot.org/dev/docs/mavlink-requesting-data.html).
* Соедините Serial1 ПК c UART камеры, rx на tx, tx на rx. В случае современных ПК на STM32F4/7 уровни напряжения совпадают (3.3В), в случае 5В APM потребуется преобразование уровней. Тонкость - загрузчик U-Boot камеры на загрузке останавливается, получив на вход UART любые байты. ПК должен начать выдавать телеметрию c задержкой на несколько секунд, через установку параметра TELEM_DELAY. На столе проще предусмотреть разрыв в линии от ПК к камере.
* На камере в файле /etc/wfb.conf установите параметр `telemetry=true` , в файле /etc/telemetry.conf - параметр `one_way=true` для односторонней или `one_way=false` для двустронней телеметрии соответственно. Простейший способ правки файлов на камере - Shell Link в Midnight Commander:
*
![mc_shell_link](../images/MC_shell_link.png)
* На машине в файле wifibroadcast.cfg отредактируйте секцию
```
[gs_mavlink]
stream_tx = 0x90 # radio port for mavlink tx
stream_rx = 0x10 # radio port for mavlink rx
peer = 'connect://127.0.0.1:14550' # outgoing connection
```
* Перезапустите камеру и сервис wfb-ng. В wfb-cli должен появиться второй поток данных - телеметрия:
![wfb-cli-video-telem](../images/wfb-cli_video_telem.png)
* Установите QGroundControl. Здесь используется версия 4.0.11 из-за некорректной работы последних версий с видео в 18.04 LTS. Новые Comm Links создавать не нужно. QGC должен увидеть соединение с ПК, отображать входной поток телеметрии, в случае двусторонней - загрузить параметры и позволять переключать полетные режимы:
* Установите QGroundControl. Здесь используется версия 4.0.11 из-за некорректной работы последних версий с видео в 18.04 LTS. Новые Comm Links создавать не нужно. QGC должен увидеть соединение с ПК и отображать входной поток телеметрии:
![QGC-map](../images/QGC_telem.png)
![QGC-mavlink](../images/QGC_mavlink.png)
В случае двусторонней телеметрии QGC должен загрузить параметры, позволять их менять, позволять переключать полетные режимы, загружать и выгружать миссии:
![QGC-params](../images/QGC_params.png)
![QGC-mission](../images/QGC_mission.png)
Видно, что QGS также уже отображает видео. Задержка в 4.0.11 довольно значительна из-за чисто программной обработки потока, разумно пробовать современные версии под Ubuntu 20.04 и новее.
В текущей версии OpenIPC-FPV не будет работать Mission Upload/Download. Причины известны, исправление появится в следующих версиях.
### Траблшутинг
* Через команду `sudo tcpdump -i wlan0` на десктопе без запуска WFG-ng вы можете проверить, что передатчик действительно отправляет пакеты в эфир: