ダイレクトアドバタイズを行なうためのBLEペリフェラルの設定 - KBA218959 - Community Translated (JA)

Version 3

    Community Translated by  HiOm_1802421        Version: **

     

    Translation - English: Configuring BLE Peripheral to Perform Directed Advertisement - KBA218959

     

    質問:

    ダイレクトアドバタイズを行うためのBLEペリフェラルの設定方法を教えてください。

     

    回答:

    BLE Component Configurationにオプションがなく、ダイレクトアドバタイズを有効にするAPIもないため、ダイレクトアドバタイズを実行するするためのBLEペリフェラルの設定は容易ではありません。しかし、検出モード情報のアドバタイズパラメータを変更することにより、アプリケーションでダイレクトアドバタイズを有効にできます

     

    1. CYBLE_GAPP_CONNECTABLE_LOW_DC_DIRECTED_ADV または CYBLE_GAPP_CONNECTABLE_HIGH_DC_DIRECTED_ADV のいずれかにアドバタイズタイプを変更してください

    cyBle_discoveryModeInfo.advParam->advType = CYBLE_GAPP_CONNECTABLE_LOW_DC_DIRECTED_ADV;

     

    2. ダイレクトデバイスの(セントラル)アドレスタイプとアドレスを設定してください。アドレスタイプを CYBLE_GAP_ADDR_TYPE_PUBLIC または CYBLE_GAP_ADDR_TYPE_RANDOM のいずれかに設定してください。この例では、パブリックアドレスが 0x00A05000251F であるセントラルに対してペリフェラルがダイレクトアドバタイズを実行することを示します。

      cyBle_discoveryModeInfo.advParam->directAddrType = CYBLE_GAP_ADDR_TYPE_PUBLIC;
    cyBle_discoveryModeInfo.advParam->directAddr[5] = 0x00;
    cyBle_discoveryModeInfo.advParam->directAddr[4] = 0xA0;
    cyBle_discoveryModeInfo.advParam->directAddr[3] = 0x50;
    cyBle_discoveryModeInfo.advParam->directAddr[2] = 0x00;
    cyBle_discoveryModeInfo.advParam->directAddr[1] = 0x25;
    cyBle_discoveryModeInfo.advParam->directAddr[0] = 0x1F;

    3. CyBle_GappStartAdvertisement() または CyBle_GappEnterDiscoveryMode() APIを使用して、アドバタイズを開始してください。

     

    注:

    1. アドバタイズを開始する前にアドバタイズパラメータを変更してください。アドバタイズ開始後に行っても果はありません。
    2. BLEコンポーネント設定で設定された初期のアドバタイズタイプは重要ではありません。