.: Regresar al Inicio :.

Audífonos inalámbricos en Linux con Bluetooth

Es muy fácil, barato y rápido configurar un receptor de audio A2DP en Linux.

Requisitos

Obtener dirección física del receptor de audio

hcitool scan
Scanning ...
        XX:XX:XX:XX:XX:XX       BCK-08

Configurar /etc/asound.conf

Nótese el nombre pcm.bluetooth, es el que se usará como identificador en ALSA.
pcm.bluetooth 
{
 type plug
 slave 
 {
  pcm 
  {
   type bluetooth 
   device XX:XX:XX:XX:XX:XX
   profile "auto"
  }
 }

 hint
 {
  show on
  description "BCK-08 Bluetooth Headset"
 } 
}

Establecer pares

En una consola adicional, ejecutar bluez-simple-agent, que se quedará esperando...
Agent registered
RequestPinCode (/org/bluez/10870/hci0/dev_XX_XX_XX_XX_XX_XX)
Enter PIN Code: 0000

Establecer conexión

En el momento en que se planea establecer la conexión, en la consola donde bluez-simple-agent se está ejecutando, se solicitará el PIN.
hcitool cc XX:XX:XX:XX:XX:XX

Probar

Usando el nombre que se definió en /etc/asound.conf (bluetooth), lo podemos probar con:
mplayer -ao alsa:device=bluetooth musica_o_pelicula.data

Hardware usado

Como es un pequeño experimento, el hardware es muy barato, la distancia máxima sin obstáculos de por medio es de unos 5 metros entre los dos aparatos y los utilizo principalmente para ver películas o escuchar la colección de música de la computadora con una mayor libertad de movimiento.

Bluetooth Clip BCK-08

Este aparato es muy barato (Alrededor de USD $10 en eBay), la batería dura unas 4 horas, y la calidad del sonido depende principalmente de los audífonos que se utilicen, entonces se puede obtener una calidad de sonido aceptable a muy bajo costo.

Esta es la salida de hcitool info, que menciona que el diseño es de Integrated System Solution Corp., posiblemente el IC IS1621N:

Requesting information ...
	BD Address:  XX:XX:XX:XX:XX:XX
	Device Name: BCK-08
	LMP Version: 2.1 (0x4) LMP Subversion: 0x5209
	Manufacturer: Integrated System Solution Corp. (57)
	Features: 0xbf 0xff 0xff 0xf8 0x88 0x3d 0x19 0x82
		<3-slot packets> <5-slot packets> <encryption> <slot offset> 
		<timing accuracy> <role switch> <sniff mode> <park state> 
		<RSSI> <channel quality> <SCO link> <HV2 packets> 
		<HV3 packets> <u-law log> <A-law log> <CVSD> <paging scheme> 
		<power control> <transparent SCO> <broadcast encrypt> 
		<enhanced iscan> <interlaced iscan> <interlaced pscan> 
		<inquiry with RSSI> <extended SCO> <AFH cap. slave> 
		<3-slot EDR ACL> <5-slot EDR ACL> <pause encryption> 
		<AFH cap. master> <AFH class. master> <EDR eSCO 2 Mbps> 
		<extended inquiry> <simple pairing> <encapsulated PDU> 
		<inquiry TX power> <extended features> 

Mini Adaptador (dongle) Bluetooth USB

Tan baratos que son casi regalados, y funcionan muy bien. Para configurarlos en Linux solo se necesita tener instalado BlueZ y levantar los servicios correspondientes, por ejemplo, en ArchLinux sería:

/etc/rc.d/bluetooth start

Esta es la salida parcial de lsusb -v, que menciona que el chip es diseño de Cambridge Silicon Radio:

Bus 005 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 Bluetooth
  bMaxPacketSize0        16
  idVendor           0x0a12 Cambridge Silicon Radio, Ltd
  idProduct          0x0001 Bluetooth Dongle (HCI mode)
  bcdDevice            1.34
  iManufacturer           0 
  iProduct                0 
  iSerial                 0 
  bNumConfigurations      1
  ...
.: Regresar al Inicio :.