MasaApps360
日本語
Periphery

iPhoneでBLEのUUIDを調べ、サービスに名前をつける

すべてのBLEサービスとキャラクタリスティックにはUUIDがあります。それを見るには、Periphery のインスペクターで機器に接続します。各サービスとキャラクタリスティックには生のUUIDが表示され、よく知られたものにはBattery Levelのように2A19に対する読める名前も表示されます。この名前はアプリ内に保存された小さなリストから得られるためオフラインでも使えますが、そこにないUUIDは生の16進数のままです。

5 分で読めます · 更新日 2026-10-06

短いUUIDと長いUUID

Bluetooth SIGが定義するサービスとキャラクタリスティックは、180Fが表すBattery Serviceのように、16桁ではなく4桁の16進数で書かれる短い16ビットUUIDを使います。ベンダーやホビー用途のプロジェクトは、Nordic UARTサービスの6E400001-B5A3-F393-E0A9-E50E24DCCA9Eのような完全な128ビットUUIDを使います。短いUUIDはそれだけで調べられますが、長いカスタムUUIDは、作った側が公開していない限り意味を持ちません。

Bluetooth機器のサービスのUUIDを調べる方法

  1. スキャン をタップして機器を探します。一覧が長い場合は 名前または UUID によるフィルター で名前で絞り込みます。
  2. 機器をタップしてインスペクターを開きます。Periphery が接続し、見つけたすべてのサービスを一覧表示します。
  3. 各サービスの見出しには、Periphery が知っている場合は名前が、それ以外は生のUUIDが表示されます。見出しをタップするとキャラクタリスティックを折りたたんだり展開したりできます。
  4. 各キャラクタリスティックの名前の下には、生のUUIDが常に小さな文字で表示されるので、自分のコードやメモにコピーできます。

スキャン画面の各行にある識別子は別のものです。それはiOSが機器自体に割り当てるIDで、サービスのUUIDではありません。

Peripheryがオフラインで名前をつけられるUUID

内蔵リストは短く、開発者が最もよく出会うものに絞られています。解決できるのは次の項目です。

Peripheryの内蔵リストにあるサービスUUID
UUID表示される名前
1800Generic Access
1801Generic Attribute
180ADevice Information
180DHeart Rate
180FBattery Service
1810Blood Pressure
1812Human Interface Device
1816Cycling Speed and Cadence
1818Cycling Power
181AEnvironmental Sensing
FFF0Xiaomi Service
6E400001-B5A3-F393-E0A9-E50E24DCCA9ENordic UART Service
5C7A4CD0-07F5-4F60-BF6A-C7B2A61CBBF8ESP32 Custom Service
ADE3D529-C784-4F63-A987-EB69F70EE816Shelly BLU
Peripheryの内蔵リストにあるキャラクタリスティックUUID
UUID表示される名前
2A19Battery Level
2A24Model Number
2A26Firmware Revision
2A29Manufacturer Name
2A37Heart Rate Measurement
2A38Body Sensor Location
2A6ETemperature
2A6FHumidity
FFF1Xiaomi Data
6E400002-B5A3-F393-E0A9-E50E24DCCA9ENordic UART RX
6E400003-B5A3-F393-E0A9-E50E24DCCA9ENordic UART TX

合計25個のUUIDです。Bluetooth SIGの完全なリストではないため、それ以外はすべて生のUUIDとして表示され、チップベンダーのドキュメントやBluetooth SIGのAssigned Numbersで調べられます。

実例:Nordic UARTボード

Nordic UARTサービスを実行しているnRFベースのボードに接続すると、インスペクターにそのサービスがNordic UART Serviceとして表示されます。その下にはWタグを持つNordic UART RX(6E400002-...)、つまり書き込み先のキャラクタリスティックと、Nタグを持つNordic UART TX(6E400003-...)、つまりデータを送ってくるキャラクタリスティックが見えます。上部のカードには Nordic UART デバイス と表示されます。

よくある間違い

  • スキャン画面の機器識別子とサービスUUIDを混同すること。これらは無関係です。
  • FFF0が常にXiaomiを意味すると思い込むこと。多くの安価な機器がFFF0とFFF1を自分たちのデータのために使い回しています。
  • すべてのカスタムUUIDに名前がついていると期待すること。カスタムの128ビットUUIDは、作った側が公開していない限り非公開です。
  • スキャンのフィルターでサービスをUUIDで検索すること。名前または UUID によるフィルター は機器の名前かiOSの識別子に一致するだけで、その中のサービスには一致しません。

よくある質問

UUIDの検索にインターネットは必要ですか?
必要ありません。名前はアプリ内に保存されたリストから得られるため、機内モードでBluetoothだけをオンにしていても動作します。
一部のサービスが長い16進コードだけで表示されるのはなぜですか?
Peripheryの内蔵リストにないためで、たいていはカスタムのベンダーUUIDです。生のUUIDが表示されるので、その機器のドキュメントで調べられます。
Bluetooth機器自体のUUIDはどこにありますか?
BLE機器には固定の1つのUUIDというものはありません。iOSが各機器に独自の識別子を割り当て、その先頭8文字がスキャン画面の行に表示されます。インスペクターのUUIDは、機器のサービスとキャラクタリスティックに属するものです。

Periphery のその他のガイド