- Qu'est-ce que Bluetooth Low Energy (BLE)?
- Comment la technologie iBeacon utilise-t-elle BLE?
- En quoi iBeacon est-il important?
- Composants requis
- Configuration du module HM10 BLE en mode iBeacon
- Utilisation de l'application Android BLE Scanner pour iBeacon
Les termes technologiques Beacon et iBeacon sont souvent utilisés de manière interchangeable. iBeacon a été introduit par Apple et est l'implémentation par Apple de la technologie sans fil Bluetooth à faible consommation d'énergie (BLE) pour fournir une manière différente d'informations et de services basés sur la localisation aux iPhones d'Apple et aux autres appareils iOS. La norme technologique permet aux applications mobiles (fonctionnant à la fois sur les appareils iOS et Android) de collecter les informations des balises dans le monde physique et d'afficher les informations sur les téléphones.
Qu'est-ce que Bluetooth Low Energy (BLE)?
BLE est similaire au protocole Bluetooth avec une différence de consommation d'énergie. Le BLE est une technologie de réseau personnel sans fil qui est utilisée pour transmettre des données sur une courte distance et est conçue pour une faible consommation d'énergie. Le BLE a été conçu pour fonctionner pendant une longue période, même en utilisant une pile bouton CR2032. Le BLE maintient la portée de communication similaire à son précédent Bluetooth classique.
Comment la technologie iBeacon utilise-t-elle BLE?
Avec la technologie iBeacon, Apple a normalisé le format de la publicité BLE. Le format standard se compose de quatre pièces principales qui sont UUID, Major, Minor, Tx Power. Pour comprendre chaque Conditions plus clairement, prenons un exemple d'Apple Electronics où le nombre de magasins doit être configuré dans différents pays. La description de chacun est la suivante:
UUID: l'UUID est une chaîne de 16 octets utilisée pour identifier le nombre de balises d'un grand groupe de balises. Cela identifie les balises pour une application particulière. Par exemple, si Apple maintient une chaîne de magasin électronique hors ligne, toutes les balises partageront le même UUID indiquant que la balise appartient à Apple.
Major: Il s'agit d'une chaîne de 2 octets utilisée pour identifier un plus petit groupe de Beacon à partir d'un grand groupe de Beacon. Ainsi, si le Beacon appartient à Apple et qu'Apple a installé 10 balises dans une ville pour 10 magasins, Apple saura alors que quelle balise appartient à quel magasin dans la même ville.
Mineure: il s'agit d'une chaîne de 2 octets utilisée pour identifier la balise individuelle à partir d'un groupe de balises. Supposons qu'Apple ait installé 50 balises dans un magasin, donc en utilisant le mineur, Apple sera en mesure de trouver celui où se trouve le client dans le magasin.
Tx Power: La Tx Power est utilisée pour déterminer la proximité ou la distance de la balise. La proximité doit être choisie avant l'étalonnage et doit être codée en dur à l'avance. La proximité choisie donne une distance estimée à prendre comme référence par les appareils.
Par exemple: La balise déjà configurée et diffusée ressemblera à ceci:
UUID: 36BFDA543784CAD5
Majeur: 45
Mineur: 7
Nous définirons tous ces paramètres dans ce tutoriel à l'aide d'un module BLE défini en mode iBeacon.
Pour en savoir plus sur la technologie BLE, consultez notre article précédent sur BLE avec ESP32.
En quoi iBeacon est-il important?
Avec la popularité croissante de Target Margeting, l'iBeacon peut jouer un rôle important. En formant le réseau iBeacon, n'importe quelle marque, détaillant ou magasin sera en mesure de localiser l'activité et d'autres données importantes sur le comportement des clients qui peuvent en outre être utilisées pour envoyer des informations très significatives, contextuelles et hyper-locales sur le smartphone du client. Prenons l'exemple d'Apple comme ci-dessus, supposons qu'un client avec un smartphone passe à proximité d'un Apple Store électronique.
Lorsque l'application installée sur le smartphone du client entend un iBeacon installé en magasin, l'application est capable d'envoyer les données via iBeacon avec toutes les offres et les détails du magasin. Si le client trouve l'offre attrayante et souhaite acheter, il peut alors entrer et acheter dans le magasin. En dehors de cela, l'iBeacon peut avoir d'autres applications telles que les paiements, l'analyse des acheteurs / clients et des applications dans les aéroports, les parcs à thème, les salles de concert et bien d'autres domaines. Le potentiel de la technologie iBeacon est illimité et reste à découvrir.
Dans ce didacticiel, nous allons démontrer iBeacon à l'aide du module HM10 BLE basé sur Bluetooth 4.0. Mais avant de commencer, il est important de jeter un coup d'œil sur Comment changer ou flasher le firmware du module Clone HM-10 si vous utilisez un module HM10 cloné car la plupart des modules HM10 disponibles sur le marché sont des modules clonés. Nous avons également utilisé le module Bluetooth HM10 avec Arduino pour contrôler une LED.
Ce didacticiel HM10 BLE iBeacon montrera comment configurer le module HM10 en tant qu'iBeacon et découvrir ses détails tels que RSSI (Proximité, Distance) sur l'application Android.
Composants requis
Matériel:
- Module HM10 BLE
- Convertisseur USB vers TTL
- Cavaliers
Logiciel:
- IDE Arduino
- Application Android (scanner BLE)
BLE HM10 utilisé dans ce didacticiel utilise le firmware HM10 v540 disponible sur le site officiel de jnhuamao.
Configuration du module HM10 BLE en mode iBeacon
Dans un premier temps régler le BLE HM10 module en mode IBeacon. Pour régler le HM10 en mode iBeacon, suivez simplement les étapes ci-dessous.
- Connectez le module HM10 et le convertisseur USB / TTL avec les connexions suivantes.
Broches du module HM10 |
Convertisseur USB / TTL |
Rx |
Tx |
Tx |
Rx |
Vcc |
5V |
Gnd |
Gnd |
- Ouvrez Arduino IDE et sélectionnez le port COM du convertisseur USB / TTL
- Ouvrez maintenant le moniteur série de l'IDE Arduino et sélectionnez le débit en bauds de '9600' et sélectionnez également le 'No Line Ending' sur Serial Monitor.
- Tapez les commandes AT suivantes en mode séquence l'une après l'autre, après avoir obtenu la réponse OK de HM10.
AT + RENOUVELER
AT + RÉINITIALISER
À
À + MARJ0x1000
À + MINO0x0007
AT + ADVI5
AT + NOMiBeacon
À + ADTY3
AT + IBEA1
AT + DELO2
À + PWRM0
AT + RÉINITIALISER
Remarque: les valeurs marquées en rouge dans la commande AT sont configurables par l'utilisateur. Il peut être modifié par l'utilisateur en fonction de ses exemples.
La description de la commande all AT utilisée ci-dessus est la suivante:
- AT + RENEW (Restaure les paramètres d'usine par défaut)
- AT + RESET (redémarre le HM10)
- AT (test AT)
- AT + MARJ0x1000 (Définit le nombre majeur d'iBeacon sur 0x1000 HEX converti en 4096 en DEC)
- AT + MINO0x0007 (Définit le nombre mineur iBeacon sur 0x1000 HEX converti en 4096 en DEC)
- AT + ADVI5 (définit l'intervalle de publicité à 5, soit 546,25 millisecondes)
- AT + NAMEiBeacon (Définissez le nom du module HM-10 sur iBeacon. Modifiez-le en fonction de l'utilisation)
- AT + ADTY3 (définit HM10 non connectable pour économiser l'énergie et aucun client ne peut se connecter au module, ce qui permet d'économiser plus d'énergie)
- AT + IBEA1 (active le mode iBeacon sur HM10)
- AT + DELO2 (Règle l'iBeacon en mode diffusion uniquement pour économiser de l'énergie. Le HM10 peut diffuser sa présence et rechercher d'autres appareils car il s'agit d'un émetteur-récepteur Bluetooth)
- AT + PWRM0 (Permet au HM10 de se mettre en veille automatique et de réduire la consommation d'énergie de 8 à 0,18 mA. L'iBeacon transmettra toujours cependant)
Après avoir exécuté toutes les commandes AT, Serial Monitor ressemble à ci-dessous:
La réponse aux commandes AT est imprimée en série sans nouvelle ligne. Vous pouvez facilement faire la différence entre la réponse de deux commandes AT car après chaque commande AT, le HM10 répond OK. Donc, si la commande est AT + RENEW, HM10 répondra OK + RENEW et de même pour les autres commandes AT.
. Il peut maintenant diffuser UUID, majeur, mineur et d'autres détails. Pour voir les détails diffusés, il existe un certain nombre d'applications Android iBeacon disponibles, téléchargez n'importe quelle application Android iBeacon à partir du Play Store ou de l'Apple Store et vous pourrez trouver le module HM10 défini en mode iBeacon. Dans ce didacticiel, nous utilisons une application Android « BLE Scanner ».
Pour désactiver le mode iBeacon, utilisez simplement la commande AT + IBEA0. Et puis rendez la réponse de scan publicitaire connectable en envoyant AT + ADTY0. Et puis réinitialisez simplement le HM10 en envoyant AT + RESET.
Utilisation de l'application Android BLE Scanner pour iBeacon
- Téléchargez l'application BLE Scanner sur Play Store et ouvrez-la.
- L'écran ressemble à celui ci-dessous.
- L'onglet «À proximité» sera utilisé pour voir toutes les iBeacons disponibles. Pour commencer à rechercher l'iBeacon, déroulez l'écran vers le bas ou accédez à l'icône de recherche dans le coin supérieur droit de l'écran. Cela commencera à rechercher les iBeacons.
- Après avoir recherché l'iBeacon, vous pourrez voir le RSSI, l'UUID, le majeur et le mineur d'iBeacon. Le RSSI changera si vous éloignez le mobile ou l'iBeacon l'un de l'autre. Ici, dans cet écran, le RSSI est (-50). Cela peut être vu dans la vidéo de démonstration donnée à la fin de cet article.
- Après avoir retiré le smartphone de l'iBeacon HM10, la valeur RSSI passe de -50 à -81. Ces valeurs continueront à changer si vous déplacez l'un des appareils.
Les valeurs acceptables du signal RSSI sont les suivantes:
Force du signal |
TL; DR |
Requis pour |
|
---|---|---|---|
-30 dBm |
Incroyable |
Force de signal maximale réalisable. Le client ne peut être qu'à quelques mètres de l'AP pour y parvenir. Pas typique ou souhaitable dans le monde réel. |
N / A |
-67 dBm |
Très bon |
Force de signal minimale pour les applications qui nécessitent une livraison très fiable et rapide de paquets de données. |
VoIP / VoWiFi, vidéo en streaming |
-70 dBm |
d'accord |
Force minimale du signal pour une livraison fiable des paquets. |
Courriel, Web |
-80 dBm |
Pas bon |
Force de signal minimale pour la connectivité de base. La livraison des paquets peut ne pas être fiable. |
N / A |
-90 dBm |
Inutilisable |
Approche ou noyade dans le bruit de fond. Toute fonctionnalité est hautement improbable. |
N / A |
- Pour trouver l'iBeacon dans la vue de proximité, accédez simplement à l'icône de proximité dans le coin supérieur droit juste à côté de l'icône de recherche. L'écran affichera tous les iBeacon disponibles avec signal RSSI.
Ceci termine le didacticiel sur la configuration du module HM10 BLE en tant qu'iBeacon. Si vous avez des doutes ou des suggestions, veuillez écrire sur notre forum ou commenter ci-dessous.