Linux下基于Bluez

硬件: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 },

时间: 2024-11-15 21:50:56

Linux下基于Bluez的相关文章

Linux下基于nw音乐电台

Linux下基于nw音乐电台,希望大神改进 百度云:下载

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

MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文描述了如何在源码方式下安装MySQL. 1.安装环境及介质#安装环境SZDB:~ # cat /etc/issueWelcome to SUSE Linux Enterprise Server 10 SP3

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

[题解整理]二分题 题目类型: 二分查找: 二分答案. 大致解题思路: 查找注意有序和返回值: 浮点数注意精度: 整数注意返回值,建议另外维护一个变量,用于储存可行解. 题目 分类 传送门 WA点 poj 2785 二分查找 题解 lightoj 1088 二分查找 题解 lightoj 1307 二分查找 题解 longlong poj 2456 整数二分答案 题解 poj 3104 整数二分答案 题解 poj 3258 整数二分答案 题解 poj 3273 整数二分答案 题解 lightoj

Linux 下基于多线程服务器/客服端聊天程序源码

Linux 下基于多线程服务器/客服端聊天程序,采用阻塞的socket技术,和多线程技术实现. 客服端程序:client.c #include<stdio.h> #include<stdlib.h> #include<string.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netinet/ip.h>

Linux下基于文件描述符的文件操作(非缓冲)

1 文件描述符 内核为每个进程维护一个已打开文件的记录表(实现为结构体数组),文件描述符是一个较小的正整数(0-1023)(结构体数组下标),它代表记录表的一项,通过文件描述符和一组基于文件描述符的文件操作函数,就可以实现对文件的读.写.创建.删除等操作. 常用基于文件描述符的函数有open(打开).creat(创建).close(关闭).read(读取).write(写入).ftruncate(改变文件大小).lseek(定位).fsync(同步).fstat(获取文件状态).fchmod(权

Linux下基于多线程的echo

准备开始写一些Linux 下网络编程以及多线程的blog,就从这个简单的echo程序开始吧. 在echo的服务端使用多线程与客户进行通信,可以实现一个服务端程序同时连接多个客户的功能.那么,到底在服务端要有多少个线程呢? 答案是:1+1+n.一个主线程,一个监听(listen)线程,与n个客户进行通信的n个线程. 服务端代码: 1 #include "../unp.h" 2 #include <pthread.h> 3 4 void* str_echo(void* argv

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

蓝牙耳机的使用 由于Linux下蓝牙使用不及Windows下直观,致使使用时会出现一些小问题.虽然是小问题,但是由于普通的操作都具有顺序性,前面的中断了,后面的哪怕再简单,也无法继续了.正好近期工作与蓝牙与网络都有关,可以有时间和目标好好学习一下.闲话少说,进入正题.我使用的Fedora 9, bluez的版本是 |-- bluez-gnome-0.26-1.fc9.i386.rpm|-- bluez-gnome-analyzer-0.26-1.fc9.i386.rpm|-- bluez-gno

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

版权声明:本文为博主原创文章,欢迎扩散,扩散请务必注明出处. https://blog.csdn.net/robinson_0612/article/details/26485851 ??? MySQL为开源数据库,因此能够基于源代码实现安装. 基于源代码安装有很多其它的灵活性.也就是说我们能够针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码.依据不同的软件平台环境调整相关的编译參数,选择自身须要选择不同的安装组件,设定须要的字符集等等一些能够依据特定应用场景所作的各种调整.本文描写叙

Linux下基于libpcap的Sniffer开发

首先是平台的搭建:参考网友:http://blog.csdn.net/fengyun1989/article/details/7384899 libpcap 是unix/linux 平台下的网络数据包捕获函数包, 大多数网络监控软件都以它为基础. Libpcap 可以在绝大多数类unix 平台下工作. Libpcap 应用程序框架 Libpcap 提供了系统独立的用户级别网络数据包捕获接口,并充分考虑到应用程序的可移植性.Libpcap 可以在绝大多数类unix 平台下工作,在windows 平