Update fpv.md

pull/60/head
Dmitry Ilyin 2022-10-24 12:49:51 +03:00 committed by GitHub
parent f5482cb70c
commit 8564747fcd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 11 deletions

View File

@ -12,7 +12,7 @@
Иногда MIPI- или USB- камера меняется на IP-камеру, которая и мощнее (имеет свой собственный аппаратный энкодер) и стоит дешевле при аналогичных характеристиках. Большинство современных видеокамер являются типовыми embedded устройствами с Linux на борту (но значительно скромнее в размерах RAM и флеш памяти по сравнению с Raspberry и Jetson), что позволяет перекомпилировать и запускать на них практически любое переносимое ПО. Иногда MIPI- или USB- камера меняется на IP-камеру, которая и мощнее (имеет свой собственный аппаратный энкодер) и стоит дешевле при аналогичных характеристиках. Большинство современных видеокамер являются типовыми embedded устройствами с Linux на борту (но значительно скромнее в размерах RAM и флеш памяти по сравнению с Raspberry и Jetson), что позволяет перекомпилировать и запускать на них практически любое переносимое ПО.
В процессе работы с данной технологией возникла идея об упрощении полетной системы и переноса всего необходимого ПО непосредственно на IP-камеру. Технически FPV прошивка проекта OpenIPC представляет собой специальную сборку с двумя типами драйверов популярных WiFi адаптеров, стримера Majestic (который выполняет роль GStreamer в классической схеме на системе-передатчике) и [WFB-ng](https://github.com/svpcom/wifibroadcast). К сожалению, из-за значительного размера бинарного кода WiFi драйверов и зависимости в виде libstd++ (часть WFB-ng написана на C++), минимальные требования к системе увеличились до 16 мегабайт флеш памяти. В процессе работы с данной технологией возникла идея об упрощении полетной системы и переноса всего необходимого ПО непосредственно на IP-камеру. Технически FPV прошивка проекта OpenIPC представляет собой специальную сборку с двумя типами драйверов популярных WiFi адаптеров, стримера Majestic (который выполняет роль GStreamer в классической схеме на системе-передатчике) и [WFB-ng](https://github.com/svpcom/wifibroadcast). К сожалению, из-за значительного размера бинарного кода WiFi драйверов и зависимости в виде libstd++ (часть WFB-ng написана на C++), минимальные требования к системе на ряде плат увеличились до 16 мегабайт флеш памяти.
### Преимущества ### Преимущества
@ -36,7 +36,7 @@
В дальнейшем объектив можно поменять на другой с такой же резьбой, либо сразу купить несколько моделей на выбор (стандартом в мире видеонаблюдения считается 3.6мм). В дальнейшем объектив можно поменять на другой с такой же резьбой, либо сразу купить несколько моделей на выбор (стандартом в мире видеонаблюдения считается 3.6мм).
Плата IP-камеры питается от 12V (фактически достаточно 5V, если не использовать ее как видеокамеру вместе с подсветкой) и для начальных тестов желательно взять сразу совмещенный кабель питание-Ethernet, который бывает двух типов: 12V с подключением [блока питания через джек](https://aliexpress.com/item/32961238897.html) и активный PoE 48V (выбирайте в зависимости от возможностей вашего сетевого коммутатора). Плата IP-камеры питается от 12V (фактически достаточно 5V, если не использовать ее как видеокамеру вместе с подсветкой) и для начальных тестов желательно взять сразу совмещенный кабель питание-Ethernet, который бывает двух типов: 12V с подключением [блока питания через джек](https://aliexpress.com/item/32961238897.html) и активный PoE 48V (выбирайте в зависимости от возможностей вашего сетевого коммутатора).
* WiFi адаптер. В настоящий момент FPV прошивка поддерживает два типа драйверов для чипов RT8812au и AR9271 (но в принципе никто не мешает добавить другие адаптеры). Крайне рекомендуется с обоих сторон линка использовать одинаковые адаптеры (более того, брать их из одной партии парами) и использовать только 5GHz частоты с связи с полной перегрузкой 2.4GHz. Прошивка протестирована с двумя адаптерами на [RT8812au](https://aliexpress.ru/item/32664378094.html) и [AR9271](https://aliexpress.co/item/32884675724.html) (поддерживается только 2.4GHz). * WiFi адаптер. В настоящий момент FPV прошивка поддерживает два типа драйверов для чипов RT8812au и AR9271 (но в принципе никто не мешает добавить другие адаптеры). Крайне рекомендуется с обоих сторон линка использовать одинаковые адаптеры (более того, брать их из одной партии парами) и использовать только 5GHz частоты с связи с полной перегрузкой 2.4GHz. Прошивка протестирована с двумя адаптерами на [RT8812au](https://aliexpress.ru/item/32664378094.html) и [AR9271](https://aliexpress.co/item/32884675724.html) (чип работает только с 2.4GHz).
* Микросхема SPI NOR флеш памяти от 16 мегабайт и выше на замену стандартной 8 мегабайтовой. Рекомендуем [W25Q128FVIQ](https://www.aliexpress.com/item/1005003093500630.html) или [любую другую](https://www.winbond.com/hq/product/code-storage-flash-memory/serial-nor-flash/?__locale=en&selected=128Mb#Density) совместимую с прошивкой (новые модули также могут быть добавлены в проект по ID микросхемы). Обратите внимание, что на рынке представлено очень много подделок под Winbond и необходимо тщательно выбирать продавца. * Микросхема SPI NOR флеш памяти от 16 мегабайт и выше на замену стандартной 8 мегабайтовой. Рекомендуем [W25Q128FVIQ](https://www.aliexpress.com/item/1005003093500630.html) или [любую другую](https://www.winbond.com/hq/product/code-storage-flash-memory/serial-nor-flash/?__locale=en&selected=128Mb#Density) совместимую с прошивкой (новые модули также могут быть добавлены в проект по ID микросхемы). Обратите внимание, что на рынке представлено очень много подделок под Winbond и необходимо тщательно выбирать продавца.
@ -65,7 +65,7 @@
<img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-imx307-uart.jpg?raw=true" alt="Logo"/> <img src="https://github.com/OpenIPC/wiki/blob/master/images/fpv-imx307-uart.jpg?raw=true" alt="Logo"/>
</p> </p>
* Подключите UART-USB адаптер к компьютеру (скорость порта 115200N1, управление потоком отключено) и проверьте, что при включении камеры идет вывод данных и вы можете прервать загрузку через `Ctrl-C` (работают обе RX и TX линии). * Подключите UART-USB адаптер к компьютеру (скорость порта 115200N1, управление потоком отключено, адаптер должен быть переведен в режим 3.3V, а не 5V) и проверьте, что при включении камеры идет вывод данных и вы можете прервать загрузку через `Ctrl-C` (работают обе RX и TX линии).
* Выключите камеру, отпаяйте оригинальную 8 мегабайтную SPI NOR флеш микросхему и сделайте на всякий случай ее дамп с помощью программатора. Отпаивать микросхему желательно [феном](https://aliexpress.com/item/32980690787.html), но если очень хочется можно воспользоваться обычным паяльником [как предлагает Alexey Tolstov](https://www.youtube.com/watch?v=M69JiBtuqq8) или [вот так](https://www.youtube.com/watch?v=dspjVDv7hck). После выпайки микросхемы площадки нужно хорошо очистить от остатков припоя куском медного кабеля. * Выключите камеру, отпаяйте оригинальную 8 мегабайтную SPI NOR флеш микросхему и сделайте на всякий случай ее дамп с помощью программатора. Отпаивать микросхему желательно [феном](https://aliexpress.com/item/32980690787.html), но если очень хочется можно воспользоваться обычным паяльником [как предлагает Alexey Tolstov](https://www.youtube.com/watch?v=M69JiBtuqq8) или [вот так](https://www.youtube.com/watch?v=dspjVDv7hck). После выпайки микросхемы площадки нужно хорошо очистить от остатков припоя куском медного кабеля.
При работе феном желательно снять объектив и изолировать остальные компоненты, особенно пластиковые разъемы [каптоновой лентой](https://aliexpress.com/item/1005003563721341.html) (на крайний случай фольгой от шоколадки). Ни в коем случае [не используйте сплав Розе](https://habr.com/ru/post/437778/). Если не очень дружите с пальником, то проще зайти в ближайший сервис по ремонту мобильных телефонов и показать мастеру часть этой инструкции. При работе феном желательно снять объектив и изолировать остальные компоненты, особенно пластиковые разъемы [каптоновой лентой](https://aliexpress.com/item/1005003563721341.html) (на крайний случай фольгой от шоколадки). Ни в коем случае [не используйте сплав Розе](https://habr.com/ru/post/437778/). Если не очень дружите с пальником, то проще зайти в ближайший сервис по ремонту мобильных телефонов и показать мастеру часть этой инструкции.
@ -83,7 +83,7 @@
# #
run uknor16m; run urnor16m run uknor16m; run urnor16m
``` ```
* После загрузки системы, проверьте, что она получила IP адрес через Ethernet (на нее можно зайти по SSH через root@IP без пароля) и камера все еще отдает видео по RTSP протоколу * После загрузки системы, проверьте, что она получила IP адрес через Ethernet (на нее можно зайти по SSH через root@IP без пароля)
* Припаяйте к USB площадкам GND, DP и DM (USB 5V питание подключать к плате не нужно из-за высокого потребления энергии адаптером), а также отдельно 5V и GND для питания WiFi адаптера (возможно через дополнительный DC-DC преобразователь в зависимости от вашей схемы). USB провод, который подходит к плате, необходимо зафиксировать стяжкой во избежание отрыва пятаков на контактной площадке: * Припаяйте к USB площадкам GND, DP и DM (USB 5V питание подключать к плате не нужно из-за высокого потребления энергии адаптером), а также отдельно 5V и GND для питания WiFi адаптера (возможно через дополнительный DC-DC преобразователь в зависимости от вашей схемы). USB провод, который подходит к плате, необходимо зафиксировать стяжкой во избежание отрыва пятаков на контактной площадке:
<p align="center"> <p align="center">
@ -92,14 +92,15 @@
</p> </p>
* Проверьте, что после загрузки через команду `lsusb` появилось новое устройство * Проверьте, что после загрузки через команду `lsusb` появилось новое устройство
* Проверьте, что команда `free -m` выдает __не менее__ 34 мегабайт системного RAM (остальное отведено под видеопамять), в противном случае вам прямо во время полета может придти OOM killer (исправляется через `fw_printenv bootargs / fw_setenv` с коррекцией osmem=40M):
```
root@openipc-gk7205v200:~# free -m
total used free shared buff/cache available
Mem: 34 21 2 0 9 9
Swap: 0 0 0
```
* В конфигурационном файле `/etc/wfb.conf` выберите установленный адаптер `rtl` (по умолчанию) или `ath` * В конфигурационном файле `/etc/wfb.conf` выберите установленный адаптер `rtl` (по умолчанию) или `ath`
* Добавьте в конфигурацинный файл `/etc/majestic.yaml` строки:
```
outgoing:
- udp://127.0.0.1:5600
```
* Перезапустите камеру * Перезапустите камеру
### Проверка работы наземной станции (на десктопе) ### Проверка работы наземной станции (на десктопе)