Utilia

Bluetooth Device Inspector

I-test ang Bluetooth Low Energy device sa browser. Ilista ang GATT service at characteristic, basahin ang battery level, at panoorin ang live na notification.

I-on ang Bluetooth at gisingin ang iyong device (heart-rate strap, sensor, relo…), pagkatapos ay pindutin ang “Maghanap ng device”.

Mga karaniwang service lang (battery, device information, heart rate, environmental sensing…) at dalawang karaniwang UART service ang hinihingi; itinatago ng mga browser ang iba. Hinaharang din ng Chrome ang ilang sensitibong service, gaya ng mga keyboard at mouse (HID).

Paano mag-inspect ng Bluetooth device

  1. I-on ang Bluetooth at gisingin ang device: isuot ang heart-rate strap, pindutin ang button ng sensor, o buksan ang pairing mode ayon sa manual nito.
  2. Pindutin ang Maghanap ng device. Magbubukas ang sariling tagapili ng browser na naglilista ng mga kalapit na Bluetooth Low Energy (BLE) device. Piliin ang iyo at pindutin ang Pair o Connect.
  3. Kumokonekta ang tool at inilalista ang bawat ma-access na service kasama ang mga characteristic nito: Characteristic (pangalan at UUID), Properties at Value.
  4. Pindutin ang Basahin sa isang characteristic, o Basahin ang lahat ng value para mabasa nang sabay ang lahat ng nababasa.
  5. Para sa mga characteristic na may markang notify o indicate, pindutin ang Mag-subscribe. Ipinapakita sa table ang bawat bagong value at idinaragdag ito sa log ng Mga notification na may timestamp, kaya mapapanood mo nang live ang heart rate o pagbabago ng sensor.
  6. Pindutin ang I-disconnect kapag tapos ka na, o isara na lang ang page.

Hindi mo kailangang i-pair muna ang device sa settings ng iyong system: ang browser mismo ang humahawak ng koneksyon, at para lang sa page na ito.

Mga service, characteristic at UUID

Inilalantad ng BLE device ang data nito sa pamamagitan ng GATT (Generic Attribute Profile). Pinagsasama-sama ang data sa mga service, gaya ng Battery (0x180F) o Heart Rate (0x180D), at may hawak na mga characteristic ang bawat service, gaya ng Battery Level (0x2A19) o Heart Rate Measurement (0x2A37). Ang mga karaniwang itinakda ng Bluetooth SIG ay may maikling 16-bit na UUID, na ipinapakita ng tool na ito bilang 0x2A19 kasama ang opisyal na pangalan. Ang mga gawa ng manufacturer ay gumagamit ng buong 128-bit na UUID at lumalabas bilang Hindi kilalang service o Hindi kilalang characteristic, maliban sa mga karaniwang serial service gaya ng Nordic UART at HM-10.

Sinasabi ng Properties kung ano ang magagawa mo sa isang characteristic: read (mababasa ang value kapag hiniling), write at write nang walang response (puwedeng magpadala ng data ang app), notify at indicate (ang device mismo ang nagtutulak ng bagong value; may kumpirmasyon din ang indication).

Pagbasa ng mga value

Ipinapakita ang bawat value sa tatlong paraan kung maaari:

  • isang na-decode na value para sa mga kilalang characteristic: battery level sa %, heart rate sa bpm, temperatura sa °C (hakbang na 0.01 °C), humidity sa %, pressure sa hPa, Tx power sa dBm, kategorya ng appearance, PnP vendor at product ID, at mga basa ng thermometer sa IEEE-11073 FLOAT na format;
  • ang text sa loob ng mga panipi kapag nababasa bilang UTF-8 ang mga byte, gaya ng pangalan ng device, manufacturer, model o firmware revision;
  • ang raw na hex na mga byte, palagi.

Little-endian ang mga multi-byte na numero sa GATT: ang 0A 09 sa isang Temperature characteristic ay 0x090A = 2314, ibig sabihin 23.14 °C.

Ano ang pinapayagan ng browser

Ang mga service lang na hiniling nang maaga ang pinapayagang gamitin ng page sa Web Bluetooth. Humihingi ang tool na ito ng mga karaniwang service (Generic Access, Device Information, Battery, Heart Rate, Health Thermometer, Environmental Sensing, Cycling, Running, Weight Scale, Fitness Machine at iba pa) pati ang Nordic UART at HM-10. Hinaharang din ng Chrome ang ilang sensitibong service at characteristic, gaya ng HID (mga keyboard at mouse) at serial number; lumalabas ang mga ito bilang Hinarang ng browser o hindi isinasama. Ang mga classic na Bluetooth device gaya ng headphone at speaker ay hindi BLE at hindi ma-inspect.

Mga madalas itanong

Aling mga browser ang puwedeng gumamit ng Bluetooth test na ito?

Chrome at Edge sa Windows, macOS at ChromeOS, at Chrome sa Android. Sa Linux, maaaring kailangang i-enable ang Web Bluetooth sa chrome://flags. Hindi sinusuportahan ng Firefox at Safari ang Web Bluetooth.

Bakit hindi lumalabas ang device ko sa tagapili?

Maaaring natutulog ito, nakakonekta na sa iyong telepono o ibang app, o malayo. Karaniwang isang koneksyon lang ang tinatanggap ng mga BLE device nang sabay: isara ang companion app, saka maghanap muli.

Bakit walang lumalabas na service pagkatapos kumonekta?

Proprietary na service lang ang inilalantad ng device na hindi hinihingi ng tool na ito, o hinarang ito ng browser. Ipinapakita pa rin ang pangalan at ID.

Mababago ba ng tool na ito ang settings ng device ko?

Hindi. Nagbabasa lang ito ng mga value at nagsa-subscribe sa mga notification; hindi ito kailanman nagsusulat sa isang characteristic.

May ipinapadala bang data kahit saan?

Wala. Direktang nakikipag-usap ang browser sa device at nananatili ang lahat sa page na ito.