Bluetooth Low Energy
Esta sección de la Wiki recopila el conocimiento y los proyectos que se realizan en malkespace madrid relacionados con la tecnología Bluetooth 4 (también llamada Bluetooth Low Energy o Bluetooth Smart)
Contents
Descripción de la tecnología
Bluetooth Low Energy (BLE) es una nueva funcionalidad añadida al estándar Bluetooth a partir de la versión 4.0. La versión tradicional de Bluetooth se denomina Bluetooth Classic para distinguirla de esta nueva versión. La especificación se puede descargar desde este enlace. BLE surgió para responder al requisito de "muy" bajo consumo que Bluetooth Classic no podía cumplir. Principales características:
- BLE utiliza la misma banda (2.4GHz) que Bluetooth Classic o WiFi. sin embargo el protocolo está optimizado para evitar colisiones y reducir el consumo de energía (tiempo en que la radio está emitiendo)
- Un dispositivo puede implementar sólo BLE , sólo Bluetooth Classic o ambos
- BLE no está pensando para streaming de datos (su throughput está en el orden de bytes o unos pocos Kbyes por segundo)
- BLE tiene un alcance real de unos pocos metros (Personal Area Networks, PAN)
- En la versión 4.0 aún no se define una funcionalidad mesh para generar redes malladas de dispositivos (wireless sensor networks, WSN). La versión 4.1 ya incluye funcionalidad mesh. La versión 4.0 sólo permite la conexión punto a punto entre dos dispositivos (por ejemplo un móvil se puede conectar a varios dispositivos sensores, pero cada conexión es independiente).
- El objetivo de BLE es conseguir objetos conectados que puedan tener una vida útil de varios meses e incluso años alimentados con un pila de botón.
- Su principal caso de uso actual es la conectividad con dispositivos móviles. La gran mayoría de los móviles actuales soportan BLE (iOS, Android, Windows Mobile, Blackberry). EL móvil sueles actuar como gateway para conectar el objeto a Internet
Roles de los dispositivos
BLE 4.0 distingue dos roles para dispositivos:
- Central:
- Está escuchando la radio para ver qué dispositivos BLE están disponibles
- Puede iniciar la conexión hacia otro dispositivo periférico
- Periférico:
- Emite mensajes para anunciar su presencia
- Puede aceptar una conexión desde un dispositivo central
Normalmente un objeto físico adopta uno u otro rol, pero no los dos a la vez. El modo habitual de funcionamiento es un teléfono que toma el rol central, escucha los dispositivos en su entrono y cuando detecta un sensor que le interesa procede a conectarse a él. A su vez el sensor está anunciándose hasta que un teléfono le pide establecer una conexión. Un periférico no puede estar conectado simultáneamente a dos dispositivos centrales.
Hay dos tipos "especiales" de dispositivos:
- Observador: es un dispositivo central que sólo escucha los periféricos en su entorno pero nunca se conecta a ellos
- Baliza o "beacon": es un dispositivo que anuncia su presencia pero que nunca acepta conexiones de dispositivos central. Un caso particular es el iBeacon, especificado por Apple
Servicios y características
Productos existentes
Kits/módulos HW
Módulos Microchip
Módulos Bluegiga
Módulos Texas Instruments
Módulos HM10/HM11 (basados en TI)
Módulos Nordic Semiconductors
RFduino
RFDUINO es una placa compatible con Arduino que integra un microcontrolador y un modulo de comunicación BLE. Caracteristicas: CPU 16MHz ARM Cortex-M0 Flash 128kb Ram 8kb Low Supply Voltage 1.9V Typical Supply Voltage 3V High Supply Voltage 3.6V Transmit Current 18mA, 4uA ULP Receive Current 18mA, 4uA ULP
tiene un consumo de potencia infimo cuando está en modo stand by (ultra low power o ULP) lo cual permite aplicaciones donde no una batería puede durar meses.
Hay aplicaciones para iOS disponibles como ejemplo y Dario hizo una para Android. El firmware de la placa se programa como un Arduino de toda la vida pero con un par de extensiones que permiten apagar la placa y escuchar mensajes.