Comprender el protocolo Bluetooth Stack y sus componentes para ingenieros incrustados

La tecnología Bluetooth se ha convertido en una piedra angular de la comunicación inalámbrica en sistemas integrados, lo que permite que todo desde auriculares inalámbricos y sensores inteligentes para el hogar se vincule con datos industriales. Para desarrollar productos Bluetooth robustos y eficientes en potencia, los ingenieros incrustados deben navegar por la pila de protocolos que rige cómo los datos viajan desde la aplicación a onda de radio y hacia atrás.

En las secciones siguientes, descomponemos la pila de protocolo Bluetooth de la radio física a través de perfiles de aplicaciones. También destacamos las consideraciones clave para los diseñadores integrados, incluyendo la gestión de energía, seguridad, y las últimas mejoras introducidas en Bluetooth 5.0, 5.1, 5.2, y LE Audio.

Arquitectura del sistema Bluetooth: Host and Controller

Las implementaciones Bluetooth modernas partipan el protocolo a dos bloques principales: el Controller] y el Host. Esta división está formalizada por la Interfaz de Controlador de Host (HCI), que estandariza la comunicación entre ellos. Entender esta división es crucial para los ingenieros integrados porque determina la partición de hardware/software e influye en el diseño.

El Contralor

El controlador maneja las capas inferiores de la pila: Radio, Baseband, Link Manager (en Classic Bluetooth), o Link Layer (en Bluetooth Low Energy). Se implementa normalmente en un chip dedicado o se integra en la radio periférica de un microcontrolador. El controlador es responsable de las tareas en tiempo real de transmisión de paquetes, acoplamiento de frecuencias, encriptación y mantenimiento de enlaces.

El anfitrión

El host se ejecuta en la CPU principal del sistema integrado y contiene los protocolos de capas superiores: L2CAP, SDP, GATT (para LE), RFCOMM (para Clásico), y los perfiles de aplicación. El host se comunica con el controlador a través de paquetes HCI sobre UART, SPI, Bluetooth o USB. Los ingenieros que escriben firmware para el host deben gestionar los parámetros de conexión, el amortiguamiento de datos y la lógica de perfil específico.

Capa 1: La radio (Capa de la Physical)

La capa de radio es la base de Bluetooth. Define cómo las bits se modulan en ondas de radio, las bandas de frecuencia utilizadas y los niveles de potencia de transmisión.

Banda y canales de frecuencia

Bluetooth opera en la banda ISM de 2.4 GHz (2400–2483.5 MHz). Bluetooth clásico utiliza 79 canales separados 1 MHz, mientras que Bluetooth Low Energy utiliza 40 canales (37 canales de datos + 3 canales de publicidad) separados 2 MHz. El espectro de transmisión de frecuencias (FHSS) se emplea para reducir la interferencia de las fuentes Wi-Fi, Zigbee y otras 2.4 GHz.

La selección de canales y secuencia de acaparamiento es gestionada por la capa Baseband/Link. Los ingenieros embedidos deben garantizar la precisión de la radio (normalmente dentro de ±20 ppm para Classic, ±50 ppm para LE) para mantener un enlace confiable. La temperatura y el envejecimiento de los osciladores de cristal pueden causar deriva, que a menudo requiere rutinas de calibración de frecuencia automática.

Modulación y Tasas de Datos

Bluetooth clásico utiliza el sistema de control de frecuencias gais (GFSK) para los modos de tasa básica (BR) a 1 Mb/s, y puede cambiar a π/4-DQPSK o 8DPSK para modos de tasa de datos mejorados (EDR) (hasta 3 Mb/s). Bluetooth Low Energy utiliza GFSK con una tasa de símbolo de 1 sintético/s, dando una tasa de datos brutos de 1 Mb

Al elegir un PHY, el diseñador integrado debe cambiar la potencia, el consumo de energía y el rango. Por ejemplo, LE 2M PHY puede doble rendimiento pero puede consumir un poco más potencia por bit y ofrece un rango ligeramente más corto que LE 1M PHY. LE Coded PHY puede alcanzar hasta cuatro veces el rango, lo que lo hace ideal para redes de sensores de largo alcance.

Clases de potencia y rango

Bluetooth define tres clases de potencia para los transmisores:

  • Clase 1 (100 mW, +20 dBm) – hasta 100 metros
  • Clase 2 (2.5 mW, +4 dBm) – hasta 10 metros (más común en dispositivos móviles)
  • Clase 3] (1 mW, 0 dBm) – hasta 1 metro

Las implementaciones de clase 1 requieren una red de coincidencia y a menudo un amplificador de potencia externo. Para dispositivos integrados impulsados por batería, Clase 2 o Clase 3 son típicos para cubrir presupuestos de energía. La potencia de salida puede ser ajustada dinámicamente a través del Administrador de Enlace para reducir la interferencia y ahorrar energía.

Capa 2: Base de banda (Clásica) o capa de enlace (LE)

La capa de banda base (Clásico) y capa de enlace (LE) manejan el tiempo, el formato de paquete y el control de la radio. Son el corazón del protocolo de bajo nivel de Bluetooth.

Piconetas y estampas (Clásico)

En Classic Bluetooth, la comunicación se produce dentro de un piconet]: un maestro y hasta siete esclavos activos. El maestro establece la secuencia de frecuencias y el calendario de votación. Un dispositivo puede participar en múltiples piconets, formando una esparcir, aunque raramente se utiliza en la práctica debido a la complejidad. La capa de enlace en LE sólo soporta una topología estrella simple (un centro, múltiples implementos periféricos) y

Tipos de enlace y Formatos de paquete

Bluetooth clásico soporta dos tipos de enlaces físicos:

  • Synchronous Connection-Oriented (SCO)] – tiempo reservado para datos isocronos como el audio (por ejemplo, eSCO para una mayor fiabilidad).
  • Conexión-Less (ACL)] – datos de paquete-switched para la mayoría de las aplicaciones.

Bluetooth LE solo utiliza canales de datos orientados a la conexión con una estructura de paquetes que consiste en un preámbulo, dirección de acceso, PDU y CRC. La dirección de acceso (32 bits) identifica la conexión y reduce considerablemente la posibilidad de cruzar en escenarios de ubicación conjunta.

Paquete de Timing

En Classic Bluetooth, el tiempo se divide en ranuras de 625μs. El maestro transmite en ranuras incluso; el esclavo responde en ranuras extrañas. En LE, el intervalo de conexión se negocia y puede variar de 7,5 ms a 4 segundos. Un intervalo más corto reduce la latencia pero aumenta el consumo de energía. Los ingenieros embedidos deben elegir los parámetros de conexión que cumplen con requisitos de rendimiento y latencia mientras mantienen el ciclo de servicio bajo.

Sobre la Baseband se encuentra el Link Manager (LM) en Classic Bluetooth, que implementa el Protocolo Link Manager (LMP). En LE, las funciones de control de enlaces se integran en la capa de enlace en sí, pero existen los mismos objetivos: configuración de enlaces, seguridad y gestión de energía.

Configuración de enlaces y Tuning

El LM negocia parámetros de conexión como los tipos de paquetes, la configuración de control de potencia y el uso de paquetes de varios bloques. También maneja el cambio de roles (por ejemplo, intercambio de master/esclavo) y la transición entre los modos de sniff/subrating y activos. Para LE, la mayoría de estos parámetros se establecen durante el establecimiento de conexión a través del procedimiento LL CONNECTION UPDATE REQ.

Procedimientos de seguridad

La seguridad Bluetooth ha evolucionado significativamente. El Administrador de Enlace maneja la combinación, autenticación y generación de claves de cifrado. Para Classic Bluetooth, el modelo de seguridad incluye pareado PIN o par simple seguro (SSP). Para LE, el Protocolo de Administrador de Seguridad (SMP) se ejecuta por encima de la capa de enlace (en el host).

Control de potencia

La capa LM/Link ajusta la potencia de transmisión basada en la fuerza de señal recibida (RSSI). Este control de apertura cerrada ahorra energía y reduce la interferencia. Algunos chips permiten que la aplicación influya en la política de control de potencia a través de comandos HCI, que pueden ser útiles para la optimización de rangos personalizados.

La Interfaz de Controlador de Host (HCI)

El HCI es un protocolo serial estandarizado que define cómo se comunica el Host y Controller. Normalmente se ejecuta sobre UART (utilizando el transporte H4), USB o SDIO. El HCI transporta tres tipos de paquetes: Comando, Evento y Datos (ACL y SCO).

Comprender HCI es esencial para los ingenieros integrados porque muchas herramientas de depuración (por ejemplo, el Packet Sniffer de TI, el NRF Sniffer de Nordic) capturan el tráfico HCI para revelar lo que está haciendo la pila. Al escribir código Host-side, el desarrollador debe formatear correctamente paquetes de comandos HCI, eventos de respuesta parse, y gestionar el flujo de datos.

Protocolos de capa superior (Host)

La capa Host contiene protocolos que proporcionan canales de comunicación estructurados para aplicaciones.

Protocolo de control y adaptación de los vínculos lógicos (L2CAP)

L2CAP multiplexa múltiples canales lógicos sobre una única conexión ACL. Proporciona segmentación y reajuste de paquetes, así como parámetros de calidad de servicio (QoS). En Classic Bluetooth, L2CAP también soporta canales orientados a la conexión (con control de flujo basado en el crédito) y canales sin conexión (para las transmisiones).

Protocolo de atributo y perfil de atributo genérico (ATT/GATT)

Para Bluetooth LE, el GATT define una forma estructurada de exponer los servicios y características de los datos. El Protocolo de Atributo (ATT) proporciona el mecanismo de servidor cliente: un servidor del GATT almacena atributos (servicios, características, descriptores), y un cliente del GATT los lee/escribe. Esta arquitectura es fundamental para aplicaciones LE como monitores de frecuencia cardíaca, sensores ambientales y beacons de proximidad.

Los ingenieros incrustados que diseñan un servidor del GATT deben definir la tabla de atributos en firmware, manejar solicitudes de lectura/escritura y enviar notificaciones o indicaciones al cliente. Para dispositivos propulsados por batería, se prefieren actualizaciones iniciadas por servidor (notificación) sobre la votación para reducir los eventos de radio.

Service Discovery Protocol (SDP) and Generic Access Profile (GAP)

Classic Bluetooth utiliza SDP para descubrir los servicios disponibles en un dispositivo remoto. LE utiliza GAP para manejar el descubrimiento de dispositivos (advertir y escanear) y el establecimiento de conexión. GAP define roles tales como Broadcaster, Observer, Peripheral y Central. La carga de pago de publicidad (31 bytes en LE 4.0-4.2, extendido hasta 1650 bytes en Bluetooth 5.0 ADI) contiene banderas, nombre de dispositivo y cantidad de servicio de publicidad eficiente.

RFCOMM y OBEX (Clásico)

RFCOMM emula puertos serie RS‐232 sobre L2CAP, permitiendo la comunicación serial heredada. OBEX proporciona intercambio de objetos (por ejemplo, transferencias de archivos). Estos protocolos siguen siendo ampliamente utilizados para dispositivos integrados heredados como escáneres de código de barras o herramientas de diagnóstico.

Perfiles Bluetooth

Los perfiles definen cómo se combinan protocolos para realizar un caso de uso específico. Son esenciales para la interoperabilidad. Algunos perfiles comunes incluyen:

  • Perfil libre de mano (HFP) – para la comunicación de voz en auriculares y kits de coche.
  • Dispositivo de interfaz humano (HID)] – para teclados, ratones, controladores de juego.
  • Perfil de Control Remoto de audio/vídeo (AVRCP)] – para el control de reproductores de audio/video.
  • Perfil de dispositivos de salud (HDP)] – para sensores médicos.
  • Servicio de Sensación Ambiental (ESS) – un servicio del GATT para la temperatura, la humedad, la presión.
  • Perfil de presión de sangre (BPP)] – estándar para monitores de presión arterial.

Al seleccionar un perfil, los ingenieros deben preferir perfiles que coincidan con el estándar para evitar el desarrollo personalizado y asegurar un emparejamiento fácil con teléfonos o computadoras. Para LE, los perfiles basados en el GATT definidos por el SIG Bluetooth (o perfiles personalizados) se implementan normalmente utilizando una pila que proporciona una API del GATT.

Mejoras Bluetooth 5.x

La especificación Bluetooth Core 5.0, 5.1, 5.2, y 5.3 han introducido varias características que impactan significativamente el diseño del sistema integrado.

LE Advertising Extensions

Bluetooth 5.0 publicidad extendida permitiendo grandes cargas de pago (hasta 1650 bytes) y canales de publicidad auxiliar utilizando publicidad periódica. Esto permite una transferencia de datos más robusta y sin conexión (por ejemplo, servicios de malla BLE y de ubicación).El concepto de identificadores de conjuntos publicitarios (ADI) y canales de publicidad secundaria requiere una programación cuidadosa en la capa de enlace para evitar colisiones.

LE Coded PHY y 2M PHY

Como se ha señalado anteriormente, el Coded PHY cuadruple el rango al encoder cada bit con múltiples símbolos (S=2 o S=8) y añadir FEC. El 2M PHY duplica la entrada. Ambos requieren soporte de hardware subyacente; no todos los chips los implementan. Al diseñar un producto, verificar que el Controlador seleccionado soporta el PHY deseado es crucial.

Ángulo de llegada / Ángulo de salida (AoA/AoD)

Bluetooth 5.1 añadido dirección encontrando mediante la obtención de antenas de palanca y muestreo IQ. Esto permite sistemas de ubicación en tiempo real (RTLS) con precisión de sub-meter. La capa de Enlace inserta una extensión de tono constante especial (CTE) después de la carga útil de paquetes, y el receptor registra muestras IQ para el cálculo de ángulo.

LE Isochronous Channels and LE Audio

Bluetooth 5.2 introdujo LE Isochronous Channels para una transmisión fiable y de baja latencia. Esta es la base de la nueva arquitectura LE Audio. El códec LC3 proporciona una calidad de audio superior a los bitrates más bajos en comparación con SBC. LE Audio permite el audio de transmisión (por ejemplo, para intercomunicaciones públicas), audio multirretroces y soporte para audífonos.

Bluetooth de malla

Para redes de dispositivos de gran escala (por ejemplo, control de iluminación, automatización de edificios), Bluetooth Mesh utiliza inundaciones o inundaciones administradas sobre los portadores de publicidad BLE. Los nodos de malla transmiten mensajes utilizando un modelo de subscripción publica con modelos definidos (por ejemplo, OnOff Genérico, Lightness). La pila incluye una capa de portador (PB‐ADV, PB-GATT), una capa de transporte (segmentación, realays).

La implementación de un nodo de malla Bluetooth requiere una memoria significativa para almacenar listas de suscripción, números de secuencia y amortiguadores de retransmisión. Los ingenieros incorporados deben seleccionar una pila de malla (por ejemplo, Zephyr, TI, Nordic’s) que apoye la provisión sobre GATT (PB-GATT) para teléfonos inteligentes o sobre publicidad (PB‐ADV) para el suministro basado en red.

Consideraciones de diseño para ingenieros incrustados

Gestión de la energía

La vida de la batería es a menudo la prioridad máxima. La pila Bluetooth ofrece varios mecanismos de baja potencia:

  • Modos de dormir: Los estados de inactividad del controlador (por ejemplo, modo de olfato para el sueño clásico y profundo para LE) reducen la corriente a microamps.
  • intervalos de connección: Los intervalos más largos reducen el ciclo de servicio pero aumentan la latencia. Para los datos de los sensores periódicos, 100 ms a 1 segundo es común.
  • Intervalo de publicidad: La publicidad rápida (20 ms) drena la batería; la publicidad lenta (1+ segundos) aumenta el tiempo de descubrimiento.
  • Optimización de potencia de TX: Usa la potencia de salida más baja que proporciona un enlace confiable.

Los ingenieros también deben considerar el deber ciclismo periféricos específicos (por ejemplo, tiempo de calentamiento del sensor) y el uso de control de flujo de hardware para reducir la escucha de los idles SPI/UART.

Coexistencia e Interferencia

Bluetooth comparte la banda de 2.4 GHz con Wi-Fi, Zigbee y muchos otros dispositivos. La coexistencia puede mejorarse mediante:

  • Utilizando el acoplamiento de frecuencia adaptativa (AFH), que las listas negras canalizan con alta interferencia.
  • Utilizando PA/LNA con filtrado para rechazar bloqueadores de bandas fuera de.
  • Coordinar con Wi-Fi a través de un interruptor de antena compartido o mediante señalización de coexistencia WCI‐2 integrada en algunos chipsets.

Antenna Design

Una antena pobre puede anular todas las otras optimizaciones. Para diseños compactos embebidos, antenas planas invertidas (PIFA), antenas de chips o monopolios malignos son comunes. Parámetros críticos incluyen la concordancia de impedancia (50 Ω target), limpieza de planos terrestres y ajuste a 2.44 GHz. Los ingenieros deben simular o medir la pérdida de retorno (S11) y eficiencia de radiación.

Depuración y pruebas

La depuración Bluetooth puede ser difícil porque la radio es invisible.

  • Analizadores de protocolo (por ejemplo, Ellisys, Teledyne LeCroy, o soluciones de código abierto como NRF Sniffer con Wireshark) para capturar HCI y paquetes de aire.
  • Analizadores de espectro para interferencias en banda y cumplimiento de máscaras de transmisor.
  • Testers de cumplimiento para la calificación de SIG Bluetooth (RF‐PHY, LL, L2CAP, perfil del GATT).
  • Registros de software con timetamps para correlacionar eventos de pila.

Muchas pilas incrustadas (por ejemplo, Zephyr, FreeRTOS+BLE) proporcionan niveles de depuración que pueden ser apagados para la producción. Permitir la tala de verbosa durante el desarrollo ayuda a aislar problemas tales como actualizaciones de conexión perdidas, atributo fuera de síntoma o errores de tiempo de HCI.

Aplicación de la seguridad

La seguridad no es opcional.

  • Use Secure Connections Only modo para LE (contiene intercambio de claves ECDH y encriptación AES‐128).
  • Habilitar Acoplamiento OOB] si el dispositivo tiene un canal seguro alternativo.
  • Use direcciones estáticas al azar o direcciones privadas resolvables (RPA) para prevenir el seguimiento.
  • Validar los valores de entrada del GATT para evitar las reflujo de amortiguadores.
  • Almacene las teclas de unión en un elemento seguro o la memoria resistente al manipulador si es posible.

Conclusión

El conjunto de protocolo Bluetooth es una arquitectura rica y multicapa que equilibra el rendimiento, la potencia y la compatibilidad. Para los ingenieros incrustados, una comprensión sólida de cada capa – desde la frecuencia de la radio a la tabla de atributos del GATT – es esencial crear productos inalámbricos confiables. La evolución de los dispositivos Classic Bluetooth a BLE 4.0, Bluetooth 5.x, LE Audio y Mesh sigue abriendo nuevas oportunidades, pero también exige una comprensión más profunda de los componentes de la interferencia y la convivencia.