2017-07-24 2 views
0

Je travaille actuellement avec deux STM32F401RE planches Nucleo avec IDB05A1 extensions Bluetooth LE à l'aide de la pile BlueNRG-MS. Une carte est configurée en mode annonceur. Les autres cartes sont configurées en mode observateur et sont supposées imprimer tous les messages reçus de l'annonceur. Lorsque je lance la procédure d'observation avec la commande spécifique au fournisseur comme indiqué ci-dessous, tout fonctionne correctement et je peux traiter LE_ADVERTISING_EVENT dans la fonction HCI_EVENT_CB.BlueNRG-MS ne génère pas des rapports publicitaires en mode observateur

aci_gap_start_observation_procedure(0x4000, 0x4000, 0x00, 0x00, 0x00); 

Lorsque je tente de faire la même chose avec le Bluetooth standard des commandes comme indiqué ci-dessous, aucun LE_ADVERTISING_REPORT est généré et traitable dans HCI_EVENT_CB, même si la norme Bluetooth dire qu'il devrait.

hci_le_set_scan_parameters(0x00, 0x4000, 0x4000, 0x00, 0x00); 
hci_le_set_scan_enable(0x01, 0x00); 

Des idées sur ce que je fais mal?

Merci d'avance!

Répondre

0

Vous devez activer le mode LL_WITOHUT_HOST par appelant ACI_HAL_WRITE_CONFIG_DATA avec des paramètres:

  • offset = 0x2C
  • Longueur = 1
  • Valeur = 1

Cependant, il est recommandé coller avec GAP et GATT (ne pas activer ce mode) car l'hôte garantit la compatibilité totale avec la spécification BLE.