安卓蓝牙启动(第四篇)

打开蓝牙就是把按钮拔过去,最简单的理解就是上电

linux蓝牙上电直接

echo 0 > /sys/class/rfkill/rfkill0/state

sleep 2

echo 1 > /sys/class/rfkill/rfkill0/state

sleep 2
 

还是在start_up上面

红框意思差不多就是

echo 0 > /sys/class/rfkill/rfkill0/state

echo 1 > /sys/class/rfkill/rfkill0/state

经常需要延时才比较稳定一些,模组的硬件要求

echo 0 > /sys/class/rfkill/rfkill0/state

sleep 2

echo 1 > /sys/class/rfkill/rfkill0/state

看看vendor->send_command

hci_layer.c->vendor.c->bt_vendor_rtk.c

这里就是调用了vendor的普通接口,vendor有两个接口,一个是普通接口,一个是回调接口主要在hardware.c

rfkill主要就是在vendor的普通接口

bt_vendor_rtk.c中的普通接口的op命令

通过调用upio.c的upio_set_bluetooth_power来控制引脚电平,所以你不用外加延时了

看看upio_set_bluetooth_power

进去upio.c

思路就是

拿到rfkill 的patch,拿到&buffer, buffer就是0或者1

通过write (fd ,&buffer,1)  写一个长度把0或者1写进去

和这个echo 0 > /sys/class/rfkill/rfkill0/state

是一样的,同样是下这个命令

所以在hci_module  start_up的时候,通过vendor下命令的方式,下发命令,和linux的方式是一样的

echo 0 > /sys/class/rfkill/rfkill0/state

delay xxx

echo 1 > /sys/class/rfkill/rfkill0/state

最后说一下那个延时是蓝牙经常需要调的地方,特别是压力测试,经常需要把时间调大,或者硬件不稳,也需要把时间调大,一般出现问题后直接丢个sleep 5秒看看再说

第五篇再说说bt rfkill驱动,里面还有唤醒引脚各种

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
r18_ap6330的步骤.txt 2017/2/9 10:47 开始整理 原始SDK默认配置为rtl8723bs,现在要修改为:AP6330。 硬件平台:全志R18。 开发板:DP-18 SDK:Android6.0.1/Linux3.10.65(v2.1版本,发布日期20161008) WIFI测试需要支持5.8G的AP来测试。BT用普通的Android手机发送图片即可。 1、请严重注意全志R18的架构选择:ARCH=arm64 rootroot@cm-System-Product-Name:/home/wwt/dp18_ap6330/lichee/linux-3.10$ rootroot@cm-System-Product-Name:/home/wwt/dp18_ap6330/lichee/linux-3.10$ make ARCH=arm64 menuconfig rootroot@cm-System-Product-Name:/home/wwt/dp18_ap6330/lichee/linux-3.10$ WIFI部分可以关闭realtek: Device Drivers ---> [*] Network device support ---> [*] Wireless LAN ---> Realtek 8723B SDIO or SPI WiFi Realtek 8723BS_VQ0 WiFi Realtek 8189F SDIO WiFi Realtek 8723C SDIO or SPI WiFi 可以配置内核打印级别为18(默认为17?) General setup ---> (18) Kernel log buffer size (16 => 64KB, 17 => 128KB) 2、 Z:\home\wwt\dp18_ap6330\android\device\softwinner\tulip-d1\BoardConfig.mk 关闭这里: # BOARD_WIFI_VENDOR := realtek 打开这里: BOARD_WIFI_VENDOR := broadcom 蓝牙的修改: ##BOARD_HAVE_BLUETOOTH_BCM := true BOARD_HAVE_BLUETOOTH_NAME := rtl8723bs_vq0 BOARD_HAVE_BLUETOOTH_RTK_COEX := true BOARD_HAVE_BLUETOOTH_RTK := true BLUETOOTH_HCI_USE_RTK_H5 := true 修改为: BOARD_HAVE_BLUETOOTH_BCM := true BOARD_HAVE_BLUETOOTH_NAME := ap6330 #BOARD_HAVE_BLUETOOTH_NAME := rtl8723bs_vq0 #BOARD_HAVE_BLUETOOTH_RTK_COEX := true #BOARD_HAVE_BLUETOOTH_RTK := true #BLUETOOTH_HCI_USE_RTK_H5 := true 3、 Z:\home\wwt\dp18_ap6330\android\device\softwinner\tulip-d1\init.sun50iw1p1.rc 蓝牙部分: #bluesleep insmod /system/vendor/modules/rtl_btlpm.ko 修改为: #bluesleep #insmod /system/vendor/modules/rtl_btlpm.ko #network insmod /system/vendor/modules/bcmdhd.ko insmod /system/vendor/modules/bcm_btlpm.ko WIFI部分: 关闭这里: # 1. realtek & eagle wifi service # 1.1 realtek & eagle wifi sta service service wpa_supplicant /system/bin/wpa_supplicant \ -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf \ -I/system/etc/wifi/wpa_supplicant_overlay.conf \ -O/data/misc/wifi/sockets \ -e
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值