2017-03-17 3 views
0

J'utilise un Raspberry Pi comme IBeacon en créant un LaunchService qui fonctionne au démarrage exécutant la commande suivante (en utilisant BlueZ):IBeacon dynamique mineur Valeur

sudo hciconfig hci0 up 
sudo hcitool -i hci0 cmd 0x08 0x0006 40 [...] 00 
sudo hcitool -i hci0 cmd 0x08 0x000A 01 
sudo hcitool -i hci0 cmd 0x08 0x0008 1E [...] 02 C0 00 00 00 00 C5 00 

Jusqu'à présent, cela a fonctionné à merveille. Le service fonctionne et tant que le Pi est alimenté, l'iBeacon est annoncé.

Maintenant, je voudrais envoyer des informations avec les données de publicité. J'ai un capteur de luminosité branché au Pi qui renvoie simplement true si un certain seuil de luminosité a été dépassé.

Mon idée est d'utiliser l'identifiant Minor et d'utiliser 1 pour représenter "il est brillant" et 0 pour représenter "il est sombre". Mon application peut alors interpréter cela sans avoir à interroger le Pi via une requête réseau quel est l'état actuel du capteur.

Mais puisque je définis le paquet de publicité de manière statique, je ne serai pas en mesure d'utiliser cette approche à l'avenir je crois.

Je ne sais pas comment faire autrement, alors j'espérais que quelqu'un pourrait avoir un aperçu et pourrait me diriger dans la bonne direction.

Merci pour votre temps!

Répondre

1

Facile. Vous pouvez simplement réémettre ces commandes, en particulier la dernière:

sudo hcitool -i hci0 cmd 0x08 0x0008 1E [...] 02 C0 00 00 00 00 C5 00

il suffit de changer le dernier octet avant ci-dessus C5 à être 01 si vous voulez envoyer un mineur de 1, et le changer en arrière à 00 si vous voulez envoyer un mineur de 0.

+0

Donc, je voudrais écrire un script qui vérifie périodiquement la valeur du capteur et réédite la commande basée sur cela? – LJGibbs

+0

Oui exactement. Il n'est pas clair comment vous lisez le capteur, mais si vous pouvez poster un exemple, je peux montrer un script shell qui modifie dynamiquement la valeur de transmission de la balise. – davidgyoung

+0

Merci! Je l'ai élaboré en utilisant crontab et wiringPi! :) – LJGibbs