Est-il un moyen d'augmenter BLE annonce de la fréquence dans les BlueZ?
J'ai un ordinateur sous linux diffusion d'un c? BLE de la publicité en utilisant les commandes suivantes:
sudo hciconfig hci0 up
sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 00 00 00 00 00 00 00 00 00 00 00 00 00
sudo hciconfig hci0 leadv 3
Cela fonctionne bien, mais l'ordinateur ne diffuse que son bluetooth publicité une fois par seconde. Je voudrais augmenter cette fréquence à 10 fois par seconde ou plus. Est-il un moyen pour augmenter la fréquence de la publicité dans BlueZ? Ou une fois par seconde la norme et immuable? Je suis heureux de faire cela avec C Api si pas possible avec les outils de ligne de commande.
Vous devez vous connecter pour publier un commentaire.
Je pense que j'ai tout compris.
Au lieu de:
Ce faire:
La deuxième hcitool de commande (0x08 0x0006) est "LE Jeu de la Publicité des Paramètres. Les deux premiers octets A0 00 sont les "min d'intervalle". La seconde deux octets A0 00 sont les "max interval". Dans cet exemple, il définit le temps entre les publicités à 100ms. La granularité de ce paramètre est de 0,625 ms, de sorte que le réglage de l'intervalle d'01 00 définit la publicité d'aller tous les 0.625 mme. Le paramètre A0 00 définit la publicité d'aller tous les 0xA0*0.625 ms = 100ms. Un réglage à 40 06 définit la publicité d'aller tous les 0x0640*0.625 ms = 1000ms. Le cinquième octet, 03, définit la publicité de mode à la non-connectable. Avec un non-connectable de la publicité, de la manière la plus rapide que vous pouvez faire de la publicité est de 100 millisecondes, avec une connectable la publicité (0x00) vous pouvez faire de la publicité beaucoup plus rapide.
La troisième hcitool de commande (0x08 0x000a) est "LE Jeu de la Publicité Activer". Il est nécessaire de lancer cette commande avec hcitool au lieu de hciconfig, parce que "hciconfig hci0 leadv 3" sera automatiquement réglée à la publicité des taux plus lent par défaut de 1280ms.
J'ai compris cela en exécutant hcidump en même temps que l'exécution de l'origine des commandes que vous avez posté dans la question. Cela vous montre un tas de brutes hcitool commandes (bien annoté pour ce qu'ils font) qui est exécutée par bluez. Je viens d'arrivé à l'avis de la hcidump sortie "hciconfig hci0 leadv 3" questions de de ses un ralentissement de l'ensemble de la publicité de l'intervalle de commande.
Noter que tout cela est basé sur le IOGear GBU521, de sorte que cela peut ne pas fonctionner avec d'autres Bluetooth LE les puces.
sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0 00 00 00 00 c5 00
, de sorte qu'il est conforme aux spécifications (0x1e être au nombre des octets, et les données suivantes sont 31 octets de Données Publicitaires)The Advertising_Interval_Min and Advertising_Interval_Max should not be the same value to enable the Controller to determine the best advertising interval given other activities.
Vous pourriez vouloir séparer ces valeurs un peu.