BLE Entwécklung: Wat ass GATT a wéi funktionnéiert et?

Inhaltsverzeechnes

D'Konzept vun GATT

Fir d'BLE-Zesummenhang Entwécklung duerchzeféieren, musse mir gewësse Basiskenntnisser hunn, natierlech, et muss ganz einfach sinn.

gatt Apparat Roll:

Déi éischt Saach fir ze verstoen ass datt den Ënnerscheed tëscht dësen zwou Rollen um Hardwareniveau ass, a si sinn relativ Konzepter déi a Pairen optrieden:

"Central Apparat": relativ mächteg, benotzt fir Peripheriegeräter ze scannen an ze verbannen, wéi Handyen, Pëllen, asw.

"Peripheral Apparat": d'Funktioun ass relativ einfach, de Stroumverbrauch ass kleng, an den zentrale Gerät ass verbonne fir Daten ze liwweren, wéi Armbands, Smart Thermometeren, asw.

Tatsächlech, um fundamentalsten Niveau, sollt et en Ënnerscheed tëscht verschiddene Rollen am Prozess vun der Verbindung sinn. Mir wëssen, datt wann e Bluetooth-Apparat anerem seng Existenz wësse wëll, muss et kontinuéierlech no bausse verbreeden, während déi aner Partei de Broadcast-Paket scannen an äntweren, sou datt d'Verbindung ka gegrënnt ginn. An dësem Prozess ass déi Persoun verantwortlech fir d'Sendung Peripheral, an Zentral ass verantwortlech fir d'Scannen.

Notéiert iwwer de Verbindungsprozess tëscht deenen zwee:

Den zentrale Gerät ka mat multiple Peripheriegeräter zur selwechter Zäit konnektéieren. Wann de Peripheriegerät ugeschloss ass, stoppt et direkt d'Sendung, a weider d'Sendung no der Disconnection weider.

gatt Protokoll

BLE Technologie kommunizéiert baséiert op GATT. GATT ass en Attribut Iwwerdroungsprotokoll. Et kann als Applikatiounsschichtprotokoll fir Attributiwwerdroung ugesi ginn.

Seng Struktur ass ganz einfach:   

Dir kënnt et als xml verstoen:

All GATT besteet aus Services déi verschidde Funktiounen Leeschtunge;

All Service besteet aus verschiddene Charakteristik;

All Charakteristik besteet aus engem Wäert an een oder méi Descriptoren;

Service a Charakteristesch sinn gläichwäerteg mat Tags (Service ass gläichwäerteg mat senger Kategorie, a Charakteristesch ass gläichwäerteg mat sengem Numm), wärend de Wäert tatsächlech Daten enthält, an Descriptor ass eng Erklärung a Beschreiwung vun dësem Wäert. Natierlech kënne mir et aus verschiddene Wénkelen beschreiwen a beschreiwen. Beschreiwung, sou datt et méi Descriptoren kënne sinn.

Zum Beispill: De gemeinsame Xiaomi Mi Band ass e BLE Apparat, (ugeholl) enthält dräi Servicer, déi de Service sinn deen Apparatinformatioun ubitt, de Service dee Schrëtt ubitt, an de Service deen Häerzfrequenz erkennt;

D'Charakteristiken am Service vun der Apparat Informatiounen enthält Fabrikant beschwéiert Informatiounen, Hardware Informatiounen, Versioun Informatiounen, etc .; den Häerzfrequenzservice enthält d'Häerzfrequenzcharakteristik, etc., an de Wäert an der Häerzfrequenzcharakteristik enthält tatsächlech d'Häerzfrequenzdaten, an den Deskriptor ass de Wäert. Beschreiwung, wéi d'Eenheet vum Wäert, Beschreiwung, Erlaabnis, etc.

GATT C/S

Mat engem virleefeg Versteesdemech vun GATT, mir wëssen, datt GATT eng typesch C / S Modus ass. Well et C / S ass, ass et néideg fir eis tëscht Server a Client z'ënnerscheeden.

"GATT Server" vs "GATT Client". D'Bühn wou dës zwou Rollen existéieren ass nodeems d'Verbindung etabléiert ass, a si ënnerscheede sech no dem Status vum Dialog. Et ass einfach ze verstoen datt d'Partei déi d'Donnéeën hält den GATT Server genannt gëtt, an d'Partei déi op d'Donnéeën zougräift gëtt de GATT Client genannt.

Dëst ass e Konzept op engem aneren Niveau vun der Apparat Roll mir virdru ernimmt, an et ass néideg et z'ënnerscheeden. Loosst eis en einfacht Beispill benotzen fir ze illustréieren:

Huelt d'Beispill vun engem Handy an enger Auer fir ze illustréieren. Ier d'Verbindung tëscht dem Handy an dem Handy etabléiert ass, benotze mir d'Bluetooth Sichfunktioun vum Handy fir no dem Bluetooth Apparat vun der Auer ze sichen. Wärend dësem Prozess ass et offensichtlech datt d'Auer BLE ausstrahlt sou datt aner Apparater hir Existenz wëssen. , et ass d'Roll vun Peripherie an dësem Prozess, an den Handy ass responsabel fir d'Scannen Aufgab, a spillt natierlech d'Roll vun Center; nodeems déi zwee eng GATT Verbindung etabléieren, wann den Handy Sensordaten muss liesen wéi d'Zuel vun de Schrëtt vun der Auer, déi zwee. Server, an den Handy ass natierlech de GATT Client; a wann d'Auer SMS-Uriff an aner Informatioun vum Handy liese wëllt, gëtt de Schutzpatroun vun den Donnéeën Handy, sou datt den Handy de Server zu dëser Zäit ass, an d'Auer ass de Client.

Service / Charakteristesch

Mir hu schonn e perceptuelle Verständnis vun hinnen uewen, an dann hu mir e puer praktesch Informatiounen:

  1. Charakteristesch ass déi klengst logesch Eenheet vun Daten.
  2. D'Analyse vun Daten gespäichert am Wäert an Deskriptor gëtt vum Server Ingenieur bestëmmt, et gëtt keng Spezifizéierung.
  3. Service / Charakteristik huet eng eenzegaarteg UUID Identifikatioun, UUID huet souwuel 16-Bit an 128-Bit, wat mir musse verstoen ass datt den 16-Bit UUID vun der Bluetooth Organisatioun zertifizéiert ass a muss kaaft ginn, natierlech ginn et e puer gemeinsam déi 16-Bit UUID.Zum Beispill, der UUID vun der Häerz Taux Service ass 0X180D, déi als 0X00001800-0000-1000-8000-00805f9b34fb am Code ausgedréckt ass, an aner Stécker sinn fix. Den 128-Bit UUID ka personaliséiert ginn.
  4. GATT Verbindungen sinn exklusiv.

Minière zu Top