0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
設定
連線低功耗藍牙 (BLE) 裝置並瀏覽完整的 GATT 樹:服務、特徵、描述元以及裝置提供的數值,例如電量或廠商、型號與韌體資訊。整個過程只發生在你的裝置與該裝置之間。
可選裝置
完整 UUID 或 16 位元識別碼,以逗號分隔。標準服務已自動請求

運作方式

將瀏覽器連線到低功耗藍牙裝置,並顯示完整的 GATT 樹:每個主要服務、其中的特徵、每個特徵支援的操作(讀取、寫入、通知或指示)以及關聯的描述元,標準元素還會同時顯示 128 位元 UUID 與 16 位元短識別碼。

可讀的數值會自動讀取,並依照 Bluetooth SIG 規範解析:電量以百分比顯示,Device Information 服務顯示為廠商、型號、序號以及韌體、硬體與軟體版本,PnP ID 顯示為廠商與產品識別碼配對。沒有定義意義的內容則以文字、數字或十六進位傾印顯示。

你還可以訂閱會發送通知的特徵,即時觀察數值變化——心率、溫度或計數器——並將整個掃描結果匯出為 JSON。本工具只讀取,絕不寫入裝置。所有通訊都透過 Web Bluetooth API 在你的裝置與週邊之間進行,不會傳送到任何伺服器。

範例

0x180F → 0x2A195B → 91 %Battery 服務只用一個位元組表示剩餘電量,因此 0x5B 相當於 91 %。
0x180A → 0x2A50 (PnP ID)USB Implementers Forum · VID 0x046D · PID 0xC52B · v1.0.0PnP ID 使用與 USB 相同的編碼標示廠商與產品,因此可在 usb.ids 目錄中查詢。
6e400001-b5a3-f393-e0a9-e50e24dcca9eNordic UART Service128 位元 UUID 屬於廠商自訂服務;其中最常見的,例如 Nordic 的序列埠服務,會顯示名稱。

使用情境

  • 無需安裝廠商應用程式,即可查看感測器、體重計或穿戴裝置的剩餘電量。
  • 在升級裝置或申請保固前,查看其型號、序號與韌體版本。
  • 在韌體開發過程中,驗證週邊是否以正確的屬性廣播預期的服務與特徵。
  • 找出廠商自訂特徵的 UUID,以便在自己的應用程式中使用。
  • 當某個應用程式收不到資料時,即時確認通知是否送達以及送達頻率。
  • 將裝置完整的 GATT 樹匯出為 JSON,作為報告附件存檔。

常見問題

為什麼在我的 iPhone 或 Firefox 上無法使用?

Web Bluetooth API 只在以 Chromium 為基礎的瀏覽器中實作——Chrome、Edge 與 Opera——支援 Windows、macOS、Linux、ChromeOS 和 Android。Firefox 與 Safari 沒有實作;在 iOS 上所有瀏覽器都使用系統引擎,因此同樣無法使用。此外還需要 HTTPS,且裝置的藍牙必須已開啟。

裝置已開機,但沒有出現在清單中。

通常有三個原因:週邊已經連線到其他應用程式或其他電腦,因而停止廣播;它沒有進入可被探索模式,許多裝置需要長按按鈕才能開啟;或者所選的篩選條件太窄。請改用顯示附近全部裝置的選項,並把裝置靠近一些。

為什麼我看到的服務比原生應用程式少?

網頁只能看到連線之前已申請過的服務,因此本工具會申請全部標準服務,並允許你補充已知的廠商自訂 UUID。此外,瀏覽器還維護一份基於安全考量的服務黑名單——其中包括人機介面裝置 (HID) 與韌體更新服務——任何網頁都無法讀取。

特徵的各項屬性是什麼意思?

「讀取」表示隨時都可以請求該數值。「寫入」與「無回應寫入」表示裝置接受接收資料,差別在於是否需要確認。「通知」與「指示」表示由裝置在數值變化時主動送出;差別在於指示需要用戶端確認,因此較慢但較可靠。

為什麼有些元素的 UUID 很短,有些卻非常長?

像 0x180F 或 0x2A19 這樣的 16 位元識別碼由 Bluetooth SIG 保留,在規範中有明確意義,因此工具會顯示其官方名稱。128 位元 UUID 屬於廠商:只有廠商自己的應用程式知道其中內容,不過這裡仍會以文字、數字或十六進位顯示。

這個工具會向裝置寫入或修改任何內容嗎?

不會。它只讀取數值,並依你的選擇啟用通知,而訂閱通知並不會修改裝置的設定。它從不向特徵寫入,因此不會讓週邊進入非預期狀態。

裝置資料會離開我的電腦嗎?

不會。連線由瀏覽器透過你電腦的藍牙介面卡完成,讀取到的任何數值都不會傳送到伺服器。權限由你在瀏覽器的選擇器中逐一裝置授予,並且可以隨時撤銷。