Despliegue 200 balizas Bluetooth en un espacio comercial de 5.000 m², y lo primero que revelará el estudio del sitio no es un problema de cobertura—es un problema de colisión. Cada baliza transmite en los mismos tres canales de publicidad (37, 38, 39) en la banda ISM de 2,4 GHz, y una vez que la densidad de balizas excede un umbral que depende del intervalo, el tamaño del payload y el ruido RF ambiental, la pérdida de paquetes aumenta bruscamente. Los receptores comienzan a perder publicidades no porque la señal sea demasiado débil, sino porque dos o más transmisiones se superponen en el tiempo en el mismo canal.

Este artículo desglosa las matemáticas de la colisión de publicidad BLE, deriva límites de densidad prácticos para escenarios de despliegue comunes, y presenta estrategias de coexistencia que un ingeniero de RF puede aplicar sin recurrir a extensiones de protocolo propietarias. Todos los cálculos asumen publicidad no conectable BLE 4.x/5.x (el modo dominante en despliegues de balizas) y un receptor con sensibilidad típica de -90 dBm.

1. Fundamentos del Canal de Publicidad BLE

La publicidad BLE utiliza tres canales dedicados en los bordes de la banda de 2,4 GHz para evitar los canales WiFi más congestionados:

Canal AdvFrecuencia (MHz)Superposición WiFiNivel de Ruido Típico
372402WiFi Ch 1 (2412) — 10 MHz de distanciaModerado
382426Entre WiFi Ch 1 y Ch 6Más bajo
392480WiFi Ch 14 (2484) — 4 MHz de distanciaMás alto (si Ch 14 activo)

Cada evento de publicidad transmite el mismo paquete en los tres canales secuencialmente. El tiempo en el aire por canal depende del PHY y la longitud del payload:

T_on_air = (1.6 + 0.8 + 0.8 + 0.8 + 0.8 + ceil(payload_bits / 8)) × 1 µs

Para el payload iBeacon (30 bytes totales de PDU), el tiempo en el aire por canal a PHY de 1 Mbps es aproximadamente 376 µs. Un evento completo de publicidad de tres canales se completa en aproximadamente 1,13 ms, incluyendo el espaciado obligatorio de 150 µs entre canales.

2. Modelo de Probabilidad de Colisión

La publicidad BLE es fundamentalmente un sistema similar a ALOHA ranurado, pero sin ranuras de tiempo explícitas—las colisiones ocurren cuando dos o más transmisores se superponen en el mismo canal dentro de la ventana de detección del receptor. La probabilidad de colisión para N balizas con intervalo de publicidad T_adv en un solo canal se puede modelar como:

P_collision = 1 − (1 − T_on_air / T_adv)^(N−1)

Esto asume que las balizas no están sincronizadas (cierto en la práctica, ya que BLE exige un jitter advDelay pseudoaleatorio de 0–10 ms). Para el sistema de tres canales, la probabilidad efectiva de colisión por canal disminuye aproximadamente por un factor de 3, ya que el receptor solo necesita uno de los tres canales para decodificar el paquete:

P_loss_total = P_collision_ch37 × P_collision_ch38 × P_collision_ch39

En la práctica, el canal 39 a menudo tiene mayor pérdida debido a la proximidad del canal WiFi 14 en regiones donde es legal (Japón), por lo que los tres canales no son perfectamente equivalentes. La siguiente tabla muestra las tasas de pérdida de paquetes calculadas para publicidad en formato iBeacon a varias densidades de balizas:

N (Balizas)T_adv = 100msT_adv = 200msT_adv = 500msT_adv = 1000ms
100,03%0,02%0,01%0,004%
500,17%0,08%0,03%0,02%
1000,34%0,17%0,07%0,03%
2000,68%0,34%0,14%0,07%
5001,70%0,85%0,34%0,17%
10003,39%1,70%0,68%0,34%

Estos números parecen engañosamente bajos. El problema es que el modelo teórico asume solo superposición en el dominio del tiempo. En despliegues reales, dos factores adicionales aumentan drásticamente la pérdida efectiva de paquetes: el ciclo de trabajo de escaneo del receptor y el efecto de captura RF.

3. Ciclo de Trabajo de Escaneo y Pérdida Efectiva

La mayoría de los escáneres BLE (teléfonos, gateways, anclas RTLS) no escuchan continuamente. Un teléfono típico escanea durante 4 segundos, luego pausa durante un intervalo definido por el sistema (a menudo 30–60 segundos en iOS). La pérdida efectiva de paquetes es:

P_loss_effective = 1 − (1 − P_collision) × D_scan

Donde D_scan es el ciclo de trabajo de escaneo. Para un teléfono con una ventana de escaneo de 4 segundos cada 40 segundos (D_scan = 0,1), incluso una tasa de colisión del 0% produce un 90% de pérdida efectiva de paquetes solo por el intervalo de escaneo. Por esto los despliegues RTLS usan gateways dedicados con escaneo continuo.

Para un gateway de escaneo continuo (D_scan = 1,0), el mecanismo de pérdida dominante vuelve a ser la colisión. La pérdida medida a 500 balizas con intervalo de 200 ms es típicamente del 2–4%, superior al valor teórico del 0,85%. La discrepancia proviene del efecto de captura: cuando dos transmisiones se superponen, la señal más fuerte aún puede decodificarse si su RSSI excede la más débil en 6 dB o más. Sin embargo, en despliegues densos donde las balizas están a distancias similares, este margen raramente existe.

4. Selección del Intervalo de Publicidad

El intervalo de publicidad es el parámetro individual más impactante para la gestión de colisiones. BLE 4.x permite intervalos de 20 ms a 10,24 segundos en incrementos de 0,625 ms. La publicidad extendida BLE 5.x soporta el mismo rango pero añade la capacidad de usar canales secundarios, lo que efectivamente multiplica el ancho de banda disponible.

La selección debe basarse en el requisito de latencia de la aplicación, no en el deseo de máxima tasa de actualización. Compromisos clave:

IntervaloVida Batería (CR2032, 2 años)Máx. Balizas (1% pérdida)Caso de Uso Típico
100 ms~4 meses~300RTLS de alta velocidad, marketing de proximidad (tiempo real)
200 ms~8 meses~600Navegación comercial, navegación indoor
500 ms~16 meses~1.500Seguimiento de activos, detección de ocupación
1000 ms~28 meses~3.000Monitoreo ambiental, etiquetas de activos estáticos
2000 ms~30+ meses~6.000Sensores de parking, monitoreo de ciclo lento

Nota: «Máx. Balizas» es la densidad teórica a la cual la probabilidad de colisión de canal único alcanza el 1%, asumiendo escaneo continuo y payload iBeacon. La capacidad real es típicamente el 60–70% de este valor debido a efectos de captura RF e interferencia de canal WiFi coexistente.

5. Jitter y Aleatorización

La especificación BLE exige un advDelay pseudoaleatorio de 0 a 10 ms añadido a cada intervalo de publicidad. Esto evita que las balizas con intervalos idénticos sincronicen permanentemente sus transmisiones. Sin jitter, dos balizas configuradas a 1000 ms que se alineen en su primera publicidad colisionarían en cada publicidad subsiguiente—haciendo ambas efectivamente invisibles al receptor.

El jitter de 10 ms es adecuado para intervalos de 500 ms y superiores, pero se vuelve problemático en intervalos cortos. A 100 ms de intervalo, el jitter representa el 10% del período, lo que proporciona una decorrelación razonable. Sin embargo, algunos fabricantes de balizas implementan un intervalo fijo sin aleatorización adecuada (especialmente en clones económicos que usan CSR1010 o nRF51). Estas balizas deben evitarse en despliegues densos.

Una prueba práctica: despliegue 20 balizas del mismo fabricante en un radio de 2 m, configuradas al mismo intervalo de 200 ms, y monitoree durante 10 minutos usando un sniffer Nordic nRF52. Si alguna baliza muestra más del 2% de pérdida de paquetes, el fabricante probablemente tiene una aleatorización insuficiente. Las balizas de marcas reconocidas (Minew, Kontakt.io, Estimote) pasan esta prueba de forma fiable; las balizas genéricas de marca blanca a menudo no.

6. Coexistencia con WiFi

La banda de 2,4 GHz se comparte entre BLE y WiFi, y su interacción es asimétrica. La publicidad BLE transmite a 1 Mbps con un ancho de banda de 2 MHz; WiFi transmite a 6–54+ Mbps con un ancho de banda de 20+ MHz. Un solo paquete WiFi puede obliterar múltiples eventos de publicidad BLE.

El factor clave de coexistencia es la superposición espectral entre los canales de publicidad BLE y los canales WiFi activos:

Canal WiFiFrec. Central (MHz)Ancho de BandaCanal Adv BLE AfectadoAumento de Pérdida BLE
1241220 MHz (2401–2423)37 (2402), parcial 38 (2426)+3–5%
6243720 MHz (2426–2448)38 (2426)+2–3%
11246220 MHz (2451–2473)Ninguno directamente+0–1%
14248420 MHz (2473–2495)39 (2480)+5–8%

Recomendación: en despliegues con alta densidad de balizas, configure los puntos de acceso WiFi para usar canales 1, 6 y 11 (plan estándar de tres canales) pero evite completamente el canal 14. Si la densidad de balizas es muy alta (>500 unidades), considere asignar WiFi solo a los canales 1 y 11, dejando el canal 6 (que se superpone con el canal BLE 38) como un espacio favorable para balizas. Esto sacrifica rendimiento WiFi pero puede mejorar la fiabilidad BLE en un 15–20%.

7. Gestión de Densidad Basada en Potencia

No todas las balizas en un despliegue necesitan la misma potencia de transmisión. Un error común es configurar todas las balizas a +4 dBm o superior «para mayor alcance». En un despliegue denso, esto en realidad aumenta el radio de colisión—el área dentro de la cual dos balizas pueden interferir entre sí.

El radio de colisión entre dos balizas se define como la distancia a la cual sus señales llegan a un receptor dentro de 6 dB entre sí. Para dos balizas a la misma potencia de transmisión, esto es simplemente la distancia a la cual ambas tienen un RSSI comparable:

R_collision ≈ 2 × 10^((P_tx − P_rx_threshold) / (10 × n))

Donde n es el exponente de pérdida de trayectoria (2,0 en espacio libre, 2,5–3,5 en entornos indoor). Para P_tx = 0 dBm, P_rx_threshold = −90 dBm, n = 2,7:

P_tx (dBm)R_collision (m, indoor)Área (m²)Densidad Máx. Efectiva
+4~48~7.2001 por 14 m² (al 1% pérdida)
0~35~3.8001 por 7,6 m²
−4~26~2.1001 por 4,2 m²
−8~18~1.0001 por 2,0 m²
−12~13~5301 por 1,1 m²
−20~7~1541 por 0,3 m²

En un entorno comercial donde las balizas están espaciadas a 4 m en baldosas de techo, configurar la potencia de transmisión a −4 dBm reduce el radio de colisión a 26 m—suficiente para recepción fiable por un gateway cercano mientras limita la interferencia con balizas a dos filas de distancia. La tabla muestra que reducir la potencia de +4 a −4 dBm duplica efectivamente la capacidad espacial.

8. Técnicas de Escalonamiento de Intervalos

Aunque la especificación BLE exige un jitter de 0–10 ms, no impide el escalonamiento intencional de intervalos—configurar diferentes balizas con intervalos ligeramente diferentes. Esta técnica descorrelaciona sus patrones de transmisión a lo largo del tiempo.

El enfoque más efectivo es asignar intervalos de un conjunto de valores relacionados con números primos. Por ejemplo, en un despliegue de 100 balizas, en lugar de configurar todas a 200 ms, distribúyalas en cinco valores:

GrupoIntervalo (ms)Cantidad de BalizasFundamento
A19020Intervalo base −5%
B19720Desfase derivado de primo
C20020Nominal
D21120Número primo
E22320Número primo

El MCM (Mínimo Común Múltiplo) de estos intervalos determina el tiempo antes de que los patrones se repitan: MCM(190, 197, 200, 211, 223) es astronómicamente grande (del orden de 10^12 ms), asegurando efectivamente que dos balizas de diferentes grupos nunca se sincronicen. La reducción de pérdida de paquetes medida con esta técnica es del 30–45% comparada con un intervalo uniforme de 200 ms en las 100 balizas.

Advertencia: esta técnica requiere configuración por baliza, lo que añade tiempo de aprovisionamiento. Para despliegues a gran escala, una interfaz de gestión que soporte asignación de intervalos por lotes con distribución automática es esencial.

9. Publicidad Extendida BLE 5.x

BLE 5.0 introdujo publicidad extendida, que separa la PDU de publicidad en una publicidad primaria (en canales 37/38/39) y una publicidad secundaria (en cualquiera de los 37 canales de datos restantes). Esto distribuye efectivamente el tráfico de balizas en 40 canales en lugar de 3.

La mejora teórica de capacidad de colisión es aproximadamente 40/3 = 13,3×, pero las ganancias prácticas son más modestas porque:

  • Los canales primarios aún transportan el puntero AUX_SYNC_IND, por lo que la colisión en canales primarios aún causa pérdida del puntero
  • No todos los receptores soportan publicidad extendida BLE 5.x (iOS añadió soporte en iOS 17, muchos dispositivos Android aún solo escanean legacy)
  • El canal secundario se indica en la PDU primaria, por lo que el receptor debe decodificar primero el primario

Para despliegues greenfield donde todos los receptores son compatibles con BLE 5.x, la publicidad extendida puede aumentar la capacidad de densidad en 5–8×. Para entornos mixtos, debe usarse junto con publicidad legacy (modo dual), lo que anula parcialmente el beneficio de capacidad.

10. Optimización de Gateway y Escáner

La gestión de colisiones no se trata solo de los transmisores. Los parámetros de escaneo del receptor afectan significativamente la recepción efectiva de paquetes. Parámetros clave para gateways BLE:

ParámetroPor Defecto (Teléfono)Recomendado (Gateway)Impacto
Ventana de Escaneo4.096 msContinuo (sin gap)Elimina pérdida por gap de escaneo
Intervalo de Escaneo4.096 msContinuoIgual que ventana para 100% duty
Escaneo ActivoNo (para balizas)Reduce tiempo RX consumido por SCAN_RSP
Filtro DuplicadosDepende del SOVentana 30 segundosPreviene flooding de logs sin perder datos nuevos
Decodificación Multi-canalN/A3 receptores paralelosCaptura paquetes superpuestos en canales diferentes simultáneamente

Un gateway con tres receptores BLE independientes (uno sintonizado a cada canal de publicidad) puede teóricamente lograr 3× el rendimiento de un escáner de receptor único, ya que puede decodificar paquetes superpuestos en canales diferentes. Nordic nRF52840 y nRF5340 soportan recepción multi-canal concurrente vía la capacidad de conmutación rápida de canal del periférico RADIO, aunque la recepción paralela real requiere dos instancias RADIO (disponible solo en nRF5340).

11. Guías de Densidad de Despliegue en el Mundo Real

Basado en mediciones de campo en despliegues comerciales, museos, almacenes y hospitales, las siguientes guías de densidad asumen gateways de escaneo continuo, formato iBeacon, potencia de transmisión de −4 dBm, y una tasa de recepción de paquetes objetivo de ≥95%:

EscenarioIntervalo RecomendadoMáx. Balizas por GatewayEspaciado de GatewayNotas
Comercio (push proximidad)200 ms40015 mEscalonar intervalos entre zonas
Museo (guía audio)300 ms35012 mMenor densidad por sala; atenuación de muros ayuda
Almacén (RTLS)500 ms80020 mTecho alto reduce radio de colisión
Hospital (seg. activos)500 ms60015 mEquipos médicos añaden ruido RF; añadir 20% margen
Parking (ocupación)2000 ms2.000+30 mBaja latencia no requerida; densidad muy alta posible
Estadio (navegación masas)100 ms15010 mAbsorción corporal reduce alcance; planificar 40% pérdida por solape

12. Medición de Colisión en el Campo

Verificar tasas de colisión requiere una configuración de medición controlada. El enfoque recomendado usa un dongle nRF52840 dedicado ejecutando un firmware sniffer personalizado que registra cada publicidad recibida con marca de tiempo, canal, RSSI y dirección MAC.

La métrica clave es la Tasa de Recepción por Baliza (PBRR): para cada baliza, cuente el número de publicidades recibidas durante una ventana de medición y compárelo con el conteo esperado (duración_ventana / intervalo). Un PBRR por debajo del 95% indica problemas de colisión o cobertura RF.

Para distinguir pérdida por colisión de pérdida por cobertura, coloque el sniffer a menos de 2 m de la baliza con línea de visión directa. A esta distancia, el RSSI debería ser >−60 dBm, muy por encima de la sensibilidad. Cualquier pérdida de paquetes en este rango es colisión, no cobertura. Un protocolo de medición típico:

  1. Desplegar todas las balizas en posiciones y configuraciones finales
  2. Colocar sniffer en ubicación del gateway, ejecutar 10 minutos
  3. Exportar logs de RSSI y marca de tiempo por baliza
  4. Calcular PBRR para cada baliza
  5. Para balizas con PBRR < 95%, mover sniffer a 2 m de proximidad y re-medir
  6. Si PBRR mejora a >98% en rango cercano, la pérdida es de cobertura (añadir gateway)
  7. Si PBRR permanece <95% en rango cercano, la pérdida es de colisión (reducir densidad o escalonar intervalos)

13. Errores Comunes de Diseño

  • Configurar todas las balizas a 100 ms: «Más frecuente es mejor» es el error más común. A 100 ms con 500 balizas, la pérdida por colisión excede el 5%, y la vida de la batería cae por debajo de 4 meses. Use el intervalo más largo que su presupuesto de latencia permita.
  • Ignorar la planificación de canales WiFi: Desplegar balizas sin coordinar con el equipo de TI los canales WiFi. Un solo AP WiFi en canal 14 en Japón puede causar 8% de pérdida adicional en el canal BLE 39.
  • Usar +4 dBm en todas partes: La máxima potencia maximiza el alcance pero también el radio de colisión. Use zonificación de potencia: −12 dBm para zonas densas, 0 dBm para áreas abiertas, +4 dBm solo para balizas gateway en áreas dispersas.
  • Sin escalonamiento de intervalos en despliegues homogéneos: 200 balizas idénticas al mismo intervalo dependen completamente del jitter de 10 ms. Escalonar intervalos entre grupos reduce la colisión en 30–45%.
  • Gateways de receptor único: Un gateway con un receptor BLE solo puede decodificar un canal a la vez. En despliegues densos, esto crea un cuello de botella de 3× comparado con gateways multi-canal.

14. Lista de Verificación de Diseño

  • ☐ Calcular el conteo de balizas requerido y la densidad por zona
  • ☐ Seleccionar intervalo de publicidad basado en presupuesto de latencia (más largo es mejor)
  • ☐ Asignar grupos de intervalo (primos escalonados) para despliegues >50 balizas por gateway
  • ☐ Configurar potencia de transmisión basada en densidad de zona (−4 a −12 dBm para denso, 0 a +4 para disperso)
  • ☐ Coordinar canales WiFi con TI (evitar Ch 14, preferir Ch 1/11 sobre Ch 6)
  • ☐ Especificar gateways BLE multi-canal para despliegues densos
  • ☐ Configurar gateways para escaneo continuo con filtrado de duplicados de 30 segundos
  • ☐ Planificar medición de campo con sniffer para verificar PBRR ≥95% por baliza
  • ☐ Documentar la asignación de intervalo, potencia y canal para cada baliza para resolución de problemas futura
  • ☐ Para entornos de receptor solo BLE 5.x, habilitar publicidad extendida para margen de densidad 5–8×

Conclusión

La colisión de publicidad es el techo invisible sobre la densidad de despliegue de balizas. El modelo ALOHA teórico predice tasas de pérdida bajas que las mediciones del mundo real habitualmente superan en 2–4× debido a interferencia WiFi, efectos de captura y limitaciones del ciclo de trabajo de escaneo. El camino práctico hacia despliegues de alta densidad no es más potencia o intervalos más rápidos—es selección disciplinada de intervalos, zonificación de potencia, escalonamiento de intervalos y gateways multi-canal. Tratando el espectro de 2,4 GHz como un recurso compartido con un presupuesto de colisión cuantificable, los ingenieros pueden desplegar 500+ balizas por gateway con 95%+ de recepción de paquetes, incluso en entornos saturados de WiFi. Para despliegues que exceden 1.000 balizas por zona de cobertura, la publicidad extendida BLE 5.x proporciona la diversidad de canal adicional necesaria para mantener la fiabilidad sin sacrificar la tasa de actualización.

Comprender estas dinámicas de colisión es esencial ya sea que esté desplegando un puñado de balizas de proximidad o diseñando un sistema RTLS a gran escala con balizas Bluetooth en todo un campus.