硬件:Moto H670 蓝牙耳机 (CSR chip)/ Broadcom v2.0 adapter
软件:bluez-4.26 / bluez-gnome-1.8 / linux kernel 2.6.28

1)蓝牙耳机配对,打开你的蓝牙耳机,进入配对模式,我是用blue-wizard,就是blue-gnome这个东西来配对,实在是找不到其它方法。以前bluez-3.x 在/var/lib/bluetooth/xx/pincodes里直接写pincode就可以了,现在好像不行了,而且在配对前,最好把那个pincodes删掉,至少要把跟你蓝牙耳机地址相关的那条pincode去掉。
2)运行 bluetoothd
     第一次使用,可以在后面 加 -n -d 看调试信息
3)在HOME目录下,建立 .asoundrc这个文件,如下:

     pcm.headset {
     type bluetooth
      device "00:1A:0E:1A:0E:90"
     profile "voice"
     }
4)测试蓝牙耳机
     aplay -D headset demo.wav 或者在Skype 里选择headset就可以了

NOTE: 
    在配置中,我的蓝牙耳机,就是播放的时候,死在那里,怎么都不出声音,你可以在bluetoothd的调试信息里看到 " State changed /org/bluez/19016/hci0/dev_00_1A_0E_1A_0E_90: HEADSET_STATE_CONNECT_IN_PROGRESS -> HEADSET_STATE_CONNECTED" 也能从HEADSET_STATE_CONNECTED 到 HEADSET_STATE_PLAYING" 就是不出声音。这时候,你要看看是不是你的蓝牙适配器有问题,我的Broadcom就是如此。
你可以用lsusb 看 到你的bluetooth adapter 的DeviceID , 然后在 driver/bluetooth/btusb.c 里加上就可以了。不过也可以在modprobe btusb force_scofix=1,也能解决问题。
lsusb: 
Bus 002 Device 002: ID 0a5c:2121 Broadcom Corp. BCM2210 Bluetooth

btusb.c : 104 line
{ USB_DEVICE(0x0a5c, 0x2121), .driver_info = BTUSB_RESET | BTUSB_WRONG_SCO_MTU },

Linux下基于Bluez的更多相关文章

  1. Linux下基于LDAP统一用户认证的研究

    Linux下基于LDAP统一用户认证的研究                   本文出自 "李晨光原创技术博客" 博客,谢绝转载!

  2. Linux下基于.NET5开发CAX应用

    <<.NET5下的三维应用程序开发>>一文中介绍了如何在.NET5下使用AnyCAD开发应用程序.相比.NET4.x,.NET5一大进步便是可以跨平台,即可以在Linux.Ma ...

  3. Linux下基于LVM调整分区容量大小的方法

    Linux下调整分区容量大小的方法(适用于centos6-7) 说明:以下方法均使用centos6.9和centos7.4进行测试. Centos6分区容量调整方法 1.web分区空间不足,新添加一块 ...

  4. Linux下基于多线程的echo

    准备开始写一些Linux 下网络编程以及多线程的blog,就从这个简单的echo程序开始吧. 在echo的服务端使用多线程与客户进行通信,可以实现一个服务端程序同时连接多个客户的功能.那么,到底在服务 ...

  5. Linux 下蓝牙bluez分析及使用 (1)

    蓝牙耳机的使用 由于Linux下蓝牙使用不及Windows下直观,致使使用时会出现一些小问题.虽然是小问题,但是由于普通的操作都具有顺序性,前面的中断了,后面的哪怕再简单,也无法继续了.正好近期工作与 ...

  6. Linux下基于源代码方式安装MySQL 5.6

    MySQL为开源数据库,因此能够基于源代码实现安装.基于源代码安装有很多其它的灵活性. 也就是说我们能够针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码.依据不同的软件平台环境调整相关的编译 ...

  7. Linux下基于PAM机制的USB Key的制作

    摘自:https://server.zzidc.com/fwqpz/157.html USB Key这个概念最早是由加密锁厂家提出来的,加密锁是用来防止软件盗版的硬件产品,加密锁的概念是使安装在计算机 ...

  8. Linux下基于HTTP协议带用户认证的GIT开发环境设置

    Git 的访问可以采用 HTTP 或 SSH 协议安全的访问,通常我们使用 gitlib 进行 Web 管理,但是在 Linux 命令行开发环境下,基本都是使用 SSH 协议,只需要在 gitlib ...

  9. Linux下基于Erlang的高并发TCP连接压力实验

    1.实验环境: 联想小型机: 操作系统:RedHat Enterprise LinuxServer release6.4(Santiago) 内核版本号:Linux server1 2.6.32-35 ...

随机推荐

  1. 蓝牙简单配对(Simple Pairing)协议及代码流程简述

    kangear注: 文章转自:http://blog.csdn.net/myxmu/article/details/12217135 原文把图给搞丢了.可是文章太好了,这个时候我就发挥多年的Googl ...

  2. 适合前端开发的 Chrome 扩展有哪些?(十款)

    适合前端开发的 Chrome 扩展有哪些?(十款) 一.总结 好的插件或者框架对程序员的意义重大. 二.适合前端开发的 Chrome 扩展有哪些?(十款) 掘金是一个高质量的技术社区,从 ECMASc ...

  3. J2EE学习篇之--JQuery技术具体解释

    前面我们解说了的J2EE的技术都是服务端的技术,以下我们来看一下前端的一些开发技术,这一篇我们来看一下jQuery技术 简单介绍: jQuery由美国人John Resig创建,至今已吸引了来自世界各 ...

  4. Windows下启动ActiveMq端口被占用的解决办法

    cd /D E:\RuntimeSoft\apache-activemq-5.11.0\binactivemq.bat start结果提示:端口号被占用. Windows下查看端口号被占用开始--运行 ...

  5. java及jdbc与sql之间日期的转换

    javaSE中主要为日期字符串和日期对象之间的转换 JDBC中主要是util中Date与sql中作为数据库中Date的转换 public class DateDemo { public static ...

  6. [转载]Android Studio卡在refreshing gradle project的原因和快速解决办法

    转载请注明出处:http://blog.csdn.net/u013005791/article/details/60143750 这个问题遇到过很多次,网上也有很多解决办法,但是好像都没有发现refr ...

  7. 在当前页获取父窗口中母版页中的服务器控件的ID

    parent.document.getElementById("ctl00_ContentPlaceHolder1_txt_name").value=""; A ...

  8. Android ActionBar相关

    1.Android 5.0 删除ActionBar下面的阴影 于Android 5.0假设你发现的ActionBar下面出现了阴影,例如,下面的设置,以消除阴影: getActionBar().set ...

  9. url操作等

    取得url ?及以前: baseUrl = url.substr(0,url.indexOf('?')+1) searchParam = searchParam.slice(0, -1);//去掉最后 ...

  10. JDK源代码学习系列03----StringBuffer+StringBuilder

                         JDK源代码学习系列03----StringBuffer+StringBuilder 因为前面学习了StringBuffer和StringBuilder的父类 ...