湖北省建设工程人力资源网站,免费门户网站制作,网站推广指的是什么,主流的网站开发技术ExpressLRS开源之接收机固件编译烧录步骤 1. 源由2. 编译步骤2.1 推荐源代码指定方案2.2 方法一#xff1a;ELRS Configurator步骤一#xff1a;下载ELRS Configurator工具步骤二#xff1a;安装ELRS Configurator工具步骤三#xff1a;使用ELRS Configurator工具进行配置步… ExpressLRS开源之接收机固件编译烧录步骤 1. 源由2. 编译步骤2.1 推荐源代码指定方案2.2 方法一ELRS Configurator步骤一下载ELRS Configurator工具步骤二安装ELRS Configurator工具步骤三使用ELRS Configurator工具进行配置步骤四设置ELRS接收机为烧录模式步骤五点击Flash烧录固件 2.3 方法二VSCode IDE步骤一安装vscode步骤二安装PlatformIO插件步骤三选择ELRS工程步骤四修改工程配置步骤五选择编译目标步骤六编译烧录固件 3. ELRS基本调试验证3.1 ID,Antenna,RSSI,LQ,SNR,PWR,FHSS,TimingOffset3.2 IRQ_CNT,RSSI_AVE,SNR_AVE,SNV_MAX,TELEM_CNT,FAIL_CNT3.3 RX Scoreboard3.4 ELRS Configurator配置界面3.5 VSCode配置界面 4. 固件烧录4.1 命令行4.2 GUI工具 5. 参考资料 1. 源由
ExpressLRS是航模上目前比较流行的开源发射机和接收机开源代码之一。
其目的旨在提供最好的完全开放、高刷新率的无线电控制链路同时以低延迟保持该速率下的最大可实现范围在900MHz和2.4GHz频率下对硬件提供大量支持。
这个也是笔者一直使用的RC控制链路。从无人机的控制电传图传以外RC链路控制是非常重要的链路。
不过这里有一个非常痛苦的事情就是编译。为什么 耗时
因此本文主要的出发点是确保操作步骤的正确性并针对常见问题进行必要且快速的解决方法。
注如果想要更加方便且快速的编译就需要了解更多关于VSCodeELRS Configurator背后整合的工具面命令将一键操作进行分解。如果有时间后续我们会进一步的分解以便这个耗时的编译烧录能最简化也许1~2分钟就可以解决问题。
2. 编译步骤
在所有编译之前首先进行源代码下载
A) Git拉取Github开源代码
$ git clone gitgithub.com:ExpressLRS/ExpressLRS.git
$ git checkout 3.x.x-maintenance //根据需要进行分支切换B) 稳定发布版本获取压缩包
$ wget https://github.com/ExpressLRS/ExpressLRS/archive/refs/tags/3.3.0.zip
$ unzip ExpressLRS-3.3.0.zip //根据需要下载对应的版本并进行解压C) 通过ELRS Configurator下载
注该方式并不推荐但这确实是一个OneButton的解决方案。 2.1 推荐源代码指定方案
因为国内网络的不稳定性采用本地代码进行编译是一个比较好的选择且大多数开发人员也经常使用的是本地代码进行开发开发完成后提交相应修改。
因此我们推荐采用LOCAL的方式进行源代码选择而非上面C)选项中的方式。 2.2 方法一ELRS Configurator
步骤一下载ELRS Configurator工具
通过ELRS Configurator配置工具发布页面寻找合适软件版本进行下载。
目前最新的版本号是1.6.0。
步骤二安装ELRS Configurator工具
ELRS Configurator工具支持较多系统比如MacOS/Linux/Windows且如果Github上无二进制用户可以根据需求直接源代码进行交叉编译不再讨论范围之内。
具体安装方式与常规软件类似Windows版本请根据安装提示完成安装。
步骤三使用ELRS Configurator工具进行配置
设备配置目前采用了一块类似BETAFPV 900的接收机硬件硬件管脚定义 2. 烧录方式采用串口直接烧录 3. 设备选项通常使用Standard mode “FCC_915”
4. 固件烧录方式 步骤四设置ELRS接收机为烧录模式
首先将ELRS接收机的Rx/Tx/GND/VCC与USB串口板连接 ELRS-Rx – USB-SerialAdapter-Tx ELRS-Tx – USB-SerialAdapter-Rx ELRS-VCC – USB-SerialAdapter-5V ELRS-GND – USB-SerialAdapter-GND 然后按住Firmware Upgrade Button按键最后同时将USB插入电脑上电时接收机将会自动进入烧录模式 步骤五点击Flash烧录固件
这里的“Flash”是一键式编译烧录从设计的角度来说是非常方便的但是从实际情况来看会出现大量的网络问题导致编译失败。
注如果出现编译失败请删除src/.pio目录重新步骤五。
2.3 方法二VSCode IDE
步骤一安装vscode
在VisualStudioCode上下载最新版本安装vscode IDE开发环境。
注Windows安装软件比较简单和直观next by next就好了。
步骤二安装PlatformIO插件
在vscode IDE环境中点击extension搜索platformio安装PlatformIO IDE插件最后将会在左侧ICON上显示PlatformIO的图标表示安装成功。
注因为ExpressLRS是使用Arduino框架用C编写的。 步骤三选择ELRS工程
在使用Visual Studio Code时在选项卡中看到PlatformIO主页。单击“打开项目”按钮。导航到ExpressLRS repo目录。导航到src文件夹即./ExpressLRS/src/。最后按下“打开”按钮。 步骤四修改工程配置
编辑文件/src/user_defines.txt来定义用户特定的变量。
步骤五选择编译目标
在左侧工具栏中单击PlatformIO图标该图标将显示任务列表。选择“编译目标” 步骤六编译烧录固件
常用的几个选项是Build/Upload/Clean/Full Clean
注如果上述方法无法解决编译时出现的错误很有可能还是网络问题导致组件下载出现异常请删除src/.pio目录重新步骤六。 3. ELRS基本调试验证
ELRS基本调试验证主要侧重硬件方面的信号数据指标。通过固件配置参数的调整获取相关硬件性能的参数。
基础参数如下 -DMY_BINDING_PHRASE“” -DAUTO_WIFI_ON_INTERVAL“60” -DLOCK_ON_FIRST_CONNECTION -DRegulatory_Domain_FCC_915 //请根据国家地区以及设备进行选择合适的规则 3.1 ID,Antenna,RSSI,LQ,SNR,PWR,FHSS,TimingOffset
在基础参数前提下增加以下配置参数 -DDEBUG_LOG -DDEBUG_CRSF_NO_OUTPUT -DDEBUG_RCVR_LINKSTATS 通过串口可得到如下类似串口打印调试信息
3.2 IRQ_CNT,RSSI_AVE,SNR_AVE,SNV_MAX,TELEM_CNT,FAIL_CNT
在基础参数前提下增加以下配置参数 -DDEBUG_LOG -DDEBUG_CRSF_NO_OUTPUT -DDEBUG_RCVR_SIGNAL_STATS 通过串口可得到如下类似串口打印调试信息
3.3 RX Scoreboard -DPRINT_RX_SCOREBOARD 3.4 ELRS Configurator配置界面 3.5 VSCode配置界面 4. 固件烧录
ELRS采用了乐鑫的芯片因此还可以命令行输入详见ExpressLRS_Manufacturer_Design_Guidelines_v1.7.pdf
4.1 命令行 4.2 GUI工具 5. 参考资料
【1】Advanced Toolchain Setup for ELRS 【2】ExpressLRS-Configurator