[iBeacon] Caractéristiques de la technologie ibeacons
jeudi 17 juillet 2014iBeacon est est un nouveau protocole mis au point par Apple et qui repose sur la technologie Bluetooth 4.0 LE (basse consommation).
Par ce Bluetooth, votre smartphone ou tablette peut entrer en relation avec des petits transmetteurs sans fil appelés Beacon (balise).
Le signal émis par ces iBeacon permet une micro-localisation (extérieure/intérieure) qui peut être interprétée par une application mobile installée sur votre smartphone ou tablette.
Toute l’intelligence de l’échange entre votre appareil mobile et le transmetteur iBeacon se situe au niveau de l’application mobile qui va engager une interaction contextuelle à la détection d’un ou plusieurs iBeacon et au niveau du serveur Internet qui va éventuellement recueillir des informations propres à chaque utilisateur.
Cette géolocalisation peut s’apparenter au signal GPS dans le sens ou pour les beacons, plus on est loin de la balise plus le signal est faible et donc le calcul de la précision est moins fiable. Plus le device est proche du beacon, plus le signal est meilleur et par conséquent, la précision aussi.
Bien sûr le signal peut aussi être atténué par des obstacles tout comme le GPS en indoor. Pour les beacons, c’est pareil, elle s’appuie sur la technologie du Bluetooth LE basé sur une fréquence de 2.4 Ghz et donc à ces limitations physique. Il est sujet à des atténuations du signal suivant les matériaux différents comme les murs, portes, autre structure physique. Et à cette fréquence, le signal est aussi atténué par l’eau et par conséquent au corps humain. Donc pour les beacons, le corps humain lui même atténue le signal Bluetooth et donc la précision est moindre (cercle qui entoure le point est grand). Il est important de tenir compte de la précision (accuracy) lorsque vous faites de la géolocalisation, car elle permet d’indiquer le niveau de certitude de la position et/ ou de la marge d’erreur. Plus la valeur de la précision est grande moins est la certitude de la position du device par rapport à la balise. Il faut donc toujours garder à l’esprit que dans certains environnements physiques, une faible précision peut ne pas être possible.
Actuellement, la technologie BlueTooth 4.0 LE utilisé pour les ibeacons consomme peu la batterie du téléphone.
Le déploiement des ibeacons est facile et il existe de plus en plus de revendeurs (estimote,kontakt,gimbal,radius network,…)
Pas de connection internet nécessaire.
Bien entendu les devices sont passifs en recevant des signaux des ibeacons mais ils peuvent aussi transmettre un signal et devenir in facto un iBeacon. Ce qui offre de nouvelles possibilités comme par exemple une personne qui a son device dans sa poche à proximité d’un ibeacon allume une lumière, ouvre une porte, etc…
Cette technologie offre la possibilité de lancer automatiquement une application qui utilise cette technologie. En mode background, possibilité de notifier l’utilisateur du device. Il faut juste que cette application soit installée sur le téléphone, et pas nécessaire d’être en background
Voici les étapes pour avoir toute les fonctionnalités d’un ibeacon
- Avoir l’application téléchargée et installée
- Avoir le Bluetooth activé
- L’application doit avoir accès à la géo-localisation en background
- L’application doit pouvoir recevoir les notifications.
Pour les ibeacons, il existe deux type d’action:
- Monitoring: cette action permet de déterminer si un device entre ou quitte une région, idéal pour l’utilisation en background
- Ranging: cette action permet de définir la distance (immédiate,proche,loin) d’un ibeacon. Cette activité ne tourne pas en background.
Region Monitoring
Grâce au région monitoring, une application peut envoyer des notifications quand un device rentre ou quitte une région défini par un ou plusieurs beacons. Ces régions peuvent être défini suivant les différents niveaux de granularité proposés par les caractéristiques d’un beacon:
- proximity UUID
- major
- minor
Ranging
Est aussi une autre méthode de géolocalisation à l’intérieur disponible avec la technologie d’iBeacon d’Apple. Cette méthode permet de définir la proximité par rapport à un beacon au travers de 4 notions de proximités:
- immediate (0-1m)
- near (1-3m)
- far (loin ou proche avec interférence)
- unknown
Pour la notion far, la précision est trop basse pour déterminer si on est proche ou très proche. Mais attention, cette notion ne veut pas nécessairement dire qu’on est pas physiquement proche!
Quand la notion far est indiquée, il faut relier la notion de précision afin de déterminer si on est potentiellement proche!
Donc dans certaines situations ou on ne contrôle pas tous les obstacles possibles, il est possible que l’application ne retourne que des proximités far par rapport à tous les beacons.. Dans cette situation l’application peut afficher le message concernant tous les beacons proches et ne pas être verrouillé sur un beacon spécifique comme dans le cas ou on a une proximité near ou immediate. Dans ce genre de situation, il ne faut pas hésiter à faire travailler l’utilisateur à notre place en lui laissant le soin de choisir l’objet relevant en lui proposant les différentes informations. Par exemple, dans un musé, il ne faut pas se focaliser à mettre un beacon sur chaque tableau mais de bien mettre un beacon dans la salle et proposer à l’utilisateur l’ensemble des tableaux de la salle et c’est lui qui choisit le tableau devant lequel il est.
Il peut aussi être très intéressant d’associer la fonctionnalité des passbook à cette technologie.
Calibration iBeacon
Pour bien calibrer un beacon il y a deux paramètres utile à configurer suivant nos besoins.
-Intervalle du signal
Pour avoir un signal stable, 350 ms d’interval est suffisant pour une bonne autonomie de batterie.
Apple préconise 100 ms pour avoir un signal optimal mais la durée de vie de la batterie risque de chuter rapidement. En résumé plus l’intervalle est petite en ms, la duré de vie de la batterie va chuter mais la précision du signal sera meilleure.
En marchant normalement, la précision a peu de différence avec une intervalle entre 20ms et 350ms. Donc si le device bouge rapidement ou si il faut évaluer la position du device sur une courte distance, il peut être intéressant d’avoir une intervalle moindre de 350ms.
– Transmission power
Elle affecte le signal range, la stabilité du signal et la durée de vie de la batterie.
Elle détermine la puissance du signal à transmettre entre le device et le beacon.
Près d’un lieu d’entrée, il est préférable de mettre un TxPower élevé pour attirer un max d’utilisateur (Welcome message), et donc le range (champs d’action) sera plus élevé.
Par contre si on utilise un beacon pour avoir le détail d’un produit, on mettra un Tx Power plus faible pour ne pas déranger ceux qui sont loin du produit.
Bien entendu si on met un TxPower élevé , cela consomme plus de la batterie. Il est utile de mettre un TxPower dans les cas suivants:
- si le beacon doit capturer un maximum de device possible.
- si les utilisateurs a plus de 5m ne peuvent manquer un message.
- si il y a un risque de grande interférences (beaucoup de personnes).
Bonne pratique:
- Méthode ranging ne doit être utiliser que si l’application est active.
- Quand l’application est en mode ranging, elle retourne tous les beacons dans l’ordre des proximités. Mais il est possible que cet ordre ne soit pas toujours respecté si les puissances des signaux sont différents. Par exemple un beacon plus loin physiquement avec un signal plus élevé peut être en premier par rapport à un autre qui est plus proche physiquement mais un signal plus faible.
- Les applications doivent aussi si tous les beacons sont en « far » dire que les beacons sont proches et laisser l’utilisateur choisir le message associé au beacon proche de lui.
- Toujours bien paramétrer dans le fichier Info.plist la variable NSLocationUsagedescription pour rassurer l’utilisateur qu’il sera averti que l’application vous géolocalise (encore plus sous IOS8). Il faut expliquer les bénéfices d’activer cette fonctionnalité.
En conclusion, la technique de geofence (GPS) a tendance a être moins précis à l’intérieur et don en utilisant la technologie iBeacon on améliore considérablement les résultats de surveillance de la région pour des cas d’utilisation à l’intérieur. cependant cette précision peut être affecté par le positionnement physique d’une balise, si l’appareil est dans une poche ou tout simplement si la balise est devant ou derrière l’utilisateur.