Vrams Rock960c rk3399开发板,编译5.8.y内核后,调试AP6255 蓝牙模块记录
vrams rock960c rk3399开发板编译5.8.y内核后,调试AP6255 蓝牙模块记录
首先,内核要开启一些选项,把hci_uart,rfcomm,bnep,hidp,uhid这几个模块编译到内核里面。
具体就是在menuconfig图形界面内的Networking support项目下把相应模块设置为【*】
编译出内核传到开发板上面。
把AP6255蓝牙模块的固件BCM4345C0.hcd传到开发板上,我是传到/brcm这个位置
一切准备就绪,以下是命令行操作:
cd /brcm
//划重点,这个是用于enable蓝牙模块的的gpio引脚,rock960c开发板是这个引脚,其他开发板需要参看电路图。这个9号gpio相当于gpio0的b1,对应电路图引脚标注是BT_REG_ON_H。
echo 9 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio9/direction
echo 1 > /sys/class/gpio/gpio9/value
//这个是用于enable蓝牙模块的的gpio引脚
//上传固件命令如下
./brcm_patchram_plus -d --enable_hci --no2bytes --tosleep 200000 --baudrate 9600 --patchram /brcm/BCM4345C0.hcd /dev/ttyS0 &
//brcm_patchram_plus这个命令需要自己从网上下载源代码然后用开发板本地的gcc编译成可执行文件
//运行完这个命令后,显示“Done setting line discpline”,这个时候就可以ctrl+c退出brcm_patchram_plus程序。
//下面两个命令可以检查蓝牙模块是不是已经出来了
hciconfig -a
rfkill list
//蓝牙模块驱动成功可以用下面这个命令来连接其他蓝牙设备
hcitool scan
hcitool lescan
//更多命令查看hcitool相关教学