首页 > 其他分享 >Open FPV VTX开源之嵌入式OSD配置

Open FPV VTX开源之嵌入式OSD配置

时间:2025-01-15 16:28:00浏览次数:3  
标签:-- telemetry etc FPV conf VTX Open OSD

Open FPV VTX开源之嵌入式OSD配置

1. 源由

穿越机模拟图传延迟通常在10ms左右。

最近为什么OpenIPC这么热,主要原因就是该项目性能已经提高到35ms左右。

当然,要达到这个要求,并非简单的一个摄像头,还需要地面端(解码)、高刷率屏幕的支持。

打个比方:

  • 如果屏幕刷新率只有30FPS,1000ms/30FPS = 33.33ms/frame
  • 即使编码、解码、传输都完成了,时间上错过刷新周期,那么就是妥妥要额外在延迟33.33ms了

嵌入式OSD是飞控MCU通过SPI控制MAX7456芯片在图像上直接绘制,大致流程如下:

Analog Camera ----> MAX 7456 chip ----> Analog VTX ----> Antenna(Wireless) ----> RF Receiver(RX5808) ----> Goggles(Fat Shark)
                          ^
                          | SPI
                          |
                   Flight Controller

当前Open FPV VTX并不是嵌入式OSD配置交付。因此产品到手后需要做一个简单配置。

IMX335/415 Camera -- MIPI --> SSC30kq/SSC338q chip -- USB --> 8812AU/EU Tx ----> Antenna(Wireless) ----> 8812AU/EU Rx -- USB --> Ground Startion
                                     ^
                                     | UART
                                     |
                              Flight Controller

2. 安装

通常情况下,嵌入式OSD软件msposd已经安装,因此无需手动安装。

注:如果您的固件没有上述软件,请更新到最新的固件,参考:《OpenIPC开源FPV之固件sysupgrade升级》

 /
 ├──> /usr/bin/
 │   ├──> msposd
 │   └──> safeboot.sh
 ├──> /etc/vtxmenu.ini
 └──> /usr/share/fonts/
     ├──> font_ardu.png
     ├──> font_ardu_hd.png
     ├──> font_btfl.png
     ├──> font_btfl_hd.png
     ├──> font_inav.png
     ├──> font_inav_hd.png
     └──> truetype/UbuntuMono-Regular.ttf
  • msposd帮助信息:
# msposd --help
Ver: 861a97c Compiled at: 20241130_234711
Usage: msposd [OPTIONS]
Where:
        -m --master      Serial port to receive MSP (/dev/ttyAMA0 by default)
        -b --baudrate    Serial port baudrate (115200 by default)
        -o --output              UDP endpoint to forward aggregated MSP messages ()
        -c --channels    RC Channel to listen for commands (0 by default) and exec channels.sh. This command can be repeated. Channel values are 1-based.
        -w --wait        Delay after each command received(2000ms default)
        -r --fps         Max MSP Display refresh rate(5..50)
        -p --persist     How long a channel value must persist to generate a command - for multiposition switches (0ms default)
        -t --temp        Read SoC temperature
        -d --wfb         Monitors wfb.log file and reports errors via HUD messages
        -s --osd         Parse MSP and draw OSD over the video
        -a --ahi         Draw graphic AHI, mode [0-No, 2-Simple 1-Ladder, 3-LadderEx]
        -x --matrix      OSD matrix (0 - 53:20 , 1- 50:18 chars)
           --mspvtx      Enable mspvtx support
        -v --verbose     Show debug infot
        --help           Display this help

3. 配置

先把配置的改动放在这里,以diff方式给出:仅修改了router=0

# diff -Nr telemetry.conf.bak /etc/telemetry.conf
--- telemetry.conf.bak
+++ /etc/telemetry.conf
@@ -5,7 +5,7 @@
 baud=115200

 ### router: use simple mavfwd (0), classic mavlink-routerd (1) or msposd instead of mavfwd (2)
-router=0
+router=2

 wlan=wlan0
 bandwidth=20

首先,通过ssh方式登录系统

步骤一:备份/etc/telemetry.conf

$ cp /etc/telemetry.conf /root/telemetry.conf.bak

步骤二:修改/etc/telemetry.conf

$ vi /etc/telemetry.conf
$ diff -uN /root/telemetry.conf.bak /etc/telemetry.conf
--- /root/telemetry.conf.bak
+++ /etc/telemetry.conf
@@ -5,7 +5,7 @@
 baud=115200

 ### router: use simple mavfwd (0), classic mavlink-routerd (1) or msposd instead of mavfwd (2)
-router=0
+router=2

 wlan=wlan0
 bandwidth=20

在这里插入图片描述

步骤三:配置时区

$ sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

注1:不同时区的朋友,请根据自己所在时区进行设置。
注2:时区的目的是为了自定义OSD输出,详见:libcamera_mon 开源代码之树莓派3B+ Bookworm部署

步骤四:重启摄像头

$ reboot

此时,mavfwd 将不会启动,取代它的是msposd进程,该进程就是嵌入式OSD软件。

4. 实测

当飞控串口没有配置OSD协议的时候(或者默认MAVLink时),将会显示"Identifying Flight Controller …"

在这里插入图片描述

接下去将在各种飞控地面站上进行嵌入式OSD协议配置,详见以下介绍:

5. 参考资料

【1】Open FPV VTX开源之硬件规格及组成
【2】Open FPV VTX开源之第一次出图
【3】Open FPV VTX开源之默认MAVLink设置
【4】Open FPV VTX开源之图像化配置工具

标签:--,telemetry,etc,FPV,conf,VTX,Open,OSD
From: https://blog.csdn.net/lida2003/article/details/145118339

相关文章

  • 划重点:OpenAI o1/o3的正确打开方式
    苹果&SpaceX前工程师BenHylak订阅 200美元/月的o1pro后,经过一天的认真尝试,发现它很差劲: 1、每次我问一个问题,都要等5分钟;2、结果看到的只是一大堆自相矛盾的官样文章;3、还有未经请求的架构图+优缺点列表。是o1真的不行吗?还是使用方式不对?重点来了,OpenAICEO山姆......
  • 开发环境的openGauss搭建
    一、搭建准备1、准备用户创建个人账号。useradd-d/home/xxx-mxxx设置密码。passwdxxx切换到个人账号su-xxx2、下载源码mkdirxxxcdxxxgitclonehttps://gitee.com/opengauss/openGauss-server.gitgitclonehttps://gitee.com/opengauss/open......
  • OpenCV相机标定与3D重建(58)用于精细化优化由 cv::solvePnP 或 cv::solvePnPRansac 等
    操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:C++11算法描述从3D-2D点对应关系出发,并基于一个初始解,精细化姿态(将物体坐标系中的3D点变换到相机坐标系的旋转和平移)。cv::solvePnPRefineVVS是OpenCV中用于精细化优化由cv::solvePnP或c......
  • OpenCV相机标定与3D重建(57)精细化优化由 cv::solvePnP 或 cv::solvePnPRansac 等函数
    操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:C++11算法描述从3D-2D点对应关系出发,并基于一个初始解,精细化姿态(将物体坐标系中的3D点变换到相机坐标系的旋转和平移。cv::solvePnPRefineLM是OpenCV中用于精细化优化由cv::solvePnP或cv......
  • NLP论文速读(ICML 2024)|通过人的反馈实现质量多样性(Quality Diversity through Human F
    论文速读|QualityDiversitythroughHumanFeedback:TowardsOpen-EndedDiversity-DrivenOptimization论文信息:简介:   本文的背景主要涉及两个领域:强化学习从人类反馈(ReinforcementLearningfromHumanFeedback,RLHF)和质量多样性(QualityDiversity,QD)算法......
  • OpenGL中Shader LOD失效
    1)OpenGL中ShaderLOD失效2)DoTween的GC优化3)开发微信小程序游戏有没有类似Debug真机图形的方法4)射线和Mesh三角面碰撞检测的算法这是第418篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。UWA社区主页:community......
  • Datawhale 组队学习wow-agenttask01 openai库搭建Al Agent
    Datawhale组队学习wow-agentDatawhale项目链接:https://www.datawhale.cn/learn/summary/86笔记作者:博客园-岁月月宝贝......
  • 深入浅出:Agent如何调用工具——从OpenAI Function Call到CrewAI框架
    深入浅出:Agent如何调用工具——从OpenAIFunctionCall到CrewAI框架嗨,大家好!作为一个喜欢折腾AI新技术的算法攻城狮,最近又学习了一些Agent工作流调用工具的文章,学完之后,我真的是“啊这”,一边感慨AI技术的强大,一边觉得自己打开了新世界的大门。于是,我决定写这篇博客,把我的学习心得......
  • 深圳大学-计算机图形学-实验一OpenGL基本绘制
    实验目的与要求掌握VisualStudioCommunity2019集成开发环境的安装;掌握CMake跨平台构建工具的安装;掌握Git版本控制工具的安装;掌握vcpkg库管理工具的安装;掌握系统环境变量的设置;了解和掌握OpenGL的环境配置;掌握OpenGL工程项目的建立和基本设置。理解OpenGL的原理;了解和熟......
  • k8s OpenLocal存储
    参考项目https://github.com/alibaba/open-localv0.7.1NodeLocalStorage定义NodeLocalStoragecr表示每个k8s节点本地存储资源信息。controller创建后由节点上agent更新status,从而维护存储信息。apiVersion:csi.aliyun.com/v1alpha1kind:NodeLocalStoragespec:nodeName......