このページの本文へ

Windows Info 第465回

WindowsのPowerShellからBluetoothデバイスを調べる

2025年01月19日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

Bluetoothに関連する情報をPowerShellで扱う

 今回は、Bluetoothに関連する情報をPowerShellで扱う方法を考える。GUIでは「設定」→「Bluetoothとデバイス」→「デバイス」とすることで、接続されているデバイスを一覧表示できる。

Bluetooth

ペアリングしたBluetoothデバイスは、「設定」→「Bluetoothとデバイス」→「デバイス」に表示されるが、ここではデバイス名以外の情報はほとんど表示されない

 コマンドラインからは、以下のコマンドでページを開くことがてきる。

bthprops.cpl
start ms-settings:connecteddevices

 「bthprops.cpl」は、コントロールパネルのアイコンに対応するプログラムで、「C:\Windows\System32」にある。もう1つは、設定アプリのURI起動である。

 「設定」→「Bluetoothとデバイス」→「デバイス」では、注意して見ないと、Bluetoothデバイスかどうかを判別できない。デバイス名の下に「ペアリング済み」と表示されているのがBluetoothデバイスである。

 深い知識を持たない一般ユーザーに、BluetoothデバイスとUSBデバイスを区別する作業は不要、というスタンスがここからは感じられる。Windows 8以降、コントロールパネルと設定が分離してから、Windowsには、このように詳細を伏せるところが見られるようになった。

 こうしたことに興味がないユーザーには良いのだろうが、情報を必要とするユーザーは、大量の情報が表示される「デバイスマネージャー」やコマンドラインなどを使わざるを得なくなる。

 さて、Bluetoothは通信方式なのだが、Windowsの中では、「デバイス」としての静的な情報と、通信/プロトコルとしての動的な情報がある。前者は、どんなデバイスが登録(ペアリング)されているのか、といったWindowsのデバイスシステムの中の情報である。後者については、APIを使い、プロトコルに応じた動き、たとえば、Bluetoothのアドバタイズを受信するといった処理となる。

 後者については、プログラミングが関わるため、別の機会に解説することにしたい。

PnPデバイスからBluetooth関連のデバイスを取り出す

 PowerShellで、デバイス情報を扱うには「Get-PnpDevice」コマンドを使うのが定石である。Windowsが認識しているすべてのデバイスは、PnpDeviceとして登録されている。

 ただし、大量のデバイスがあるため、Where-Object(エイリアスは「?」)を使って、目的のものだけを取り出すことを考える。これが、PowerShellでのデバイス情報処理の基本である。

 Bluetoothデバイスのクラス(Class)は「Bluetooth」だが、出力させてみると、Bluetooth関連のサービスなども列挙される。物理的なBluetoothデバイスを探したければ、以下のコマンドを使う。

Get-PnpDevice | ? Class -eq "Bluetooth" | ? CompatibleID -like "*GENERIC*DEVICE*"

Bluetooth

Get-PnpDeviceの出力をWhere-Object(エイリアスは「?」)で、フィルタすることで必要なデバイスのみを取り出すことができる。なお、出力を成形するためft(Format-Tableコマンドのエイリアス)を使っている

 このとき「CompatibleID」が「{BTHENUM\GENERIC_DEVICE}」となっているものはClassic Bluetoothデバイス(Bluetooth BR/EDR)で、「{BTHLE\GenericDevice}」になっているものが、Bluetooth LE(Low Energy)デバイスだ。1つのデバイスが同時に両方の特性を持っていることもあるので注意してほしい(Nameなどが同一)。

 実行環境によっては、InstanceIDの後半が省略されて、すべて表示されないことがある。そのような場合には、

Get-PnpDevice | ? Class -eq "Bluetooth" | ? CompatibleID -like "*GENERIC*DEVICE*" | ft -AutoSize

とする。

 列挙したBluetoothデバイスのプロパティにある「InstanceID」を使うことで、PnpDeviceのプロパティを入手できる。それには、

Get-PnpDeviceProperty -InstanceId <InstanceID>

とする。

Bluetooth

Get-PnpDevicePropertyを使うことで、デバイスに関する静的な情報が得られる

 大量の情報が出力されるが、重要なものとして「DEVPKEY_DeviceContainer_Category」「DEVPKEY_Device_HardwareIds」がある。前者はデバイスのカテゴリ、後者にはBluetoothデバイスのMACアドレスが含まれている。

 なお、Get-PnpDevicePropertynの出力する情報は、レジストリの「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHENUM」(Bluetooth Classicデバイス)、「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHLE」(Bluetooth LEデバイス)にあるものと一部共通している。

PnpDevicePropertyを比較する

 Get-PnpDevicePropertyで、デバイス情報をオブジェクトとして撮り出せるため、これを変数に記録し、Compare-Objectコマンド(https://learn.microsoft.com/ja-jp/powershell/module/microsoft.powershell.utility/compare-object?view=powershell-7.4)で比較することで、その変化を調べられる。具体的には、以下の手順を使う。

$S1=Get-PnpDeviceProperty -InstanceId <InstanceID>
#デバイスを切断するなど、デバイスの状態を変える操作をする
$S2=Get-PnpDeviceProperty -InstanceId <InstanceID>
Compare-Object $S1 $S2 -Property KeyName,Data

Bluetooth

Bluetoothデバイスの切断時、接続時でGet-PnpDevicePropertyを変数に記録すれば、Compare-Objectコマンドでその差分を求めることができる

 Compare-Objectは、2つのオブジェクトを比較し違いを表示するコマンド。複数のプロパティを持つオブジェクトの場合、比較対象とするプロパティを指定する必要がある。ここでは、PnpDevicePropertyのKeyNameとDataプロパティを指定した。

 Classic Bluetoothデバイスを接続すると、PnpDeviceProperty「{83DA6326-97A6-4088-9453-A1923F573B29} 15」がFalseとなり、接続した時間(UTC)が「DEVPKEY_Bluetooth_LastConnectedTime」に記録されることがわかる。

 PnpDevicePropertyを状態変化の前後で変数に記録して比較することで、プロパティの変化を調べることもできる。今回は、Bluetoothを例に解説したが、基本的な考えは、PnpDevice全般に適用可能だ。

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
1
Lenovo ノートパソコン パソコン IdeaPad Slim 3 14.0インチ AMD Ryzen™ 7 8840HS メモリ16GB SSD512GB MS Office搭載 Windows11 バッテリー駆動12.6時間 重量1.39kg ルナグレー 83K90028JP ノートPC
Lenovo ノートパソコン パソコン IdeaPad Slim 3 14.0インチ AMD Ryzen™ 7 8840HS メモリ16GB SSD512GB MS Office搭載 Windows11 バッテリー駆動12.6時間 重量1.39kg ルナグレー 83K90028JP ノートPC
¥149,800
2
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥35,129
3
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、日本語キーボード、Touch ID - スカイブルー
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、日本語キーボード、Touch ID - スカイブルー
¥184,800
4
Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、512GB SSDストレージ、1080p FaceTime HDカメラ、Touch ID - ブラッシュ
Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、512GB SSDストレージ、1080p FaceTime HDカメラ、Touch ID - ブラッシュ
¥113,853
5
【整備済み品】富士通 ARROWS Tab V727/V 12.3型 WUXGA+ タブレットPC Windows11 Pro MS Office H&B 2019 第7世代 Core m3-7Y30 メモリ4GB SSD128GB LTE対応 無線LAN Webカメラ タッチペン付属 USB-C 初期設定済み 中古パソコン
【整備済み品】富士通 ARROWS Tab V727/V 12.3型 WUXGA+ タブレットPC Windows11 Pro MS Office H&B 2019 第7世代 Core m3-7Y30 メモリ4GB SSD128GB LTE対応 無線LAN Webカメラ タッチペン付属 USB-C 初期設定済み 中古パソコン
¥11,800

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥2,680
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
4
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
5
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
¥844
6
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
¥1,899
7
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥1,571
8
バッファロー マウス 無線 ワイヤレス 5ボタン 【戻る/進むボタン搭載】 小型 軽量 節電モデル 最大584日使用可能 BlueLED ブラック BSMBW315BK
バッファロー マウス 無線 ワイヤレス 5ボタン 【戻る/進むボタン搭載】 小型 軽量 節電モデル 最大584日使用可能 BlueLED ブラック BSMBW315BK
¥1,040
9
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
¥1,519
10
KIOXIA(キオクシア)【日本製】SDカード 128GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA128G
KIOXIA(キオクシア)【日本製】SDカード 128GB SDXC UHS-I Class10 読出速度100MB/s 国内正規品 メーカー保証5年 KLNEA128G
¥3,139

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン