Construye un iBeacon DIY con una Raspberry Pi

Los anuncios dirigidos a un usuario en particular que atraviesa un centro metropolitano son materia de futuros distópicos. Pero ese no es un futuro distópico en absoluto: la tecnología ya está aquí.

Los anuncios dirigidos a un usuario en particular que atraviesa un centro metropolitano son materia de futuros distópicos.  Pero ese no es un futuro distópico en absoluto: la tecnología ya está aquí.
Anuncio

Los anuncios dirigidos a un usuario en particular que atraviesa un centro metropolitano son materia de futuros distópicos, demostrados especialmente por el Minority Report de la película Tom Cruise. Pero ese no es un futuro distópico: la tecnología ya está aquí. Aunque no se basa en una identificación rápida con la retina, sí utiliza Bluetooth. Desarrollado por Apple, iBeacon fue desarrollado para proporcionar información basada en la ubicación a usuarios de iOS Cómo Bluetooth 4.0 está configurando el futuro de la conectividad móvil Cómo Bluetooth 4.0 está configurando el futuro de la conectividad móvil Bluetooth es la estrella olvidada en la hoja de especificaciones del dispositivo. Lea más, utilizando la proximidad de un dispositivo para activar un anuncio personalizado o realizar un seguimiento de los movimientos de un usuario. Google también creó su propia especificación de Beacons versátil, aunque el soporte para eso es limitado en la actualidad ya que los desarrolladores lo comprenden.

muo-rpi-mediaready

Como era de esperar, puede usar una Raspberry Pi como iBeacon, al agregar un módulo USB Bluetooth de baja energía (BLE). Más interesante aún, podemos cooptar esta tecnología y abandonar los métodos publicitarios futuristas a favor de los usos en el hogar.

Cómo funciona iBeacon

Construir un transmisor Bluetooth de baja energía que las aplicaciones de los dispositivos inteligentes puedan detectar es sencillo, pero ¿cómo funciona un iBeacon?

muo-diy-pibeacon-ble2

BLE está diseñado específicamente para la transmisión en distancias cortas, pero con menores requisitos de energía (una sola batería de celda de moneda debe durar tres años). Pequeños paquetes de datos, conocidos como "publicidades" (no en el sentido de marketing), son transmitidos por el faro y se utilizan para desencadenar acciones en aplicaciones de teléfonos inteligentes, tal vez mostrar un mensaje comercial o solicitar al lector que realice una acción.

Más allá del marketing, las iBeacons se usan generalmente para enviar estados de ubicación a una aplicación, como mostrar información sobre una exposición mientras camina alrededor de un museo.

Construya su propio iBeacon con una Raspberry Pi y un Dongle Bluetooth

Para usar su Raspberry Pi como un iBeacon, necesitará un adaptador USB Bluetooth. Sin embargo, no puede adjuntar ningún dispositivo USB Bluetooth antiguo. En su lugar, deberá usar un dispositivo BLE (Bluetooth de baja energía), que puede adquirirse de forma relativamente económica en Amazon o Adafruit. Puedes ejecutar este proyecto en una instalación Raspbian estándar. Optimizar el poder de tu Raspberry Pi con Raspbian. Optimizar el poder de tu Raspberry Pi con Raspbian. Como corresponde a un hombre con mucha tecnología en sus manos, he estado jugando con mi Raspberry Pi recientemente., configurando el dispositivo para que funcione a su máximo potencial. Continúa funcionando como ... Leer más, ya sea instalado de la manera habitual Cómo instalar un sistema operativo en su Raspberry Pi Cómo instalar un sistema operativo en su Raspberry Pi A continuación, le mostramos cómo instalar y ejecutar un nuevo sistema operativo en su Pi: y cómo clonar su configuración perfecta para la recuperación rápida de desastres. Lea más o vía NOOBS Cómo NOOBS para Raspberry Pi puede ayudar a los usuarios que compran por primera vez Cómo NOOBS para Raspberry Pi puede ayudar a los usuarios principiantes Hay algo sobre Raspberry Pi que podría desalentar a las personas: hasta ahora, configurarlo no ha sido particularmente útil amistoso. ¡NOOBS pretende cambiar eso! Lee mas .

(Si desea un acceso directo a todo esto, la imagen de PiBeacon es su mejor opción, desde RadiusNetworks. Simplemente descargue, escriba en la tarjeta SD y arranque).

Sin embargo, antes de conectar el BLE, es hora de instalar algunas bibliotecas:

sudo apt-get install libusb-dev libdbus-1-dev libglib2.0-dev libudev-dev libical-dev libreadline-dev 

Ahora que ya está hecho, necesitarás instalar Bluez, la pila Bluetooth para Linux.

 sudo mkdir bluez cd bluez sudo wget www.kernel.org/pub/linux/bluetooth/bluez-5.11.tar.xz 

muo-diy-pibeacon-code1

Una vez descargado, Bluez debe ser construido.

 sudo unxz bluez-5.11.tar.xz sudo tar xvf bluez-5.11.tar cd bluez-5.11 sudo ./configure --disable-systemd sudo make 

(Este paso puede tomar un tiempo. Ve y prepara una taza de té. O hornea un pastel de frambuesa).

 sudo make install 

Estás casi listo para ir. Emita un comando de apagado y luego, cuando el Pi se apague, conecte el BLE.

 sudo shutdown -h now 

Transmite el PiBeacon

Para configurar el PiBeacon para la radiodifusión, primero compruebe que el módulo BLE ha sido detectado

 hciconfig 

Notarás que si se detecta el módulo, su estado actualmente es ABAJO.

Para resolver esto, configure el dispositivo:

 sudo tools/hciconfig hci0 up sudo tools/hciconfig hci0 leadv 3 sudo tools/hciconfig hci0 noscanc 

(Tenga en cuenta que la línea final desactiva el escaneo con Bluetooth, ya que esto puede causar problemas).

Repita el comando anterior para ejecutar hciconfig:

 hciconfig 

Ahora verá que el estado del dispositivo es UP RUNNING.

¿Cómo se anuncia con el PiBeacon?

muo-diy-pibeacon-ipad

Así que tienes un iBeacon que funciona con un Raspberry Pi. Pero, ¿cómo se usa para identificarse a los dispositivos Bluetooth cercanos? Según lo explica Adafruit, el faro necesita ingresar datos de publicidad. Aconsejan que se ingrese la siguiente cadena con el comando hcitool:

 sudo hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 E2 0A 39 F4 73 F5 4B C4 A1 2F 17 D1 AD 07 A9 61 00 00 00 00 C8 00 

¿Qué hay en el paquete de datos?

Sí, eso es una larga cadena de números y letras. Está escrito en hexadecimal, y aunque no podemos verlo, la cadena se divide en secciones. Por ejemplo, la marca FF indica que seguirán datos específicos del fabricante, en este caso el 4C 00 que es la identificación de Apple. Esta cadena se puede cambiar según corresponda.

Vamos a dividirlo:

muo-diy-pibeacon-data

Como puede ver, la cadena significa poco hasta que pueda ver para qué sirve cada segmento de datos. Tenga en cuenta que la ID siempre será la misma, para identificar el tipo de paquete, y que la longitud de datos necesita convertirse a decimal para apreciar la longitud real del paquete.

Con la marca FF vemos la ID de 128 bits como se explicó anteriormente, seguida de los datos principales y los datos menores. Estos identifican ubicaciones o notas de forma jerárquica (mayor primero, segundo menor). Finalmente, TX Power ayuda a estimar la distancia.

El PiBeacon, como un iBeacon, tiene tres rangos: inmediato (localizado a unos pocos centímetros), cercano (unos pocos metros) y lejano (alrededor de 10 metros). Cualquier distancia medida es solo aproximada, ya que la señal BLE se ve debilitada por los muebles, las puertas y las paredes.

Si planea usar la tecnología iBeacon, es importante tener una ID única para su aplicación. Puede usar algo como www.uudentnerator.net o si usa una Mac, la utilidad uuidgen de la línea de comando generará una ID única.

PiBeacon es Live!

Con esto ingresado, el PiBeacon ahora está publicitando. Todo lo que necesita hacer ahora es encontrar una aplicación iBeacon adecuada en la tienda iOS como Beacon Toolkit ($ 0.99) para detectarla, seleccionando Escuchar . La cadena anterior se proporciona como un UUID en la aplicación Beacon Toolkit. Se pueden usar otros UUID, pero estos no funcionarán con esa aplicación: use el Beacon Toolbox un poco más caro ($ 4.99), que debería ser capaz de identificar la mayoría de las iBeacons dentro del alcance.

¿Desgraciado de dedicar una Raspberry Pi a esta única tarea? No se preocupe: puede construir un Arduino iBeacon en su lugar, siempre que tenga un escudo BLE (que puede estar disponible en su Arduino Starter Kit. ¿Qué hay en su Arduino Starter Kit? [Arduino Beginners] ¿Qué hay en su Arduino Starter Kit? [ Arduino Beginners] Frente a una caja llena de componentes electrónicos, es fácil sentirse abrumado. Aquí hay una guía de lo que encontrará exactamente en su kit. Lea más). Aquí hay una demostración:

¿Te sientes aún más aventurero? $ 10 en electrónica y algunas habilidades de soldadura Aprenda a soldar, con estos simples consejos y proyectos Aprenda a soldar, con estos simples consejos y proyectos ¿Está un poco intimidado por la idea de un hierro fundido y metal fundido? Si quieres empezar a trabajar con productos electrónicos, vas a necesitar aprender a soldar. Permítanos ayudar. Leer más también te dará un iBeacon DIY.

¿Preguntas o comentarios? Déjalos abajo.

In this article