Bluetooth en Linux


En la actualidad existen dos pilas relevantes dentro del mundo de Linux: BlueZ y Affix (Nokia). BlueZ es la pila oficial y donde existe una mayor comunidad, por lo que actualmente debería de ser la opción a seguir para trabajar con Bluetooth en Linux. Está integrada en el núcleo por lo que el despliegue de aplicaciones basadas en BlueZ es más sencillo.

BlueZ es una pila de protocolos que comenzó su desarrollo como código abierto el 3 de Mayo de 2001 y que, un mes después de su publicación por parte de Max Krasnyansky en Qualcomm, fue adoptada por Linus Torvalds como la pila Bluetooth de Linux, lo que significó que desde 2.4.6 Linux paso a tener su propia pila Bluetooth. Marcel Holtmann se está encargando del mantenimiento de la pila en la serie 2.6 de Linux.

BlueZ se distribuye en un conjunto de paquetes, aunque el núcleo depende de la distribución del núcleo Linux que estemos usando. El uso de la Suse 8.2 evita utilizar
algún tipo de parche, pues incluye la versión del núcleo 2.4.20, con la funcionalidad Bluetooth ya incorporada. Para versiones anteriores existen parches en la página web de
Marcel Holtmanns (http://www.holtmann.org/linux/kernel).

Además del soporte del núcleo, los paquetes que pueden usarse en función de las necesidades finales del usuario son:

 

Herramientas de Bluez

Este es demonio que se encarga de gestionar los dispositivos Bluetooth. En/etc/bluetooth encontraras el fichero hci.conf que permite definir los parámetros básicosde los dispositivos.

Es una herramienta que visualiza en pantalla todos los paquetes recibidos y enviados por un dispositivo especifico. Es particularmente útil cuando se quiera analizar el
funcionamiento de un dispositivo o depurar a bajo nivel posible problemas de protocolos de comunicación.

Es la herramienta principal de la pila Bluez. Ofrece servicios básicos como realizar un inquirí, una conexión, obtener información sobre un dispositivo remoto y
varios otros.

Permite llevar a cabo todas las operaciones de configuración. Es utilizada fundamentalmente para activar y desactivar un dispositivo y para obtener o modificar
todos los parámetros de funcionamiento.