当前位置:首页 > 系统教程 > 正文

RK3588开发板如何适配AP6275P蓝牙模块?(荣品RD-RK3588原厂Buildroot Linux 6.1实测教程)

RK3588开发板如何适配AP6275P蓝牙模块?(荣品RD-RK3588原厂Buildroot Linux 6.1实测教程)

在高性能嵌入式开发领域,RK3588蓝牙适配是许多开发者必须面对的挑战。荣品RD-RK3588开发板凭借其强大的算力,配合Linux 6.1内核的Buildroot系统,能够实现极佳的稳定性。本文将手把手教你如何在该环境下驱动AP6275P驱动模块,并成功开启BLE蓝牙低功耗功能。

一、硬件环境准备

首先确保你的荣品RD-RK3588开发板已经正确安装了AP6275P模块(通常为M.2接口或板载)。该模块集成了Wi-Fi 6和蓝牙5.0功能。在Buildroot开发教程中,蓝牙的底层通常是通过UART串口进行通信的。

RK3588开发板如何适配AP6275P蓝牙模块?(荣品RD-RK3588原厂Buildroot Linux 6.1实测教程) RK3588蓝牙适配  AP6275P驱动 Buildroot开发教程 BLE蓝牙低功耗 第1张

二、内核(Kernel 6.1)配置

进入内核配置界面(make menuconfig),确保以下路径的驱动被选中:

Networking support  --->  <*> Bluetooth subsystem support  --->    <*> Bluetooth device drivers  --->      <*> HCI UART driver      [*]   UART (H4) protocol support      [*]   Broadcom protocol support

对于AP6275P这种博通(Broadcom)系列的芯片,H4协议和Broadcom支持是必须勾选的。

三、设备树(DTS)修改

在对应的设备树文件(如 rk3588-rongpin-rd.dts)中,需要配置蓝牙连接的串口。AP6275P的蓝牙部分通常挂载在UART9或其他指定串口下:

&uart9 {    status = "okay";    pinctrl-names = "default";    pinctrl-0 = <&uart9m1_xfer &uart9m1_ctsn &uart9m1_rtsn>;    uart-has-rtscts;    bluetooth {        compatible = "brcm,bcm43438-bt";        device-wakeup-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_HIGH>;        host-wakeup-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;        shutdown-gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;        max-speed = <3000000>;        vcc-18-supply = <&vcc_1v8_s0>;        vcc-33-supply = <&vcc_3v3_s0>;    };};

四、Buildroot 软件层配置

在Buildroot根文件系统配置中,需要启用BlueZ工具链来实现BLE蓝牙低功耗协议栈的管理:

  • Target packages -> Networking applications -> bluez5-utils
  • 勾选 [ ] GATT support (重要,用于BLE)
  • 勾选 [ ] tools support

五、固件加载与BLE测试

编译并烧录系统后,将AP6275P的蓝牙固件(通常是 BCM4375B1.hcd)放置在 /lib/firmware/brcm/ 目录下。执行以下命令启动蓝牙:

# 初始化蓝牙brcm_patchram_plus --noverify --tosleep 200000 --patchram /lib/firmware/brcm/BCM4375B1.hcd --baudrate 3000000 --enable_hci /dev/ttyS9 &# 开启蓝牙服务bluetoothctl[bluetooth]# power on[bluetooth]# scan le

如果看到周围的BLE设备,说明RK3588蓝牙适配已经完美成功!这对于开发智能网关或物联网终端至关重要。

本文关键词:RK3588蓝牙适配, AP6275P驱动, Buildroot开发教程, BLE蓝牙低功耗