Como todos sabemos, Bluetooth es un protocolo inalámbricos de los más populares y ha estado disponible en teléfonos inteligentes, computadoras y otros dispositivos durante la última década. La mayoría de nosotros estamos ya familiarizados con Bluetooth y cómo Bluetooth puede permitirnos conectar el auricular y hacer llamadas usando nuestros teléfonos celulares. El crecimiento explosivo de los dispositivos Bluetooth forzó a Bluetooth SIG y otras empresas a darse cuenta de que Bluetooth consumía demasiada energía y además tardaba demasiado en conectarse en algunas aplicaciones. De modo que han implementado Bluetooth Low Energy, o BLE. Así que ahora vamos a repasar los conceptos básicos de Bluetooth Low Energy (BLE Basics). He dividido el tutorial en dos partes. En esta Parte 1, veremos las cosas más básicas sobre BLE.
En estos tutoriales de Electroddady vamos a mantener siempre que sea posible la nomenclatura de los términos originales en inglés, por que esto ayuda a consolidar la terminología que se usa en la vida real y además por que muchos de estos términos no tienen una traducción al castellano satisfactoria.
También puede leer BLE Parte-2
Conceptos básicos de Bluetooth de baja energía (BLE)
Bluetooth Low Energy también se denomina BLE o Bluetooth Smart. Cuando Bluetooth lanzó la especificación principal de Bluetooth 4.0, introdujeron BLE. En realidad, Nokia ya inició el BLE como un proyecto que alguna vez se llamó «Wibree«, y se introdujo allá por 2006 con ese nombre, Wibree. En 2010, el Grupo de Interés Especial de Bluetooth fusionó Wibree en el estándar Bluetooth como parte de la especificación central 4.0. Aunque es una parte de la misma especificación, BLE por sí solo no es compatible con versiones anteriores de Bluetooth, por lo que no podemos tratarlo como si fuese el mismo protocolo que Bluetooth.
Hoy en día todo el mundo tiene un teléfono inteligente. Por lo tanto, BLE puede comunicarse con una gran cantidad de dispositivos móviles. En la actualidad, los teléfonos que ejecutan Android, OS X, Windows Phone, iOS y BlackBerry, así como Linux y Windows 8, son compatibles con BLE. Esto significa que puede integrar su proyecto fácilmente para lograr hacer una comunicación multiplataforma. La principal gran ventaja del BLE es que se diseñó para consumir muy poca energía. BLE, a diferencia del estándar Bluetooth clásico, está diseñado para reducir el consumo de energía, lo que permite que su dispositivo BLE funcione durante meses o años con una pequeña batería de tipo botón. Ahora aprendamos el funcionamiento básico de BLE.
Partes constitutivas de un dispositivo Bluetooth
Hay tres bloques de construcción principales en cada dispositivo Bluetooth.
- Aplicación
- Host
- Controlador
Aplicación
Es la aplicación de usuario que interactúa con la pila de protocolos Bluetooth para cubrir un caso de uso en particular.
Host
Las capas superiores de la pila del protocolo Bluetooth.
Controlador
Las capas inferiores de la pila del protocolo Bluetooth, incluida la radio.
Además, la especificación proporciona un protocolo de comunicaciones estándar entre el host y el controlador. Esa es la interfaz de controlador de host (HCI, host controller interface). Se utiliza para permitir la interoperabilidad entre hosts y controladores producidos por diferentes empresas.
Estas capas se pueden implementar en un solo circuito integrado (SoC) o chip, o se pueden dividir en varios IC conectados a través de una capa de comunicación (UART, USB, SPI u otra).
Rendimiento de datos
La velocidad de modulación de la radio Bluetooth Low Energy se establece según la especificación en 1 Mbps constante. Este, por supuesto, es el límite superior teórico. En la práctica, puede esperar entre 5 y 10 KB por segundo, según las limitaciones de los dispositivos utilizados.
Rango de operación
El alcance real de cualquier dispositivo inalámbrico depende de una amplia variedad de factores (entorno operativo, diseño de la antena, carcasa, orientación del dispositivo, etc.), pero como era de esperar, Bluetooth Low Energy se centra en la comunicación de muy corto alcance. Es posible crear y configurar un dispositivo BLE que pueda transmitir datos de manera confiable a 30 metros o más en línea de visión, pero un rango operativo típico probablemente esté más cerca de 2 a 5 metros. Por supuesto, cuanto mayor sea el rango, mayor será el consumo de batería, así que tenga cuidado cuando intente ajustar su dispositivo para un rango de alcance más alto.
Topología de la red
Un dispositivo Bluetooth de baja energía puede comunicarse con el mundo exterior de dos formas:
- Broadcasting (Radiodifusión)
- Conexiones
Broadcasting
¿Has oído hablar del término broadcasting? ¿Qué es? Exactamente. Broadcasting significa enviar datos a más de un miembro. Lo mismo aquí también. La transmisión es el acto de enviar datos a todos los dispositivos de escucha que estén en cobertura. Con la transmisión sin conexión, puede enviar datos a cualquier dispositivo de escaneo o receptor en el rango de escucha. Vea la imagen de abajo.
Este mecanismo esencialmente le permite enviar datos en un solo sentido a cualquier persona o cualquier cosa que sea capaz de recoger los datos transmitidos.
- Broadcaster
- Observador
Broadcaster
Envía periódicamente paquetes publicitarios (advertising) no conectables a cualquier dispositivo que desee recibirlos.
Observer
Escanea cíclicamente las frecuencias preestablecidas para recibir cualquier paquete publicitario (advertising) no conectable que se esté transmitiendo actualmente.
Cada paquete advertising puede transportar hasta 31 bytes de carga útil de datos publicitarios (advertising), junto con la información básica del encabezado (incluida la dirección del dispositivo Bluetooth). Dichos paquetes simplemente son transmitidos a ciegas por el aire por el anunciante sin el conocimiento previo de la presencia de ningún dispositivo de escaneo. Los paquetes de publicidad pueden contener campos con información adicional. Cuando un observador recibe un paquete de advertising puede solicitar más datos a través de un Scan Request y el Broadcaster responderá con un Scan Response que consta de otros 31 bytes más de información.
Con la introducción del nuevo Bluetooth Low Energy 5.1, el Broadcaster puede enviar hasta 251 bytes en los paquetes advertising.
La transmisión es rápida y fácil de usar, y es una buena opción si desea enviar solo una pequeña cantidad de datos en un horario fijo o en varios dispositivos.
Nota : una limitación importante de esta transmisión, en comparación con una conexión normal, es que no hay disposiciones de seguridad o privacidad (cualquier dispositivo observador puede recibir los datos que se transmiten), por lo que es posible que no sea adecuado para datos sensibles.
Conexiones
Si necesita transmitir datos en ambas direcciones, o si tiene más datos de los que pueden admitir las dos cargas publicitarias, deberá utilizar una conexión. Una conexión es un intercambio de datos permanente y periódico de paquetes de datos entre dos dispositivos.
Las conexiones involucran dos roles separados:
- Central / Maestro
- Periférico / esclavo
Central / Maestro
Los dispositivos centrales suelen ser teléfonos inteligentes o PCs que suelen tener una mayor potencia de procesamiento de CPU. Este dispositivo central escanea repetidamente las frecuencias particulares en busca de paquetes publicitarios. Si encuentra paquetes adecuados, iniciará la conexión. Una vez que se establece la conexión, es el central quien gestiona la sincronización e inicia los intercambios periódicos de datos.
Periférico / esclavo
Los dispositivos periféricos suelen ser algunos sensores o dispositivos de baja potencia, que se conectan al dispositivo central. Entonces este dispositivo periférico envía los paquetes publicitarios periódicamente. Y también acepta la conexión entrante. Una vez entra en una conexión activa, el periférico sigue la sincronización de la central e intercambia datos regularmente con él.
Veamos el procedimiento de conexión a continuación:
- Los dispositivos periféricos envían periódicamente los paquetes publicitarios.
- Los dispositivos centrales escanean los paquetes publicitarios de los dispositivos periféricos cercanos.
- Si el dispositivo central encuentra un paquete publicitario adecuado, envía las solicitudes de conexión al dispositivo periférico.
- Los dispositivos periféricos aceptan la conexión entrante.
- Después de establecer la conexión, el dispositivo periférico detiene la publicidad y sigue al dispositivo central.
- Ahora, dos dispositivos pueden intercambiar datos en dos direcciones.
A partir de la versión 4.1 de la especificación, se han eliminado todas las restricciones sobre las combinaciones de roles y todas las siguientes son posibles:
- Un dispositivo puede actuar como central y periférico al mismo tiempo.
- Una central se puede conectar a múltiples periféricos.
- Un periférico se puede conectar a múltiples centrales.
En el siguiente diagrama, he explicado los modos de publicidad y conexión.
Estos son a grosso modo todos los conceptos básicos de Bluetooth Low Energy (BLE). Ahora profundizaremos un poco. Comencemos la pila de protocolos de Bluetooth de baja energía (BLE).
Pila de protocolo BLE
BLE, como muchas otras tecnologías de transmisión inalámbricas, está organizado en varias capas. Cada capa tiene su propósito y desempeña un papel importante para que un dispositivo BLE funcione correctamente. Como discutimos antes, hay tres bloques de constitutivos presentes en BLE.
- Application
- Host
- Controller
Cada uno de estos bloques de construcción básicos de la pila de protocolos Ble se divide en varias capas que brindan la funcionalidad requerida para operar:
Application
La aplicación, como en todos los otros tipos de sistemas, es la capa más alta y la responsable de contener la lógica, la interfaz de usuario y el manejo de datos de todo lo relacionado con el caso de uso real que implementa la aplicación. La arquitectura de una aplicación depende en gran medida de cada implementación en particular.
Host
El host contiene las siguientes capas.
- Perfil de acceso genérico (GAP)
- Perfil de atributo genérico (GATT)
- Protocolo de adaptación y control de enlace lógico (L2CAP)
- Protocolo de atributos (ATT)
- Gerente de seguridad (SM)
- Interfaz de controlador de host (HCI), el lado del host
Controlador
El controlador contiene las siguientes capas.
- Interfaz de controlador de host (HCI), lado del controlador
- Capa de enlace (LL)
- Capa física (PHY)
Pila de protocolos Bluetooth Low Energy
Ahora que sabemos un poquito más sobre los conceptos básicos de Bluetooth Low Energy en nuestra siguiente parte (Parte 2) veremos todo el protocolo, pila y capas BLE. Espero que disfrutes de este tutorial.