91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文搞定RK平臺Wi-Fi/BT調(diào)試!從配置到問題解決全攻略

jf_44130326 ? 來源:Linux1024 ? 2026-02-09 16:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式Linux開發(fā)中,瑞芯微Rockchip)平臺的Wi-Fi藍牙調(diào)試是許多工程師的核心需求。無論是RK3588、RK356X等主流芯片,還是RV1106/1103IPC專用芯片,Wi-Fi/BT的穩(wěn)定運行直接影響產(chǎn)品體驗。本文從配置、編譯、測試到問題排查,手把手帶你搞定RK平臺Wi-Fi/BT調(diào)試。

一、先搞懂:RK平臺支持哪些芯片與模塊?

在開始調(diào)試前,先確認你的硬件與系統(tǒng)是否在支持范圍內(nèi),避免做無用功。

1.支持的芯片與內(nèi)核版本

不同芯片對應不同Linux內(nèi)核版本,配置時需精準匹配:

芯片系列

支持內(nèi)核版本

RK356X/RK3399/RK3288/RK3326/RK3308/RV1109/RV1126/PX30

Linux 4.4/4.19

RK3588/RK356X/RK3399/RV1106/RV1103

Linux 5.10

2.支持的Wi-Fi/BT模塊

相關(guān)SDK默認支持主流模塊,無需額外移植即可直接使用,常見型號如下:

?正基(AP/新思系列AP6275、AP6358SAP6212、AP6236等(含Wi-Fi+BT二合一)

?Realtek系列RTL8723DS、RTL8822CS、RTL8188FU、RTL8189FS、RTL8821CS、RTL8852BS等(Wi-Fi單獨/二合一)

?英飛凌Cypress /海華)系列CYW4354、CYW43438、CYW5557XCYW5557X_PCIE、CYW54591、CYW54591_PCIE

?國產(chǎn)模塊:愛科微(AIC)、高拓(ATBM)等(需從指定FTP獲取支持文件)

二、核心步驟:Wi-Fi/BT配置與編譯

配置是調(diào)試的基礎(chǔ),需從SDK配置→DTS配置內(nèi)核配置三步完成,每一步都不能錯!

1. SDK配置:指定芯片與模塊型號

首先通過腳本指定芯片型號,再配置Wi-Fi/BT模塊類型:

# 1. 配置芯片型號(以RK3588為例)./build.sh chip rk3588# 2. 修改默認配置文件(路徑:SDK_ROOT/device/rockchip/對應芯片目錄)# 示例:rk3588/rockchip_rk3588_evb1_lp4_v10_defconfigRK_WIFIBT_CHIP="ALL_AP"# 支持所有正基模塊;ALL_CY支持所有英飛凌模塊RK_KERNEL_DTS_NAME="rk3588-evb1-ddr4-v10-linux"# 對應DTS文件名# 3. 精細化選擇模塊(可選,替代ALL_AP/ALL_CY)# 打開內(nèi)核配置界面,搜索RK_WIFIBT_CHIP,選擇具體型號(如AP6275/RTL8822CS)make menuconfig

其中,RK_WIFIBT_CHIP的配置需根據(jù)實際模塊選擇,除了ALL_APALL_CY,還可直接指定具體型號,如AP6275_PCIE、CYW4354、RTL8723DS等,具體支持的型號可在device/rockchip/common/scripts/post-wifibt.sh文件中查詢。

2. DTS配置:硬件接口橋梁

DTS(設(shè)備樹)是硬件與內(nèi)核的翻譯官,需根據(jù)Wi-Fi/BT接口類型(SDIO/USB/PCIE)配置,核心是電源腳、復位腳、中斷腳的匹配。

1SDIO接口Wi-Fi配置(最常用)

支持標準框架(推薦,統(tǒng)一電源管理)和傳統(tǒng)框架(支持多次加載卸載),這里以正基模塊為例展示標準框架配置:

//1. 電源序列配置(SDIO_PWRSEQ)sdio_pwrseq: sdio-pwrseq {  compatible = "mmc-pwrseq-simple";  pinctrl-names = "default";  pinctrl-0 = <&wifi_enable_h>; // 電源使能引腳  reset-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>; // WL_REG_ON(參考原理圖,別名可能為WIFI_REG_ON)  post-power-on-delay-ms = <200>; // 上電后延遲(確保穩(wěn)定,默認禁用可按需開啟)};//2. 引腳配置(PINCTRL)&pinctrl {  sdio-pwrseq {    wifi_enable_h: wifi-enable-h {      rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;    };  }};//3. SDIO控制器配置&sdio {  max-frequency = <150000000>; //最高頻率(SDIO3.0支持150M,SDR104模式最高200MHz)  bus-width = <4>; //4線模式  cap-sd-highspeed; //支持SD高速時序  cap-sdio-irq; //使能SDIO中斷信號  non-removable; //非可移除設(shè)備(Wi-Fi模塊焊接在板上)  mmc-pwrseq = <&sdio_pwrseq>; //關(guān)聯(lián)電源序列  status ="okay";};//4. Wi-Fi節(jié)點配置wireless-wlan {  compatible ="wlan-platdata";  rockchip,grf = <&grf>;  clocks = <&rk809?1>; //32.768K時鐘(參考原理圖,也可能為hym8563)  clock-names ="ext_clock";  wifi_chip_type ="ap6255"; //模塊型號  WIFI,host_wake_irq = <&gpio0RK_PA0GPIO_ACTIVE_HIGH>; //喚醒引腳,需確認硬件連接是否帶反向管  status ="okay";};

標準框架中,WiFiREG_ONmmc框架統(tǒng)一管理,優(yōu)點是電源控制集中,缺點是不支持SDIO card重新識別;傳統(tǒng)框架中,WiFiREG_ONnet/rfkill/rfkill-wlan.c控制,支持多次rmmod/insmodWiFi驅(qū)動,但需打KO模式補丁。

2)藍牙配置(UART接口最常用)

藍牙需配置UART引腳(TX/RX/RTS/CTS)和電源腳,RTS/CTS必須按要求連接,否則會出現(xiàn)初始化異常

// 1. 藍牙節(jié)點配置wireless-bluetooth {  compatible ="bluetooth-platdata";  uart_rts_gpios = <&gpio4?RK_PA7GPIO_ACTIVE_LOW>; // RTS引腳,部分藍牙芯片CTS上電前需低電平  pinctrl-names ="default","rts_gpio";  pinctrl-0= <&uart4_rts>;  pinctrl-1= <&uart4_rts_gpio>; BT,power_gpio = <&gpio4?RK_PB3GPIO_ACTIVE_HIGH>; // BT_REG_ON(電源腳) // Linux平臺下,BT,wake_host_irq和BT,wake_gpio無需配置  status ="okay";};// 2. UART控制器配置(以UART4為例)&uart4 {  pinctrl-names ="default";  pinctrl-0= <&uart4_xfer &uart4_ctsn>; // TX/RX/CTS引腳,無需配置RTS引腳  status ="okay";};// 3. UART RTS GPIO配置&pinctrl {  wireless-bluetooth {   uart4_rts_gpio: uart4-rts-gpio {      rockchip,pins = <4 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;    };  }};

需注意,不同平臺UART相關(guān)引腳命名可能不同,例如uart4_ctsn在部分平臺可能名為uart4_cts,需在對應芯片平臺的dts/dtsi中確認。

3IO電源域配置(關(guān)鍵!SDIO3.0必看)

SDIO3.0的設(shè)備務必使用1.8V供電,需根據(jù)硬件實際供電情況配置IO電源域:

// 不同平臺io_domains名字可能不同,部分為&pmu_io_domains&io_domains { // VDDIO3_VDD引用vcc_1v8的電壓,若硬件接3.3V則改為vcc_3v3,名稱需按實際dts/dtsi調(diào)整  vccio3-supply = <&vcc_1v8>;};vcc_1v8: vcc-1v8 {  compatible ="regulator-fixed";  regulator-name ="vcc_1v8";  regulator-always-on;  regulator-boot-on;  regulator-min-microvolt = <1800000>; // 1.8V供電  regulator-max-microvolt = <1800000>;  vin-supply = <&vcc_io>;};

4USB/PCIE接口配置(簡要)

?USB Wi-Fi:需先參考docs/Common/USB/下的相關(guān)文檔配置USB控制器為HOST模式,Wi-Fi節(jié)點配置分兩種情況:若內(nèi)核.config打開CONFIG_RFKILL/CONFIG_RFKILL_RK,則在wireless-wlan節(jié)點配置WIFI,poweren_gpio;若未打開,則通過regulator-fixed節(jié)點配置WIFI_REG_ON引腳。

?PCIE Wi-Fi:需先參考docs/Common/PCIe/下的相關(guān)文檔,配置PCIE控制器、PHY及復位腳(reset-gpios),關(guān)鍵是確認VBAT/VCC3V3(長供電3.3V)、WIFI_REG_ON(開機高電平)、PCIE_PERST_L/PERSTO(復位管腳)的硬件連接與DTS配置一致,RK3588需特別注意PCIe20dtsi的對應關(guān)系,例如PCIE20_0對應pcie2x1l2、PCIE20_1對應pcie2x1l0等。

3.內(nèi)核配置:開啟必要功能

內(nèi)核需開啟Wi-Fi/BT相關(guān)驅(qū)動與協(xié)議,核心配置如下(通過make menuconfig或修改.config):

# Wi-Fi核心配置CONFIG_RFKILL=y # 射頻開關(guān)CONFIG_RFKILL_RK=y # RK平臺射頻開關(guān)支持CONFIG_MMC=y  # SDIO依賴MMC框架CONFIG_PWRSEQ_SIMPLE=y # 簡單MMC電源序列支持CONFIG_MMC_DW=y # DW MMC控制器支持CONFIG_MMC_DW_PLTFM=y # DW MMC平臺支持CONFIG_MMC_DW_ROCKCHIP=y # RK平臺DW MMC支持CONFIG_WIRELESS=y # 無線功能支持CONFIG_WIRELESS_EXT=y # 無線擴展支持CONFIG_WEXT_CORE=y # WEXT核心支持CONFIG_WEXT_PROC=y # WEXT進程支持CONFIG_WEXT_PRIV=y # WEXT私有支持CONFIG_CFG80211=y# 802.11配置框架CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y # 要求簽名REGDBCONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y # 使用內(nèi)核REGDB密鑰CONFIG_CFG80211_DEFAULT_PS=y # 默認電源管理CONFIG_CFG80211_CRDA_SUPPORT=y # CRDA支持# CONFIG_CFG80211_WEXT is not set # 關(guān)閉WEXT兼容CONFIG_MAC80211=y# MAC層驅(qū)動CONFIG_MAC80211_HAS_RC=y # 速率控制支持CONFIG_MAC80211_RC_MINSTREL=y # Minstrel速率控制算法CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y # 默認Minstrel算法CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"# 默認速率控制算法CONFIG_MAC80211_STA_HASH_MAX_SIZE=0# STA哈希表最大大小# 藍牙核心配置CONFIG_BT=y # 藍牙支持CONFIG_BT_BREDR=y # 經(jīng)典藍牙支持CONFIG_BT_RFCOMM=y # RFCOMM支持# CONFIG_BT_RFCOMM_TTY is not set # 關(guān)閉RFCOMM TTY# CONFIG_BT_BNEP is not set # 關(guān)閉BNEPCONFIG_BT_HIDP=y # HIDP支持# CONFIG_BT_HS is not set # 關(guān)閉HSCONFIG_BT_LE=y  # 低功耗藍牙(BLE)支持CONFIG_BT_DEBUGFS=y# 調(diào)試日志支持# Realtek藍牙需關(guān)閉以下配置,使用自有驅(qū)動# CONFIG_BT_HCIUART is not set

其中,正基(新思)和英飛凌(海華/ CY)的模塊使用內(nèi)核默認CONFIG_BT_HCIUART驅(qū)動,而Realtek模塊使用自有hci uart/hci_usb驅(qū)動,需關(guān)閉內(nèi)核CONFIG_BT_HCIUART配置,其驅(qū)動源碼位于external/rkwifibt/realtek/bluetooth_uart_driverexternal/rkwifibt/realtek/bluetooth_usb_driver目錄。

4.編譯:生成驅(qū)動與固件

編譯需執(zhí)行指定腳本,自動生成驅(qū)動(.ko)、固件(firmware)并拷貝到文件系統(tǒng):

# 1. 編譯Wi-Fi/BT驅(qū)動與工具./build.sh wifibt# 2. 打包根文件系統(tǒng)(確保驅(qū)動與固件被包含)./build.sh rootfs && ./build.sh firmware

編譯過程會調(diào)用device/rockchip/common/scripts/mk-wifibt.shdevice/rockchip/common/scripts/post-wifibt.sh腳本,編譯external/rkwifibt/drivers/目錄下的驅(qū)動,并拷貝對應固件文件到文件系統(tǒng),同時還會編譯brcm_patchram_plus1、rtk_hciattach等工具。

關(guān)鍵文件路徑(需熟記,排查時常用)

文件類型

SDK中的路徑

燒錄后設(shè)備路徑

Wi-Fi驅(qū)動(.ko

external/rkwifibt/drivers/(如bcmdhd、rtlxxx目錄)

/system/lib/modules//usr/lib/modules/

固件(firmware

external/rkwifibt/firmware/broadcom目錄對應正基,realtek目錄對應Realtek

正基:/system/etc/firmware/;Realtek藍牙:/lib/firmware/rtlbt/UART)、/lib/firmware/USB

藍牙工具

external/rkwifibt/tools/brcm_tools、rtk_hciattach目錄)

/usr/bin/(如brcm_patchram_plus1、rtk_hciattach

配置文件

external/rkwifibt/conf/wpa_supplicant.conf、dnsmasq.conf等)

/data/cfg/wpa_supplicant.conf常用路徑)

初始化腳本

external/rkwifibt/scripts/S36wifibt-init.sh、wifibt-init.sh等)

/etc/init.d/S36wifibt-init.sh

三、功能測試:驗證Wi-Fi/BT是否正常工作

編譯燒錄后,通過命令行驗證核心功能,確?;A(chǔ)功能正常再排查復雜問題。

1. Wi-Fi測試(STA模式:連接路由器)

Buildroot系統(tǒng)為例:

# 1. 加載Wi-Fi驅(qū)動(正基模塊示例:bcmdhd.ko;Realtek模塊示例:RTL8723DS.ko)insmod /system/lib/modules/bcmdhd.ko# 2. 啟動wlan0接口ifconfig wlan0 up# 3. 配置wpa_supplicant(連接路由器)# 編輯配置文件:/data/cfg/wpa_supplicant.confcat > /data/cfg/wpa_supplicant.conf << EOFctrl_interface=/var/run/wpa_supplicant # 控制接口路徑,默認不建議修改ap_scan=1 # AP掃描模式update_config=1 # 允許wpa_cli配置保存到文件network={  ssid="你的路由器SSID"# Wi-Fi名稱  psk="你的路由器密碼" # Wi-Fi密碼(8-63位)  key_mgmt=WPA-PSK   # 加密方式,不加密改為key_mgmt=NONE}EOF# 4. 啟動wpa_supplicant并獲取IPwpa_supplicant -B -i wlan0 -c /data/cfg/wpa_supplicant.conf # -B后臺運行# 使用dhcp客戶端獲取IP(二選一,不可同時啟用)dhcpcd wlan0 # 功能完整的DHCP客戶端(默認)# 或 udhcpc -i wlan0 # busybox精簡DHCP客戶端# 5. 驗證:ping路由器網(wǎng)關(guān)ping 192.168.1.1 -c 4 # -c指定ping次數(shù)

若需掃描周邊AP,可在wpa_supplicant進程運行的前提下,執(zhí)行wpa_cli -i wlan0 -p /var/run/wpa_supplicant scanwpa_cli -i wlan0 -p /var/run/wpa_supplicant scan_results命令,掃描結(jié)果需與手機掃描的2.4G/5G AP個數(shù)(根據(jù)模塊支持頻段)及信號強度對比,正常信號強度范圍:好(-20~-50dBm)、可接受(-50~-70dBm)、差(-70~-90dBm)。

2. Wi-Fi AP模式(設(shè)備作為熱點)

相關(guān)SDK集成softapDemo工具,可快速開啟熱點,不同模塊使用的接口不同:

?Realtek模組:使用p2p0作為AP接口,需在驅(qū)動Makefile中添加EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE開啟共存模式,自動生成p2p0節(jié)點。

?正基/海華模組:使用wlan1作為AP接口,需通過iw phy0 interface add wlan1 type managed命令生成wlan1節(jié)點。

具體操作:

#1. 編譯softapDemo(若SDK中無源碼,從指定地址下載到external目錄)#源碼地址:https://github.com/rockchip-linux/softapServermake softap-dirclean && make softap#2. 啟動熱點(以正基模組為例,SSID為"RK-AP",無密碼)#生成wlan1節(jié)點iw dev wlan1 del(若已存在)iw phy0 interface add wlan1 type managed#啟動熱點softapDemo RK-AP#3. 驗證:手機搜索"RK-AP"并連接,ping設(shè)備AP地址(默認192.168.88.1)ping 192.168.88.1 -c 4

若需配置加密、修改IP地址或DNS,可修改wlan_accesspoint_start、creat_dnsmasq_file、create_hostapd_file函數(shù),例如在create_hostapd_file中添加wpa相關(guān)配置實現(xiàn)WPA-PSK加密,在creat_dnsmasq_file中調(diào)整dhcp-range配置IP地址池。

3.藍牙測試(經(jīng)典藍牙+ BLE

1Realtek模塊(UART接口)

# 1. 執(zhí)行初始化腳本(SDK生成的bt_pcba_test或bt_init.sh)/usr/bin/bt_pcba_test# 腳本核心操作(手動執(zhí)行等效命令):killall rtk_hciattach # 關(guān)閉現(xiàn)有rtk_hciattach進程echo0 > /sys/class/rfkill/rfkill0/state # 下電echo0 > /proc/bluetooth/sleep/btwritesleep1echo1 > /sys/class/rfkill/rfkill0/state # 上電echo1 > /proc/bluetooth/sleep/btwritesleep1insmod /usr/lib/modules/hci_uart.ko # 加載UART藍牙驅(qū)動rtk_hciattach -n -s 115200 /dev/ttyS4 rtk_h5 & # /dev/ttyS4為藍牙UART口,波特率115200# 2. 啟動hci0接口并查看信息hciconfig hci0 uphciconfig -a # 正常應顯示BD Address、版本信息等# 3. 掃描周邊藍牙設(shè)備hcitool scan

2)正基/海華模塊

# 1. 執(zhí)行初始化腳本(bt_pcba_test或bt_init.sh)/usr/bin/bt_pcba_test# 腳本核心操作(手動執(zhí)行等效命令):killall brcm_patchram_plus1 # 關(guān)閉現(xiàn)有進程echo0 > /sys/class/rfkill/rfkill0/state # 下電echo0 > /proc/bluetooth/sleep/btwritesleep2echo1 > /sys/class/rfkill/rfkill0/state # 上電echo1 > /proc/bluetooth/sleep/btwritesleep2# 加載藍牙固件,/dev/ttyS4為藍牙UART口,波特率1500000brcm_patchram_plus1 --bd_addr_rand --enable_hci --no2bytes --use_baudrate_for_download --tosleep 200000 --baudrate 1500000 --patchram /system/etc/firmware/bcm43438a1.hcd /dev/ttyS4 &# 2. 啟動hci0接口并掃描設(shè)備hciconfig hci0 uphcitool scan

需注意,hciconfig命令依賴BR2_PACKAGE_BLUEZ5_UTILS配置,需在Buildroot中開啟并編譯;藍牙固件需與模塊型號匹配,例如AP6212A1對應BCM43430A1.hcd、AP6236對應BCM43430B0.hcd。

四、問題排查:90%的問題都在這里解決

調(diào)試中遇到的問題,大多可通過看日志查硬件核配置三步定位,以下是高頻問題及解決方案。

1. Wi-Fi識別不到(SDIO接口)

現(xiàn)象dmesg中無mmc0: new high speed SDIO cardmmcx: new ultra high speed SDR104 SDIO card日志。

排查步驟

1.測電壓:用萬用表測量VBAT/VCC_WL3.3V)、VDDIO/VCCO_SDIO1.8V/3.3V,SDIO3.0必須1.8V)、WL_REG_ON1.8V/3.3V)的電壓是否正常,是否符合硬件設(shè)計要求。

2.查時序:用示波器測量VBAT、VDDIO、WL_REG_ON的時序,確保符合模塊規(guī)格書要求,以正基模塊為例,需滿足VBAT達到90% VH后,VDDIO啟動,再觸發(fā)WL_REG_ON,且需等待2個睡眠周期(32.768K時鐘)。

3.DTS配置

?檢查WL_REG_ON是否配置錯誤:用示波器觀察其波形,若一直為低則DTS配置異常;若硬件直接拉高WL_REG_ON可識別,也說明DTS配置錯誤。

?檢查sdio_pwrseqwireless-wlan是否重復配置WL_REG_ON,需刪除其中一處配置。

1.SDIO_CLK波形:若SDIO_CLK無波形,需檢查IO電源域配置是否正確、CLK腳是否誤加上拉電阻(可去掉測試),示波器需設(shè)置正確觸發(fā)模式抓取波形。

2.32.768K時鐘:若日志出現(xiàn)dhdsdio_htclk: HT Avail timeout(正基/海華模塊),需檢查32.768K時鐘是否正常,其頻率精度需±30ppm、占空比30%-70%、信號幅值400-1800mVpp。

2. Wi-Fi能識別但wlan0 up失敗

現(xiàn)象dmesgSDIO識別日志(如mmcx: new ultra high speed SDR104 SDIO card),但ifconfig wlan0 up報錯或無wlan0節(jié)點。

排查步驟

1.固件匹配性:正基/海華模塊需確認固件文件是否存在且與型號匹配,例如AP6255對應fw_bcm43455c0_ag.bin、nvram_ap6255.txt,若日志出現(xiàn)dhdsdio_download_firmware: dongle image file download failed,則為固件缺失或路徑錯誤。

2.電源穩(wěn)定性:若日志出現(xiàn)RTW: ERROR sd_write8: FAIL!(-110)Realtek模塊),需檢查VCC_WL/VBAT/VDDIO_SDIO電源供電是否不足或紋波過大,可增加電容濾波。

3.驅(qū)動沖突:檢查是否同時加載多個Wi-Fi驅(qū)動(如bcmdhd.ko88xx.ko),需卸載多余驅(qū)動;同時確認內(nèi)核配置的buildinko模式是否沖突,只能選擇一種。

4.驅(qū)動加載時機:若日志顯示驅(qū)動在1秒內(nèi)加載,可能因SDIO/USB設(shè)備未枚舉完成導致異常,需調(diào)整驅(qū)動加載時機,確保設(shè)備枚舉后再加載。

3.藍牙初始化失?。?/span>UART接口)

現(xiàn)象hciconfig -ahci0節(jié)點。

排查步驟

1.RTS/CTS接線

?正基/海華模塊:需4線連接(host tx→controller rx、host rx→controller tx、host rts→controller cts、host cts→controller rts)。

?Realtek模塊:COB芯片需將host cts接地;RTL8822C4線連接;模組若已內(nèi)部將controller rts接地,host cts無需額外處理。

1.核驅(qū)動與固件

?Realtek模塊需確認hci_uart.koUART)或rtk_btusb.koUSB)是否正確編譯,固件文件是否放在對應路徑(UART/lib/firmware/rtlbt/,USB/lib/firmware/)。

?正基/海華模塊需確認brcm_patchram_plus1工具是否存在,固件文件(如bcm43438a1.hcd)是否與模塊匹配。

1.UART配置:確認藍牙使用的UART口在DTS中已正確配置,且pinctrl配置的TX/RX/CTS引腳與硬件一致。

4. Wi-Fi連接不穩(wěn)定/吞吐率低

現(xiàn)象:頻繁斷線、ping延遲大、iperf測試速率不達標。

排查步驟

1.RF指標驗證:先完成RF測試(發(fā)射功率、EVM、晶體頻偏、接收靈敏度)和天線OTA測試,確保指標合格,例如802.11b模式下11Mbps速率的接收靈敏度需≥-78dBm。

?正基/英飛凌模塊:需替換為測試固件(如AP6236對應fw_bcm43436b0_mfg.bin),執(zhí)行external/rkwifibt/wifi_ap6xxx_rftest.sh腳本進入測試模式,參考Wi-Fi RF Test Commands for Linux-v03.pdf進行測試。

?Realtek模塊:COB芯片需與相關(guān)方合作進行RF校準,模組需驗證出廠校準數(shù)據(jù),參考Quick_Start_Guide_V6.txtWi-Fi)和MP tool user guide for linux20180319.pdf(藍牙)測試。

1.環(huán)境干擾排除:在屏蔽室或地下室(干擾?。y試,若數(shù)據(jù)波動仍大,需檢查PCB走線(SDIO_CLK/CMD/DATA)是否異常、電容電感是否符合要求,可適當降低&sdio節(jié)點的max-frequency(如改為10M),若降頻后正常,則需優(yōu)化硬件時序。

2.CPU/DDR性能:將CPUDDR頻率拉滿,避免降頻導致性能不足:

# DDR定頻(以1560MHz為例)echouserspace > /sys/devices/platform/dmc/devfreq/dmc/governorecho1560000000 > /sys/devices/platform/dmc/devfreq/dmc/min_freq# CPU定頻(以1992MHz為例)echouserspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governorecho1992000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq

同時可將dw-mmc中斷綁定到其他CPU核心,例如echo 5 > /proc/irq/38/smp_affinity_list將中斷放到CPU2執(zhí)行。

五、資源獲?。合嚓P(guān)資料與工具路徑

1.開發(fā)文檔路徑:相關(guān)技術(shù)文檔位于SDKdocs/目錄下,例如:

?PCIe配置參考:

docs/Common/PCIe/Rockchip_RK3399_Developer_Guide_PCIe_CN.pdf、docs/Common/PCIe/Rockchip_RK356X_Developer_Guide_PCIe_CN.pdf、docs/Common/PCIe/Rockchip_Developer_Guide_PCIe_CN.pdf。

?USB配置參考:

docs/Common/USB/Rockchip_Developer_Guide_USB_CN.pdf。

?RF測試參考:

docs/linux/wifibt/目錄下的Quick_Start_Guide_V6.txtRealtek)、Wi-Fi RF Test Commands for Linux-v03.pdf(正基/英飛凌)、BT RF Test Commands for Linux-v05.pdf(藍牙)。

總結(jié)

RK平臺Wi-Fi/BT調(diào)試的核心是配置精準+日志分析+硬件驗證:先確保DTS與原理圖匹配、內(nèi)核配置正確,再通過dmesg、hciconfig、wpa_cli等工具查看日志定位軟件問題,最后結(jié)合電壓測量、時序分析、RF測試排查硬件異常。遇到復雜問題,可優(yōu)先參考SDK文檔或相關(guān)FTP資源,大幅提升調(diào)試效率。

希望本文能幫你少走彎路,順利搞定RK平臺Wi-Fi/BT開發(fā)!如果有其他問題,歡迎在評論區(qū)留言討論~

wKgZO2kah4SAOI9kAAIl74WRJtw588.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5198

    文章

    20435

    瀏覽量

    333899
  • wi-fi
    +關(guān)注

    關(guān)注

    15

    文章

    2424

    瀏覽量

    129500
  • 調(diào)試
    +關(guān)注

    關(guān)注

    7

    文章

    646

    瀏覽量

    35635
  • RK3588
    +關(guān)注

    關(guān)注

    8

    文章

    555

    瀏覽量

    7314
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    GPS 設(shè)計全攻略

    GPS 設(shè)計全攻略
    發(fā)表于 09-25 14:11

    LED技術(shù)全攻略

    LED技術(shù)全攻略
    發(fā)表于 09-25 14:16

    GPS 設(shè)計全攻略

    GPS 設(shè)計全攻略
    發(fā)表于 12-05 12:08

    GPS設(shè)計全攻略

    本帖最后由 zgzzlt 于 2012-8-16 13:58 編輯 GPS設(shè)計全攻略
    發(fā)表于 08-06 12:56

    LED技術(shù)全攻略

    本帖最后由 zgzzlt 于 2012-8-16 13:56 編輯 LED技術(shù)全攻略
    發(fā)表于 08-06 12:59

    MCU解密全攻略

    MCU解密全攻略
    發(fā)表于 08-19 14:28

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 09-27 10:59

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 05-21 09:28

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 03-03 10:30

    FPGA開發(fā)全攻略

    FPGA開發(fā)全攻略
    發(fā)表于 03-07 11:46

    MCU解密全攻略

    本內(nèi)容介紹了MCU解密的全攻略教程
    發(fā)表于 07-11 17:51 ?650次下載
    MCU解密<b class='flag-5'>全攻略</b>

    LED調(diào)光技術(shù)全攻略

    LED調(diào)光技術(shù)全攻略
    發(fā)表于 02-08 00:50 ?44次下載

    LED驅(qū)動電源方案全攻略

    LED驅(qū)動電源方案全攻略
    發(fā)表于 01-14 12:22 ?43次下載

    智能小車的DIY全攻略

    智能小車的DIY全攻略
    發(fā)表于 10-13 09:13 ?28次下載
    智能小車的DIY<b class='flag-5'>全攻略</b>

    GPS設(shè)計全攻略

    電子發(fā)燒友網(wǎng)站提供《GPS設(shè)計全攻略.pdf》資料免費下載
    發(fā)表于 12-01 17:10 ?0次下載