Depois de alguns dias de luta com o Ubuntu falhando frequentemente, finalmente funcionou.
Abaixo estão os passos que tentei. Por favor, tome isso como referência, pois há grandes chances de eu ter esquecido de escrever alguns passos
............................................... .................................................. .. Visão geral de um problema: Tentando conectar o sistema operacional Linux ao fone de ouvido BT e estabelecer um link para reproduzir música
Configuração do UBuntu: Versão do kernel: 3.0.0-32-generic Ubuntu Verion - > 11.10
Dispositivo de teste: fone de ouvido JABRA EASY GO .. .................................................. ............................ 1) Instale a versão acima do Ubuntu. Essa versão do Ubuntu está sem suporte, mas como o meu dispositivo interno usa quase a mesma versão do kernel, eu fiquei com essa versão.
2) Configure a lista de fontes do apt-get. Como a versão instalada está fora de suporte, o apt-get não funcionará. Para fazê-lo funcionar, modifique o /etc/apt/sources.list. exemplo- >
sudo sed -i-e / archive.ubuntu.com \ | security.ubuntu.com/old-releases.ubuntu.com/g '/etc/apt/sources.list
sudo apt-get update & & sudo apt-get dist-upgrade 3) Eu recomendaria instalar o synaptic também para instalar pacotes e bibliotecas ausentes.
4) Instale os seguintes pacotes - >
bluez-hcidump
bluez-utils
libbluetooth1
libbluetooth1-dev
install automake-1.7 and autoconfig
cvs
5) Google para baixar o código-fonte da btsco ou, alternativamente,
use o seguinte comando
cvs -d: pserver: [email protected]: / cvsroot / login-bluetooth-alsa cvs -d: pserver: [email protected]: / cvsroot / bluetooth-alsa co btsco 6) AGORA COMPILING E INSTALANDO
i) vá para o diretório btsco
ii) problemas ./bootstrap: se erro / aviso: macro 'AM_PATH_SDL' não encontrado na biblioteca install libbsdl1.2-dev
uma vez que o bootsrap passou, execute configure ii) ./configure issues:
se bluetooth / bluetooth .h faltando - > instale o libbluetooth-dev exigência de pacote dbus-1 > = 0,36 não atende & dbus-glib não encontrado - > install libdbus-glib-1-dev iii) fazer
problemas: ./libtool: linha 841: X - tag = CXX: comando não encontrado e muitos mais erros como este
Para resolver esse erro: faça o download da bola tar da libtool-1.5.24. extraí-lo e configurar e fazer. Agora, novamente, configure no btsco e copie o libtool executável do libtool dir para btsco.
iv) make install v) make O / p do mainatiner-clean: o btsco é construído com sucesso e você pode encontrá-lo em / usr / local / bin.
7) Criar módulo do Kernel
i) cd / usr / src / btsco / kernel
ii) faça
problemas: Eu suponho que você terá uma lista enorme de erros. abra btsco.c e lidar com cada erro passo a passo
1 erro som / driver.h não foi encontrado bla bla - > comentar isso no arquivo btsco.c 2 comentário #incluir como isso é obsoleto agora 3) adicione
# incluir < linux / smp.h > # include < linux / muxtex.h > 4) DEFINE_MUTEX (os_mutex);
5) snd_assert é obsoleto, então substitua uit por se o exemplo de instrução
if (bt_sco- > reprodução == NULL) {
6) substitua kill_proc (novamente obsoleto) por função abaixo de 9 copiados de net .. tahnks para esse cara) link: link
int my_kill_proc (pid_t pid, int sig) {
int erro = -ESRCH; / * valor de retorno padrão /
struct task_struct p;
struct task_struct * t = NULL;
struct pid * pspid;
rcu_read_lock ();
p = & init_task; / * start at init /
Faz {
if (p- > pid == pid) {/ o pid (não tgid) coincide? /
t = p;
pausa;
}
p = next_task (p); / "esta não é a tarefa que você procura" /
} while (p! = & init_task); / pare quando voltarmos ao init * /
if (t! = NULL) {
pspid = t- > pids [PIDTYPE_PID] .pid;
if (pspid! = NULL) erro = kill_pid (pspid, sig, 1);
}
rcu_read_unlock ();
erro de retorno;
}
e então, em vez de kill_proc, deve ser
my_kill_proc (bt_sco- > thread_pid, SIGINT)
6) substitua% d para% lu por erro long int
7) substitua lock_kernal por mutex_lock (& os_mutex) mesmo para desbloquear
esperamos que o sucesso seja bem sucedido depois disso
8) faça a instalação 9) depmod -e 10 0 make clean
11) modprobe snd_bt_sco
......................................
Agora execute o btsco
a) hciconfig hci0 voz 0X0060
b) varredura hcitool
obtenha o mac_addre4ss do JABRA
c) / usr / local / bin / btsco -r -v mac_addrees
se obtiver erro?: control open (hw: 1), então o jabra não suporta sco ou o módulo do kernel não está carregado
d) em outro terminal fazer - > sudo hcidump -i hci0 sco para monitorar pacotes de sco
e) uma vez estabelecida a conexão jabr, rode aplay -D plughw: Headset /home/my_home_dir/my_sample_fiile.wav