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
- Un adaptador (dongle) Bluetooth interno o USB (USB, alrededor de USD $1)
- Un receptor de audio Bluetooth A2DP (Alrededor de USD $10)
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 ...