Väärtuste lugemine BLE -seadmest CSR1010 ja Dragonboard 410c abil: 6 sammu
Väärtuste lugemine BLE -seadmest CSR1010 ja Dragonboard 410c abil: 6 sammu
Anonim
Väärtuste lugemine BLE -seadmest, kasutades CSR1010 ja Dragonboard 410c
Väärtuste lugemine BLE -seadmest, kasutades CSR1010 ja Dragonboard 410c

See õpetus näitab, kuidas lugeda väärtusi BLE -seadmest CSR1010, kasutades Dragonboard 410c koos Linaroga

Selles näites emuleerib CSR1010 pulsiandurit.

Samm: skaneerige BLE -seade

Selles etapis kontrollige, kas teie BT -klient on BLE -seadmete skannimiseks valmis.

root@linaro-alip:/home/linaro# sudo hcitool lescan

LE Scan… 18: EE: 69: 00: CE: 00 (teadmata) 18: EE: 69: 00: CE: 00 (teadmata) EE: 52: 5B: 04: 00: 02 CSR -i HR -andur

Samm: seadme ühendamine

Kasutame oma seadme ühendamiseks gatttooli

-b: seadme MAC -aadress

-t: LE aadressi tüüp. Võib olla avalik või juhuslik, vaja kontrollida seadme spetsifikatsioone Sel juhul on see avalik.

-I: interaktiivne režiim gatttool. See avab viiba cmd -de seadmesse saatmiseks

root@linaro -alip:/home/linaro# sudo gatttool -b EE: 52: 5B: 04: 00: 02 -t avalik -I

Kui viip on avatud, saame seadmesse saata ühenduse cmd.

[EE: 52: 5B: 04: 00: 02] [LE]> ühendamine EE -ga ühenduse loomise katse: 52: 5B: 04: 00: 02

Ühendus õnnestus

[EE: 52: 5B: 04: 00: 02] [LE]>

3. samm: seadme omaduste hankimine

Seadme omaduste toomine
Seadme omaduste toomine

Kui seade on ühendatud, saame lugeda kõiki saadaolevaid teenuseid, saates cmd "esmane"

Teenuse UUID põhjal saame GATT spetsifikatsioonist avastada teenuse tüübi

www.bluetooth.com/specifications/gatt/services

4. samm: seadme nime lugemine

Lugemisseadme nimi
Lugemisseadme nimi

Uurime üldisel juurdepääsuprofiilil loetavaid omadusi (uuid = 1800). Kõigepealt peame hankima esimesel pildil kirjeldatud teenuse käepideme väärtused, antud juhul algab see 5st kuni 11. Nüüd saame selle intervalliga kõik käepidemed alla laadida, kasutades cmd char-desc

[EE: 52: 5B: 04: 00: 02] [LE]> char-desc 05 11 käepide: 0x0005, uuid: 00002800-0000-1000-8000-00805f9b34fb käepide: 0x0006, uuid: 00002803-0000-1000-8000- 00805f9b34fb käepide: 0x0007, uuid: 00002a00-0000-1000-8000-00805f9b34fb käepide: 0x0008, uuid: 00002803-0000-1000-8000-00805f9b34fb käepide: 0x0009, uuid: 00002a01-0000-1000-8000-0080bf 0b uuid: 00002803-0000-1000-8000-00805f9b34fb käepide: 0x000b, uuid: 00002a04-0000-1000-8000-00805f9b34fb käepide: 0x000c, uuid: 00002800-0000-1000-8000-00805f9b34fb käepide: 0x000d, uuid: 0000280 -1000-8000-00805f9b34fb käepide: 0x000e, uuid: 00002a37-0000-1000-8000-00805f9b34fb käepide: 0x000f, uuid: 00002902-0000-1000-8000-00805f9b34fb käepide: 0x0010, uuid: 00002803-0000-1000-8000- 00805f9b34fb käepide: 0x0011, uuid: 00002a38-0000-1000-8000-00805f9b34fb

Vastavalt üldise juurdepääsuprofiili spetsifikatsioonile viitab UUID 2A00 seadme nimele.

Arvestades, et 2a00 on meie seadme käepide 0x0007, loeme väärtust

[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 7 Iseloomulik väärtus/kirjeldus: 43 53 52 20 48 52 20 53 65 6e 73 6f 72

Kuuekümnendiku teisendamisel ASCII -ks on seadme nimi järgmine: '' CSR HR Sensor ''

Samm: BPM lugemine

[EE: 52: 5B: 04: 00: 02] [LE]> esmatasandi käepide: 0x0001, lõpu käepide: 0x0004 uuid: 00001801-0000-1000-8000-00805f9b34fb 00001800-0000-1000-8000-00805f9b34fb Attr-käepide: 0x000c, lõpp-käepide: 0x0013 uuid: 0000180d-0000-1000-8000-00805f9b34fb Attr-käepide: 0x0014, lõpp-käepide: 0x0017 uuid: 0000180f-0000-1000-8000- 00805f9b34fb attr käepide: 0x0018, lõpp-käepide: 0x0021 uuid: 00001016-d102-11e1-9b23-00025b00a5a5 attr-käepide: 0x0022, lõpp-käepide: 0xffff uuid: 0000180a-0000-1000-8000-00805f9b34fb

Südame löögisageduse teenuse UUID on 0x180d, seega on käepidemete intervall vahemikus 0x000c kuni 0x0013

[EE: 52: 5B: 04: 00: 02] [LE]> char-desc 0x00c 0x0013

käepide: 0x000c, uuid: 00002800-0000-1000-8000-00805f9b34fb käepide: 0x000d, uuid: 00002803-0000-1000-8000-00805f9b34fb käepide: 0x000e, uuid: 00002a37-0000-1000-8000-00805f9b34fb käepide: 0x000f, uu: 00002902-0000-1000-8000-00805f9b34fb käepide: 0x0010, uuid: 00002803-0000-1000-8000-00805f9b34fb käepide: 0x0011, uuid: 00002a38-0000-1000-8000-00805f9b34fb käepide: 0x0012, uuid: 00002803-00 1000-8000-00805f9b34fb käepide: 0x0013, uuid: 00002a39-0000-1000-8000-00805f9b34fb

Kõigi iseloomulike deklaratsioonide lugemine (UUID 0x2803).

[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x000d

Iseloomulik väärtus/deskriptor: 10 0e 00 37 2a [EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x0010 Iseloomulik väärtus/deskriptor: 02 11 00 38 2a [EE: 52: 5B: 04:00:02] [LE]> char-read-hnd 0x0012 Iseloomulik väärtus/kirjeldus: 08 13 00 39 2a

Märka seda:

- käepide 0x000d on teenuse 2a37 (südame löögisageduse mõõtmine) CCCD bitiga 10 (toetage MÄRKU)

- käepide 0x0010 on teeninduse 2a38 (kehaanduri asukoht) CCCD koos bitiga 02 (tugi LUGEGE)

- käepide 0x0012 on teenuse 2a39 (südame löögisageduse kontrollpunkti) CCCD bitiga 08 (toetab kirjutamist)

Nüüd teame, et südame löögisageduse mõõtmine töötab ainult teavitamisega. See tähendab, et kõigepealt peame registreeruma väärtuste muutuste jaoks selle CCCD -s (UUID 0x2902), mis antud juhul on käepide 0xf

[EE: 52: 5B: 04: 00: 02] [LE]> char-write-req 0x00f 0100

Teavituskäepide = 0x000e väärtus: 16 65 f3 01 Iseloomulik väärtus kirjutati edukalt Teatise käepide = 0x000e väärtus: 16 6d fa 01 Teavituskäepide = 0x000e väärtus: 16 6d fa 01 Märguannete käepide = 0x000e väärtus: 16 6c f9 01 Teavituskäepide = 0x000e väärtus: 16 6a f7 01 Teavituskäepide = 0x000e väärtus: 16 69 f6 01

Vastavalt profiili spetsifikatsioonile on teine kuusnurk BPM -i teave.

BPM:

6d = 109

6d = 109

6c = 108

6a = 106

69 = 105

6. samm: kehaanduri asukoha lugemine

Kehaanduri asukoha lugemine
Kehaanduri asukoha lugemine

Kehaanduri asukoht on UUID 0x2A38. Kirjelduse järgi toetab see omadus põhilugemist, nii et saame selle väärtust otse lugeda.

[EE: 52: 5B: 04: 00: 02] [LE]> char-read-hnd 0x11Karakteristlik väärtus/kirjeldus: 03

Vastavalt SIG spetsifikatsioonile tähendab 03 "sõrme"

Soovitan: