Main Content

blelist

近くにある Bluetooth Low Energy 周辺デバイスのスキャン

R2019b 以降

説明

list = blelist は、コンピューターによって検出された、アドバタイズしている近くの Bluetooth® Low Energy 周辺デバイスをスキャンします。ble を使用して周辺デバイスに接続します。

list = blelist(Name,Value) は、オプションの名前と値のペアの引数を使用してスキャンします。名前と値のペアの引数を使用して、特定デバイスのスキャンや比較的長時間のスキャンを行います。

すべて折りたたむ

近くにある Bluetooth Low Energy 周辺デバイスをスキャンして、デバイスのアドバタイズ データを確認します。

blelist を使用して、現在データをアドバタイズしている、近くにあるすべての周辺デバイスをリストします。周辺デバイスが別のデバイスまたはアプリケーションに既に接続されていると、このリストには表示されない場合があります。MATLAB® で検出するには、まず周辺デバイスを他のデバイスまたはアプリケーションから切断してください。

list = blelist
list=14×5 table
    Index           Name              Address        RSSI    Advertisement
    _____    __________________    ______________    ____    _____________

      1      "Gear Fit2 (E16A)"    "8498663EE16A"    -54     [1×1 struct] 
      2      ""                    "2C4D2724754D"    -69     [1×1 struct] 
      3      ""                    "1B75E09FD18F"    -70     [1×1 struct] 
      4      ""                    "4F7D6DAF9FCE"    -75     [1×1 struct] 
      5      ""                    "7B8ADB5851BD"    -76     [1×1 struct] 
      6      ""                    "1838D92EC312"    -78     [1×1 struct] 
      7      ""                    "6A71507635AC"    -86     [1×1 struct] 
      8      ""                    "68CA4203A060"    -86     [1×1 struct] 
      9      ""                    "65C057AD64E5"    -88     [1×1 struct] 
     10      ""                    "399A1B26F47D"    -88     [1×1 struct] 
     11      ""                    "78BDCC3784C0"    -89     [1×1 struct] 
     12      ""                    "5446498F593E"    -91     [1×1 struct] 
     13      ""                    "67992F048DDB"    -92     [1×1 struct] 
     14      ""                    "3A0DAC7C7DCE"    -94     [1×1 struct] 

RSSI の値は信号強度を示します。この table には、信号強度の高いデバイスが先にリストされます。これらのデバイスはより近くにあります。

最初のデバイスのアドバタイズ データを表示します。

list.Advertisement(1)
ans = struct with fields:
                            Type: ["Connectable Undirected"    "Scan Response"]
                      Appearance: "Generic Watch"
              ShortenedLocalName: []
               CompleteLocalName: "Gear Fit2 (E16A)"
                    TxPowerLevel: []
    SlaveConnectionIntervalRange: []
        ManufacturerSpecificData: [0 117 1 0 2 0 1 3 0]
                     ServiceData: []
            CompleteServiceUUIDs: []
          IncompleteServiceUUIDs: []
        ServiceSolicitationUUIDs: []

デバイスのアドバタイズ間隔が既定のタイムアウト値である 3 秒より長い場合は、より大きいタイムアウト値を指定できます。

list = blelist('Timeout',10);

名前と値のペアの引数を使用すると、指定した名前の接頭辞をもつ、または指定したサービスをアドバタイズしている Bluetooth Low Energy 周辺デバイスをスキャンできます。

文字列 "UA" で始まる名前をもつ周辺デバイスをスキャンします。

list = blelist("Name","UA")
list=2×5 table
    Index           Name               Address        RSSI    Advertisement
    _____    ___________________    ______________    ____    _____________

      1      "UA E39 MODULE"        "84DD20E39AB6"    -84     [1×1 struct] 
      2      "UA Footpod 239AE2"    "0CF3EE239AE2"    -87     [1×1 struct] 

サービスを基準として周辺デバイスをスキャンすることもできます。Heart Rate サービスをアドバタイズするデバイスをスキャンします。

list = blelist("Services","Heart Rate")
list=1×5 table
    Index    Name       Address        RSSI    Advertisement
    _____    ____    ______________    ____    _____________

      1       ""     "84DD20E39AB6"    -85     [1×1 struct] 

入力引数

すべて折りたたむ

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: list = blelist("Name","UA") は、"UA" で始まる名前をもつすべての周辺デバイスを返します。

結果をフィルター処理するための周辺デバイス名。'Name' と、文字ベクトルまたは string スカラーで構成されるコンマ区切りのペアとして指定します。この名前と値のペアの引数を使用すると、名前が指定した値で始まる周辺デバイスのみがリストされます。

例: list = blelist("Name","Pebble") は、"Pebble" で始まる名前をもつすべての周辺デバイスを返します。

データ型: char | string

結果をフィルター処理するためのサービス名または UUID。'Services' と、文字ベクトル、string スカラー、文字ベクトルの cell 配列、または string 配列で構成されるコンマ区切りのペアとして指定します。この名前と値のペアの引数を使用すると、指定したすべてのサービスをアドバタイズする周辺デバイスのみのリストが生成されます。

例: list = blelist("Services",["180a","180d"]) は、UUID が 180a のサービスと 180d のサービスの両方をアドバタイズするすべての周辺デバイスを返します。

例: list = blelist("Services","Heart Rate") は、サービス "Heart Rate" をアドバタイズするすべての周辺デバイスを返します。

データ型: char | string | cell

スキャンの所要時間 (秒単位)。'Timeout' と数値で構成されるコンマ区切りのペアとして指定します。この値は 10,485 未満でなければなりません。blelist を使用してもデバイスが見つからない場合は、このパラメーターの値を大きくしてみてください。

例: list = blelist("Timeout",20) は、近くにある周辺デバイスを 20 秒間検索します。

データ型: double

出力引数

すべて折りたたむ

近くにある周辺デバイスのリスト。table として返されます。table には次の列があります。

周辺デバイス名。string スカラーとして返されます。

データ型: string

周辺デバイスの識別子。string スカラーとして返されます。Windows® では、この値はデバイスの 48 ビットの Bluetooth MAC アドレスです。macOS では、この値はランダムな 128 ビットの OS 割り当てアドレスです。

データ型: string

信号強度 (dB 単位)。double として返されます。RSSI は受信した信号強度のインジケーターです。この table には、信号強度の高いデバイスが先にリストされます。これらのデバイスはコンピューターのより近くにあります。

データ型: double

周辺デバイスのアドバタイズ データ。構造体として返されます。Advertisement には各周辺デバイスの接続情報が含まれています。

Windows では、Type フィールドに接続ステータスが表示され、string として返されます。取り得る値は次のとおりです。

周辺デバイスの説明
"Connectable Undirected"コンピューターに接続可能
"Connectable Directed"プログラムされている場合にのみコンピューターに接続可能
"Nonconnectable Undirected"コンピューターに接続できないが、アドバタイズ情報を送信
"Scannable Undirected"コンピューターに接続できないが、スキャン可能
"Scan Response"スキャン要求に対してスキャン応答を送信

macOS では、Connectable フィールドには接続ステータスが表示され、数値として返されます。1 は true (接続可能) を示し、0 またはその他の数値は false (接続不可) を示します。

Advertisement 内の残りのフィールドは、汎用アクセス プロファイル (GAP) で Bluetooth SIG によって定義された他のアドバタイズ データです。アドバタイズ データのタイプの完全なリストとそれらの仕様については、Bluetooth SIG Web サイトを参照してください。

データ型: struct

バージョン履歴

R2019b で導入