imx6ul之8723BU蓝牙驱动移植

    xiaoxiao2022-07-05  206

    主控芯片/架构 imx6ul/cortex-a7

    平台信息+平台厂家信息 nxp

    WIFI模块/芯片型号 RTL8723BU

    作业系统(linux/android/...) linux

    Kernel Version 4.1.15

    关于RTL8723bu wifi+BT的驱动移植请参考

    https://blog.csdn.net/qq_22902919/article/details/80647181

    这里主要讲讲linux下RTL8723bu 蓝牙功能的使用

    1.使用PS命令确认dbus已经在后台运行

    87 dbus dbus-daemon --system

    87为进程号,不同平台PID可能不能,如果没有运行

    在/etc/init.d下使用./S30dbus start运行

     

    2.装载驱动之前请使用命令lsusb确认usb已经被识别

    然后使用命令insmod rtk_btusb.ko装载蓝牙驱动

    3.hciconfig -a

     

    此时蓝牙状态为down,使用hciconfig hci0 up piscan 激活蓝牙

     

    3.开启蓝牙服务bluetoothd -C &

     

    4.开启obexd服务,obexd -r /mnt -a -n &

    若出现如上报错

    则export DBUS_SESSION_BUS_ADDRESS="unix:path=/var/run/dbus/system_bus_socket"

    然后需要修改开发板/usr/share/dbus-1/services目录下的org.bluez.obex.service文件,如果没有则创建一个,往这个文件里添加如下内容

    [D-BUS Service]

    Name=org.bluez.obex

    Exec=/bin/false

    SystemdService=dbus-org.bluez.obex.service

     

    然后修改开发板目录下/usr/share/dbus-1/system.conf文件

    <policy context="default">

    <allow own="org.bluez.obex"/>

    </policy>

    如图所示

    然后重新运行·无报错后,使用命令ps确认bluetoothd和obexd已经运行

     

    5.接着使用bluetoothctl配对蓝牙设备,使用bluetoothctl命令,在bluetoothctl环境下键入命令

    discoverable on //打开蓝牙可连接可被发现属性

    scan on //扫描蓝牙

    scan off //扫描到目标设备后关闭扫描

    agent NoInputNoOutput

    default-agent

    pair 目标蓝牙MAC

    quit //成功后退出

    6.使用obexctl命令与手机做收发文件实验

    obexctl,在obex环境下键入命令

    connect 目标蓝牙MAC

    若出现以下报错,则在开发板目录/etc/dbus-1/system.d/bluetooth.conf文件下增加一行

    <allow send_destination="org.bluez.obex"/>

    如图所示

    obexctl命令如下所示

    重新连接蓝牙设备就可以与手机进行收发文件的实验了

     

    最新回复(0)