Prueba de rendimiento de Bluetooth de baja energía 5.0







Louis Wang  |  Ingeniero de programación superior












RESUMEN: Bluetooth es una tecnología inalámbrica que se utiliza en muchas aplicaciones y cada año se lanzan nuevas versiones para satisfacer las necesidades de los usuarios. La versión más reciente contiene las mejores mejoras hasta la fecha. Las mejoras se relacionan principalmente con la velocidad de datos de la capa física LE 2M de alta velocidad y la transmisión LE de largo alcance. Este documento se centrará en las pruebas de rendimiento y analizará diferentes configuraciones de parámetros que causan diferentes resultados de rendimiento.


I. Introducción

Usamos 2 placas Nordic nRF52840-DK para realizar pruebas de rendimiento. Uno de los tableros actúa como central (maestro) y otro actúa como periférico (esclavo). Primero, damos una descripción general del procedimiento de conexión BLE. En segundo lugar, hablamos de los factores del protocolo GATT (Perfil de atributo genérico), ATT_MTU, extensión de longitud de datos e intervalo de conexión. Realización de experimentos para ver cómo estos factores afectan el rendimiento. Finalmente, basándonos en estos experimentos, mostramos cómo optimizar para obtener el máximo rendimiento de datos en BLE 5.



II - Canales de frecuencia y pila BLE

SoftDevice S140 es una característica completa de pila de protocolos calificados por Bluetooth 5 para el SoC nRF52840. El S140 SoftDevice es una solución de pila de protocolos Bluetooth de bajo consumo central y periférico. El S140 SoftDevice integra un controlador y host Bluetooth Low Energy y proporciona una API flexible para construir soluciones SoC Bluetooth Low Energy nRF52X. El desarrollo y el experimento se basan en nRF5_SDK V15.3.0.



BLE usa los canales 0-36 para la transmisión de datos (naranja claro en la imagen de abajo) mientras que los canales 37, 38 y 39 se usan como canales publicitarios (rosa en la imagen de abajo).





III - Procedimiento de conexión BLE






Si la central encuentra el periférico con un nombre específico, enviará una solicitud de conexión al periférico. Una vez conectados, el cliente y el servidor GATT intercambiarán parámetros, incluidos ATT_MTU, extensión de longitud de datos y tasa PHY.



IV - Configuración de parámetros GATT

Tamaño de ATT_MTU:
La Unidad de transmisión máxima de atributos (ATT_MTU) define la cantidad de datos que un dispositivo puede enviar / recibir por operación GATT. La MTU predeterminada es de 23 bytes y se puede aumentar a 247 bytes. Al aumentar este valor, se pueden lograr cargas útiles más largas enviando varios paquetes en una transacción. Para maximizar el uso de la Extensión de longitud de datos, la MTU siempre debe establecerse en (Longitud máxima de datos - 4). Esto significa que para la longitud máxima de datos de 251, la MTU óptima para establecer es 247 bytes.

Extensión de longitud de datos (DLE):
La función de extensión de longitud de datos permite que el controlador LE envíe unidades de paquetes de datos (PDU) con cargas útiles de hasta 251 bytes. La extensión de longitud de datos utiliza paquetes más grandes para que se puedan enviar más datos en un paquete, aumentando el rendimiento. El nRF52840 admite el aumento de la longitud del paquete de datos desde el valor predeterminado 27 hasta el valor máximo permitido por la especificación de Bluetooth, que es de 251 bytes.

Velocidad de datos de la capa física (PHY):
La velocidad de datos por aire solía estar limitada a 1 Mbps en BLE. Sin embargo, Bluetooth 5 tiene velocidades de datos más altas para lograr una transmisión más rápida y usa PHY codificado para transmisiones de largo alcance.

Intervalo de conexión:
Un intervalo de conexión BLE es el tiempo entre dos eventos de transferencia de datos (eventos de conexión) entre el dispositivo central y el periférico. Al aumentar este valor, se pueden enviar más paquetes en un intervalo, pero si se pierde un paquete, la espera hasta la retransmisión es más larga. El aumento de este valor puede aumentar el rendimiento, siempre que la duración del evento GAP aumente en la misma cantidad o la extensión de la duración del evento de conexión esté habilitada.







V - Prueba de rendimiento

Caso de prueba-1: Tasa PHY diferente

El aumento de la tasa de PHY da como resultado una mejora del rendimiento.



Caso de prueba 2: ATT_MTU diferente

El aumento de ATT_MTU da como resultado una mejora del rendimiento.



Caso de prueba 3: habilitar / deshabilitar DLE

Habilitar la extensión de longitud de datos (DLE) aumentará el rendimiento.



Caso de prueba 4: intervalo de conexión diferente

El aumento del intervalo de conexión da como resultado una mejora del rendimiento.



Caso de prueba 5: Intervalo de conexión diferente: un dispositivo (cliente) está sombreado parcialmente para simular los paquetes perdidos.

Este caso de prueba tiene como objetivo simular el período de tiempo entre la pérdida de paquetes y la retransmisión. Este retraso provocará un rendimiento más lento. Cuando el valor del intervalo de conexión es mayor, el rendimiento es peor. El nivel para establecer el intervalo de conexión depende de la pérdida de paquetes y del efecto ambiental.



Optimización para el máximo rendimiento de datos

Activar siempre DLE
- Si está utilizando Bluetooth v4.1 o anterior, esta no es una opción válida.

Utilice LE 2M PHY
- Si sabe que los dispositivos en ambos extremos son compatibles con BLE 5, elegir LE 2M PHY es una de las mejores formas de maximizar el rendimiento de los datos de su aplicación.

Utilice el valor máximo de ATT MTU de 247 bytes.

El parámetro de intervalo de conexión depende del entorno de prueba. Elija el intervalo de tiempo máximo si no hay pérdida de paquetes.



Descargar PDF>





Ver todos los artículos técnicos>