1. 源由
ExpressLRS是航模上目前比較流行的開源發(fā)射機(jī)和接收機(jī)開源代碼之一。
其目的旨在提供最好的完全開放、高刷新率的無線電控制鏈路,同時(shí)以低延遲保持該速率下的最大可實(shí)現(xiàn)范圍,在900MHz和2.4GHz頻率下對(duì)硬件提供大量支持。
這個(gè)也是筆者一直使用的RC控制鏈路。從無人機(jī)的控制電傳,圖傳以外,RC鏈路控制是非常重要的鏈路。
不過這里有一個(gè)非常痛苦的事情,就是編譯。為什么???? 耗時(shí)
因此,本文主要的出發(fā)點(diǎn)是確保操作步驟的正確性,并針對(duì)常見問題進(jìn)行必要且快速的解決方法。
注:如果想要更加方便且快速的編譯,就需要了解更多關(guān)于VSCode&ELRS Configurator背后整合的工具面命令,將一鍵操作進(jìn)行分解。如果有時(shí)間,后續(xù)我們會(huì)進(jìn)一步的分解,以便這個(gè)耗時(shí)的編譯燒錄能最簡化,也許1~2分鐘就可以解決問題。
2. 編譯步驟
在所有編譯之前,首先進(jìn)行源代碼下載:
A) Git拉取Github開源代碼
$ git clone git@github.com:ExpressLRS/ExpressLRS.git
$ git checkout 3.x.x-maintenance //根據(jù)需要進(jìn)行分支切換
B) 穩(wěn)定發(fā)布版本獲取壓縮包
$ wget https://github.com/ExpressLRS/ExpressLRS/archive/refs/tags/3.3.0.zip
$ unzip ExpressLRS-3.3.0.zip //根據(jù)需要下載對(duì)應(yīng)的版本,并進(jìn)行解壓
C) 通過ELRS Configurator下載
注:該方式并不推薦,但這確實(shí)是一個(gè)OneButton的解決方案。
2.1 推薦源代碼指定方案
因?yàn)閲鴥?nèi)網(wǎng)絡(luò)的不穩(wěn)定性,采用本地代碼進(jìn)行編譯是一個(gè)比較好的選擇,且大多數(shù)開發(fā)人員也經(jīng)常使用的是本地代碼進(jìn)行開發(fā),開發(fā)完成后提交相應(yīng)修改。
因此,我們推薦采用"LOCAL"的方式進(jìn)行源代碼選擇,而非上面C)選項(xiàng)中的方式。
2.2 方法一:ELRS Configurator
步驟一:下載ELRS Configurator工具
通過ELRS Configurator配置工具發(fā)布頁面尋找合適軟件版本,進(jìn)行下載。
目前,最新的版本號(hào)是1.6.0。
步驟二:安裝ELRS Configurator工具
ELRS Configurator工具支持較多系統(tǒng)(比如:MacOS/Linux/Windows),且如果Github上無二進(jìn)制,用戶可以根據(jù)需求直接源代碼進(jìn)行交叉編譯(不再討論范圍之內(nèi))。
具體安裝方式與常規(guī)軟件類似,Windows版本請(qǐng)根據(jù)安裝提示完成安裝。
步驟三:使用ELRS Configurator工具進(jìn)行配置
- 設(shè)備配置:目前采用了一塊類似BETAFPV 900的接收機(jī)硬件(硬件管腳定義)
2. 燒錄方式:采用串口直接燒錄
3. 設(shè)備選項(xiàng):通常使用"Standard mode" + “FCC_915”
4. 固件燒錄方式
步驟四:設(shè)置ELRS接收機(jī)為燒錄模式
- 首先,將ELRS接收機(jī)的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"按鍵
- 最后,同時(shí)將USB插入電腦,上電時(shí)接收機(jī)將會(huì)自動(dòng)進(jìn)入燒錄模式
步驟五:點(diǎn)擊"Flash"燒錄固件
這里的“Flash”是一鍵式編譯+燒錄,從設(shè)計(jì)的角度來說是非常方便的,但是從實(shí)際情況來看會(huì)出現(xiàn)大量的網(wǎng)絡(luò)問題導(dǎo)致編譯失敗。
注:如果出現(xiàn)編譯失敗,請(qǐng)刪除"src/.pio"目錄,重新步驟五。
2.3 方法二:VSCode IDE
步驟一:安裝vscode
在VisualStudioCode上下載最新版本,安裝vscode IDE開發(fā)環(huán)境。
注:Windows安裝軟件比較簡單和直觀,next by next就好了。
步驟二:安裝PlatformIO插件
在vscode IDE環(huán)境中點(diǎn)擊"extension",搜索platformio,安裝"PlatformIO IDE"插件,最后將會(huì)在左側(cè)ICON上顯示PlatformIO的圖標(biāo),表示安裝成功。
注:因?yàn)镋xpressLRS是使用Arduino框架用C++編寫的。
步驟三:選擇ELRS工程
在使用Visual Studio Code時(shí),在選項(xiàng)卡中看到PlatformIO主頁。單擊“打開項(xiàng)目”按鈕。導(dǎo)航到ExpressLRS repo目錄。導(dǎo)航到src文件夾(即./ExpressLRS/src/)。最后,按下“打開”按鈕。
步驟四:修改工程配置
編輯文件/src/user_defines.txt來定義用戶特定的變量。
步驟五:選擇編譯目標(biāo)
在左側(cè)工具欄中,單擊PlatformIO圖標(biāo),該圖標(biāo)將顯示任務(wù)列表。選擇“編譯目標(biāo)”
步驟六:編譯&燒錄固件
常用的幾個(gè)選項(xiàng)是:Build/Upload/Clean/Full Clean
注:如果上述方法無法解決編譯時(shí)出現(xiàn)的錯(cuò)誤,很有可能還是網(wǎng)絡(luò)問題導(dǎo)致組件下載出現(xiàn)異常,請(qǐng)刪除"src/.pio"目錄,重新步驟六。
3. ELRS基本調(diào)試驗(yàn)證
ELRS基本調(diào)試驗(yàn)證,主要側(cè)重硬件方面的信號(hào)數(shù)據(jù)指標(biāo)。通過固件配置參數(shù)的調(diào)整獲取相關(guān)硬件性能的參數(shù)。
基礎(chǔ)參數(shù)如下:
-DMY_BINDING_PHRASE=“”
-DAUTO_WIFI_ON_INTERVAL=“60”
-DLOCK_ON_FIRST_CONNECTION
-DRegulatory_Domain_FCC_915 //請(qǐng)根據(jù)國家地區(qū),以及設(shè)備進(jìn)行選擇合適的規(guī)則
3.1 ID,Antenna,RSSI,LQ,SNR,PWR,FHSS,TimingOffset
在基礎(chǔ)參數(shù)前提下,增加以下配置參數(shù):
-DDEBUG_LOG
-DDEBUG_CRSF_NO_OUTPUT
-DDEBUG_RCVR_LINKSTATS
通過串口可得到如下類似串口打印調(diào)試信息:
3.2 IRQ_CNT,RSSI_AVE,SNR_AVE,SNV_MAX,TELEM_CNT,FAIL_CNT
在基礎(chǔ)參數(shù)前提下,增加以下配置參數(shù):
-DDEBUG_LOG
-DDEBUG_CRSF_NO_OUTPUT
-DDEBUG_RCVR_SIGNAL_STATS
通過串口可得到如下類似串口打印調(diào)試信息:
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工具
文章來源:http://www.zghlxwxcb.cn/news/detail-683129.html
5. 參考資料
【1】Advanced Toolchain Setup for ELRS
【2】ExpressLRS-Configurator文章來源地址http://www.zghlxwxcb.cn/news/detail-683129.html
到了這里,關(guān)于ExpressLRS開源之接收機(jī)固件編譯燒錄步驟的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!