Upload
jose-manuel-garcia-garcia
View
171
Download
0
Embed Size (px)
Citation preview
( )BEACONSCONECTAR EL MUNDO REAL
CON EXPERIENCIAS MÓVILES
JOSÉ MANUEL GARCÍA GARCÍA@semagarcia – #FreakEnd2015
20, 21 y 22 de Febrero de 2015
IBEACON, ¿QUÉ SON?
DISPOSITIVO HARDWARE QUE MEDIANTE
BLUETOOTH PERMITE CREAR UN IPS
(IPS, INDOOR POSITIONING SYSTEM)
IBEACON, ¿QUÉ HACEN?
ACTUAR COMO BALIZA DE POSICIONAMIENTO
EMITIENDO INFORMACIÓN DE MANERA
CONTINUADA
IBEACON, ¿PARA QUÉ?
EXPLOTAR EL CONCEPTO DE PROXIMIDAD,
HACIENDO QUE LAS APPS PERCIBAN LA
PRESENCIA DEL USUARIO
¿QUÉ ES BLE?
• BLUETOOTH LOW ENERGY / BT SMART
• PROTOCOLO BT 4.0
• POCO CONSUMO (15MA ESCRIT., 2UA REPOSO)
• BAJO COSTE Y PCBS PEQUEÑOS
• INTEGRACIÓN CON SENSORES
• RESISTENTE A RUIDO E INTERFERENCIAS
MODULACIÓN FHSS
• FHSS: ESPECTRO ENSANCHADO POR SALTO DE FREC.
• 70 CANALES @ 1MHZ POR CANAL EN BT CLASSIC
• 40 CANALES @ 2MHZ POR CANAL EN BT LE
• 37 PARA DISPOSITIVOS ENLAZADOS
• 3 PARA ADVERTISING
¿QUÉ ES BLE?
ROLES:
• PERIPHERAL: PROVEEDOR DE DATOS (GATT)
• CENTRAL: CLIENTE QUE CONECTA CON UN PERIPHERAL
• BROADCASTER: SERVIDOR SIN CONEXIÓN ENTRANTE
• OBSERVER: CLIENTE QUE LEE DATOS PERO SIN INICIAR
UNA CONEXIÓN
¿QUÉ ES BLE?
ROLES:
• PERIPHERAL: PROVEEDOR DE DATOS (GATT)
• CENTRAL: CLIENTE QUE CONECTA CON UN PERIPHERAL
• BROADCASTER: SERVIDOR SIN CONEXIÓN ENTRANTE
• OBSERVER: CLIENTE QUE LEE DATOS PERO SIN INICIAR
UNA CONEXIÓN
GATT PROFILE
• GENERIC ATTRIBUTE PROFILE
• PERFIL: DESCRIPCIÓN DE SUS
POSIBLES APLICACIONES Y
COMPORTAMIENTOS
GATT SERVICE
• CREAR N AGRUPACIONES DE ENTIDADES
LÓGICAS A TRAVÉS DE CARACTERÍSTICAS
• CONTIENEN INFORMACIÓN
• DIFERENCIADAS POR UUID (16 / 128BITS)
GATT CHARACTERISTIC
• EL CONCEPTO DE MÁS BAJO NIVEL EN GATT
• SON ARRAYS DE INFORMACIÓN RELACIONADA
• DIFERENCIADAS POR UUID (16 / 128BITS)
GATT DESCRIPTOR
• SON ATRIBUTOS PREDEFINIDOS QUE
DESCRIBEN EL VALOR DE UNA
CARACTERÍSTICA
• PUEDE SER UNA DESCRIPCIÓN HUMAN-READABLE
DE UNA CARACTERÍSTICA, UN RANGO, UNA
MEDIDA…
ENTONCES, ¿IBEACON?
• ES EL MARCA REGISTRADA DE APPLE
• SOPORTADO EN:
• IPHONE >4S
• IPAD >3
• MAC CON MAVERICK Y BT4.0
COMPATIBILIDAD
• ANDROID:
• > 4.3
• HW BT4.0
• SÓLO ALGUNOS TERMINALES AÚN
• WINDOWS PHONE
• BLACKBERRY
• GNU/LINUX + BLUEZ
CARACTERÍSTICAS
MENCIÓN ESPECIAL PARA LA BATERÍA:
• POSIBILIDAD DE CONFIGURAR LA FRECUENCIA
DE EMISIÓN: DESDE 100MS HASTA VARIOS SEGS.
• SEGÚN LA FRECUENCIA, HASTA 3 AÑOS
• UTILIZACIÓN DE PILAS BOTÓN (CR 2032/2450)
PROXIMIDAD = ZONAS
NO SABEMOS DE DONDE
LLEGA LA SEÑAL, SÓLO LOS
ESTADOS:
• HA ENTRADO
• HA SALIDO
• TIEMPO PERMANENCIA
• ESTIMACIÓN DISTANCIA
VS
• EL GPS UTILIZA MÁS BATERÍA
• NO ES UN GPS PARA INTERIORES DE BAJO COSTE
• GPS ES UN SISTEMA DE LOCALIZACIÓN, BLE ES UN
SISTEMA DE PROXIMIDAD
• NFC ES TECNOLOGÍA CONTACTLESS (~.CM)
• NFC ESTABLECE COMUNICACIÓN BIDIRECCIONAL
VS
¿A QUÉ SE DEBE LA
PROXIMIDAD?
• A QUE NUESTRO CONTEXTO SOCIAL Y REAL ES MÁS
TECNOLÓGICO CADA DÍA (ENTORNO CERCANO)
• A UN NUEVO CANAL TANTO DE COMUNICACIÓN
COMO DE MARKETING (HACIA EL USUARIO)
MITOS Y LEYENDAS
LOS BEACONS PUEDEN ENVIAR
INFORMACIÓN ADEMÁS DE SU
IDENTIFICADOR
NO, SÓLO SE ENVÍA EL ID (UUID + MAJOR + MINOR) EINFORMACIÓN ESTÁTICA DEL GATT (SERV. + CARACT.)
MITOS Y LEYENDAS
LOS BEACONS PUEDEN ENVIAR
NOTIFICACIONES PUSH
NO, SÓLO SE ENVÍA EL ID (UUID + MAJOR + MINOR) EINFORMACIÓN ESTÁTICA DEL GATT (SERV. + CARACT.)
MITOS Y LEYENDAS
LA DISTANCIA ESTIMADA SIEMPRE ES
TOTALMENTE PRECISA
NO, SE ESTIMA EN BASE A LA POTENCIA RECIBIDA EN EL
DISPOSITIVO MÓVIL
MITOS Y LEYENDAS
LOS BEACONS PUEDEN DETECTAR QUÉ
OTROS USUARIOS ESTÁN EN SU RANGO
NO, LOS BEACONS NO ESCUCHAN, SÓLO EMITEN
TRAMAS ADVERTISING
MITOS Y LEYENDAS
MEDIANTE LOS BEACONS PODEMOS
TRIANGULAR LA POSICIÓN CON
EXACTITUD
NO, YA QUE LA POSICIÓN NO ES PRECISA
MITOS Y LEYENDAS
LOS IBEACONS SÓLO PUEDEN SER
DETECTADOS POR DISPOSITIVOS
APPLE
NO, LOS IBEACONS SON DE LA MARCA APPLE, PERO
CUALQUIER DISPOSITIVO CON BLE PUEDE DETECTAR BEACONS
SIMULANDO A UN BEACON
• 0X08: COMANDO BT GENÉRICO (OGF)
• 0X0008: COMANDO BT ESPECÍFICO (OCF)
HCI_LE_SET_ADVERTISING_DATA
SIMULANDO A UN BEACON
• 1E: LONGITUD DE LA TRAMA: NÚMERO DE OCTETOS CON DATOS SIGNIFCATIVOS
QUE VIENEN A CONTINUACIÓN (MAX. 31)
• 02: PRIMER BLOQUE AD DATA (2 OCTETOS)
• 01: EL SIGUIENTE OCTETO SON FLAGS BLUETOOTH
• 1A: VALOR DE LOS FLAGS (1A = 00011010)
• 1A: TAMAÑO QUE OCUPA EL CAMPO ADVERTISING (1A = 26 OCTETOS)
• FF: DATO ESPECÍFICO DEL FABRICANTE
SIMULANDO A UN BEACON
• 4C 00: MANUFACTURER ID (4C00 = APPLE)
• 02: IBEACON
• 15: EL TAMAÑO DE LA TRAMA QUE VIENE AHORA
OCUPA 21 OCTETOS (15 = 00010101 = 21)
SIMULANDO A UN BEACON
• E2 0A … A9 61: UUID (VALOR CONFIGURABLE)
• 00 00: MAJOR (VALOR CONFIGURABLE)
• 00 00: MINOR (VALOR CONFIGURABLE)
• C8 00: TXPOWER + PADDING HASTA 31 OCTETOS
• NOTA: EL TXPOWER SE ENVÍA EN C2
CÁLCULO DE DISTANCIAS
ALGORITMO DE CÁLCULO DE DISTANCIAS:
RSSI = 10N · LOG10(D) + A
• BASADO EN LA LEY DEL MODELO DE ENERGÍA
• VALORES:
• RSSI: SEÑAL MEDIDA EN EL DISPOSITIVO (DECIBELIOS)
• D: ESTIMACIÓN EN METROS DE LA DISTANCIA
• N: PÉRDIDA
• A: RSSI MEDIDO A 1 METRO DE DISTANCIA DEL DISPOSITIVO (DBM)
CÁLCULO DE DISTANCIAS
• SUSCEPTIBLE DE SUFRIR
INTERFERENCIAS QUE
AFECTEN AL RSSI
• CADA DISPOSITIVO TIENE
SU PROPIO AJUSTE
• RECALIBRAR