thumb|300px|Una baliza electrónica junto a un teléfono inteligente.

Una baliza electrónica (conocida también por su nombre en inglés beacon) es un dispositivo transmisor que se utiliza para radiar una señal bluetooth de baja energía (LE) a dispositivos móviles que se encuentren cerca de él sin necesidad de sincronización previa. Esta tecnología permite a teléfonos inteligentes, ordenadores o tabletas ejecutar determinadas acciones cuando entran en el radio de una de ellas.

Las balizas bluetooth transmiten un identificador único universal que es recogido por una aplicación o sistema operativo compatible. Esto puede ser utilizado para determinar la ubicación física del dispositivo, rastrear objetos o activar acciones en función de la localización en determinados puntos de interés, como una parada de autobús, una tienda, una localización dentro de un edificio, etc. A diferencia de la tecnología GPS, tiene potencial como sistema de posicionamiento en interiores y su consumo de batería es muy reducido.

Las balizas electrónicas difieren de otras tecnologías basadas en la localización en que son unidireccionales: no son capaces de recibir datos. Debido a ello, es necesario que el dispositivo receptor tenga una aplicación o sistema que interprete la señal de la baliza y actúe en consecuencia. Esto asegura que solo la aplicación puede rastrear la ubicación del usuario y no el transmisor de forma pasiva.

El factor de forma de estos dispositivos puede variar ampliamente en función del fabricante. Pueden ser pequeños dispositivos portátiles pensados para adherirse en cualquier tipo de superficie, lápices USB o cualquier otro dispositivo genérico compatible con el protocolo Bluetooth 4.0.

Componentes de una baliza electrónica thumb|piezas de un dispositivo beacon.

Hardware El hardware consiste en un microcontrolador con un chip de radio bluetooth LE y una batería, generalmente de botón. Los nuevos chips están optimizados para trabajar con BLE; versiones anteriores fueros diseñadas con bluetooth clásico, lo que requería un mayor consumo de energía

El chip de radio BLE es generalmente fabricado por dos grandes empresas: Texas Instruments y Nordic Semiconductor.

Empresas proveedoras de beacons utilizan el hardware fabricados por los anteriores fabricantes mencionados, pero con sus propios firmware.

Las baterías de botón son las opciones más populares para la mayoría de estos dispositivos. Estas baterías son densas células de iones de litio y proporcionan desde 240 mAh hasta 1000 mAh. Dado que BLE se caracteriza por minimizar el uso de energía, la duración de estas baterías puede ser mayor a 1 año. Algunos beacons también utilizan baterías alcalinas AA.

Otros beacons funcionan externamente, se pueden instalar en una toma de corriente o un puerto USB, Estos dispositivos no necesitan un reemplazo de baterías, con el inconveniente de la disponibilidad de una toma de corriente cercana.

Firmware Cada beacon tiene un firmware específico, según el proveedor, que permite al hardware del beacon funcionar. El firmware puede controlar varias características que afectan a la batería:

Potencia de Transmisión (Tx Power) Los beacons transmiten una señal con una potencia fija, conocida como Tx Power. A medida que la señal viaja en el aire la intensidad de la señal va disminuyendo con la distancia. Con un Tx Power superior la señal puede viajar distancias más largas, lo que significa mayor consumo y un Tx Power menor se traduce a menor rango de alcance pero menos consumo de batería.

Advertising Interval La periodicidad con la que un beacon emite una señal se conoce como advertising interval. Un intervalo de 100 ms significa que la señal se emite cada 100 milisegundos, es decir, 10 veces en un solo segundo. Un intervalo de 500 ms significa que la señal se emite solo dos veces por segundo, lo que se traduce en menos consumo de energía. Cuando advertising interval aumenta la duración de la batería aumenta pero la capacidad de respuesta del dispositivo receptor disminuye. No hay una elección óptima del advertising interval. Las aplicaciones que necesiten baja latencia deben elegir intervalos más bajos. En cambio, los que necesiten mayor duración de la batería necesitan un intervalo mayor.

Las especificaciones de Apple para iBeacon indican que el advertising interval es de 100ms.

Cada beacon ofrece su propia forma de configurar el hardware y los parámetros asociados. Algunos proveedores de beacons proporcionan su propia aplicación para configurar los beacons desde el teléfono (ej: iPhone, Android, etc.) Otros beacons proporcionan una interfaz abierta a través de cualquier cliente GATT. También existen dispositivos BLE que se configuran mediante comandos AT a través de una terminal.

La principal ventaja de utilizar GATT es que cientos de beacons pueden ser configurados a la vez.

Infraestructura en la Nube Los beacons proporcionan la señal BLE, que es crucial para el posicionamiento y localización de los dispositivos móviles. Pero estas señales, son un método de comunicación de una sola vía, y significan poco sin tener un servicio inteligente que de apoyo por detrás. Normalmente, una aplicación basada en la nube analiza todas las señales recibidas del beacon y toma acciones según los datos, funcionando como un cerebro detrás de todas las operaciones. Existen diversas empresas que proporcionan estas infraestructuras, no necesariamente son proveedores de beacons.

Beacon Mobile SDK Los beacons tienen que integrarse con las aplicaciones móviles para facilitar los casos de uso basadas en la localización. Un beacon es solo la pieza de hardware. Además, los fabricantes de beacons suelen ofrecer kit de desarrollo para poder llevar al máximo el uso de estos dispositivos.

Protocolos de beacons Bluetooth Low Energy (BLE) tiene la capacidad de intercambiar datos en uno de dos estados: modo conectado y modo advertising. Modo Conectado utiliza el atributo genérico (GATT) para transferir datos en una conexión. Modo de advertising utiliza el perfil de acceso genérico (GAP) para transmitir datos a cualquiera que esté escuchando. Modo de advertising es una transferencia de uno a muchos y no tiene garantías sobre la coherencia de los datos. Balizas BLE aprovechan el modo de advertising GAP para transmitir datos en paquetes de advertising periódicas, especialmente formateados. Cada tipo de beacon utiliza una especificación personalizada para particionar los datos de advertising, dándole un significado. A continuación se muestran algunos de los principales protocolos existentes.

iBeacon Es un protocolo creado por Apple, que se introdujo por primera vez en la Worldwide Developers Conference 2013. Apple fue la primera empresa que hizo conocida esta tecnología a nivel mundial, pero la tecnología (BLE) fue creada por Nokia.

iBeacon utiliza BLE para transmitir un identificador único universal (UUID) que es recogido por una aplicación o sistema operativo compatible con el protocolo. El identificador más otros bytes enviado se pueden usar para identificar la posición física del dispositivo, o lanzar acciones basadas en la localización como notificación push, etc.

iBeacon ofrece dos métodos de API para detectar dispositivos ibeacons. Ranging, que solo funciona cuando la aplicación está activada y proporciona estimaciones de proximidad; Monitoring, que funciona incluso si la aplicación no está corriendo, y proporciona información binaria de en rango y fuera de rango.

Especificación iBeacons consta de cuatro piezas de información.

UUID que identifica el beacon.

Major es el número que identifica un subgrupo de beacons dentro de un grupo más grande.

Minor número de identificación a un beacon específico.

La aplicación de escaneo lee el UUID, Major, Minor y referencias contra una base de datos para obtener información sobre el beacon, el propio beacon no lleva ninguna información descriptiva, requiere de una base de datos externa para ser útil. El campo Tx Power se utiliza con la medida de la intensidad para determinar a que distancia se encuentra el beacon del dispositivo móvil (teléfono inteligente). Este campo tiene que ser calibrado beacon por beacon por el usuario para ser exacta.

Eddystone Es el proyecto de código abierto de Google para beacons. Google con esta tecnología pretende fomentar el internet de las cosas. Similar al protocolo de iBeacon pero open source. iBeacon está soportado oficialmente por los dispositivos iOS solamente, Eddystone tiene soporte oficial para iOS y Android.

Está diseñado para soportar múltiples tipos de paquetes de datos, a partir de Eddystone-UID y Eddystone-URL. Hay un tercer tipo de paquete de telemetría Eddystone-TLM. Este paquete se emite junto con Eddystone-UID o Eddystone-URL y contiene el estado de salud del beacon como por ejemplo, la duración de la batería.

Eddystone se basa en un método único en este momento: Eddystone Discovery que es similar a ibeacon Ranging. Proporciona estimaciones de proximidad y solo funciona cuando está activa.

Google además proporcionará las API de Nearby y Proximity para ayudar a los desarrolladores en como transmitir datos a equipos ubicados en el rango de los beacons seleccionados, a la vez que les permite monitorear los beacons.

Especificación Cada trama de Eddystone debe contener los tipos de datos PDU:

La lista completa de 16 bits de servicios UUID definido en Bluetooth Core Specification Supplement (CSS) v5.

La lista de 16 bits debe contener el Eddystone Service UUID 0xFEAA. Esto es incluido para permitir el escaneo en segundo plano de dispositivos iOS.

El tipo específico de Eddystone frame se codifica en la parte alta de los cuatro primeros bits del primer byte de Service Data asociado con el Servicio UUID. Los valores permitidos son: Frame TypeHigh-orde 4 bitsByte ValueUID00000x00URL00010x10TLM00100x20RESERVED00110x30RESERVED01000x40

AltBeacon Protocolo desarrollado por Radius Networks. La especificación de Altbeacon define el formato de los mensajes broadcast por proximidad de los beacons. Es gratuito es open-spec. Viene a ser una respuesta al protocolo cerrado iBeacon propiedad de Apple, cubriendo las mismas funcionalidades ibeacon puede ofrecer, pero no tiene un amplio apoyo aún.

Mientras iBeacon tiene de 20 a 27 bytes disponibles para datos de usuario (UUID + Major + Minor) Altbeacon tiene 25 a 28 bytes disponibles (MFG ID, BeaconCode, BeaconID, MFG RSVD) esto significa que puede entregar más datos por mensaje.

Especificación Altbecon spec es de 28 bytes (25bytes de usuario son modificables). Los primeros 2 bytes no son modificables, tienen un valor fijo que son establecidos por el BLE Stack. Field NameDescriptionAccepted ValuesAD LENGTH [MFG SPECIFIC]Length of the type and data portion of the Manufacturer Specific advertising data structure.0x1BAD TYPE [MFG SPECIFIC]Type representing the Manufacturer Specific advertising data structure.0xFFMFG IDThe beacon device manufacturer's company identifier code.The little endian representation of the beacon device manufacturer's company code as maintained by the Bluetooth SIG assigned numbers databaseBEACON CODEThe AltBeacon advertisement codeThe big endian representation of the value 0xBEACBEACON IDA 20-byte value uniquely identifying the beaconThe big endian representation of the beacon identifier. For interoperability purposes, the first 16+ bytes of the beacon identifier should be unique to the advertiser's organizational unit. Any remaining bytes of the beacon identifier may be subdivided as needed for the use case.REFERENCE RSSIA 1-byte value representing the average received signal strength at 1m from the advertiserA signed 1-byte value from 0 to -127MFG RESERVEDReserved for use by the manufacturer to implement special featuresA 1-byte value from 0x00 to 0xFF. Interpretation of this value is to be defined by the manufacturer and is to be evaluated based on the MFG ID value

Aplicaciones de los beacons