Tartalomjegyzék:

Windows Bluetooth rendszerelemzés - SensorTag megközelítés: 7 lépés (képekkel)
Windows Bluetooth rendszerelemzés - SensorTag megközelítés: 7 lépés (képekkel)

Videó: Windows Bluetooth rendszerelemzés - SensorTag megközelítés: 7 lépés (képekkel)

Videó: Windows Bluetooth rendszerelemzés - SensorTag megközelítés: 7 lépés (képekkel)
Videó: Windows 10 Anniversary Update - a Bluetooth LE SensorTag analysis 2024, Július
Anonim
Windows Bluetooth rendszerelemzés - SensorTag megközelítés
Windows Bluetooth rendszerelemzés - SensorTag megközelítés

A következőkben a Windows operációs rendszer (OS) elemzését fogom elvégezni a Bluetooth Low Energy eszközökkel való kommunikáció szempontjából - esetünkben a különböző típusú SensorTag -ekkel: Thunderboard React, Thunderboard Sense (mindkettőt a Silicon Labs gyártotta) Company), CC2650STK és CC2541DK (mindkettőt a Texas Instruments Company fejlesztette ki).

1. lépés: A Windows Bluetooth rendszerelemzése - SensorTag megközelítés

Windows Bluetooth rendszerelemzés - SensorTag megközelítés
Windows Bluetooth rendszerelemzés - SensorTag megközelítés

A következőkben a Windows operációs rendszer (OS) elemzését fogom elvégezni a Bluetooth Low Energy eszközökkel való kommunikáció szempontjából - esetünkben a különböző típusú SensorTag -ekkel: Thunderboard React, Thunderboard Sense (mindkettőt a Silicon Labs gyártotta) Company), CC2650STK és CC2541DK (mindkettőt a Texas Instruments Company fejlesztette ki).

A következőkben elemzem a Windows 7, Windows 8.1 és a következő Windows 10 verziókat:

· Évfordulós frissítés (2016. augusztus 2 -án jelent meg; a támogatás vége: előreláthatólag 2018. március), · Alkotói frissítés (2017. április 5 -én jelent meg; a támogatás vége: előreláthatólag 2018. szeptember) és

· Őszi alkotók frissítése (2017. október 17 -én jelent meg; a támogatás vége: előreláthatólag 2019. március).

Az elemzés a következő szempontok szerint történik:

1. Az operációs rendszer (OS) azon képessége, hogy párosítsa a SensorTaggal;

2. Az általános hozzáférési adatok beszerzésének lehetősége (ez kötelező szolgáltatás);

3. Az eszközinformációk lekérésének képessége (ez a szolgáltatás feltárja a gyártó és/vagy a szállító adatait, amelyek egy adott SensorTaggal kapcsolatosak);

4. A SensorTag adatainak lekérésének képessége az olvasási megközelítés és

5. A SensorTag adatainak lekérésének lehetősége az értesítési megközelítés használatával.

Az összes tesztet az áldTags alkalmazás 9.7.8.0 verziójával végeztük. Az áldásTags alkalmazás a Windows SDK - Bluetoothapis támogatásával készült. Olyan funkciókat használtak, mint a BluetoothGATTGetCharacteristicValue, a BluetoothGATTGetDescriptorValue, a BluetoothGATTGetServices vagy a BluetoothGATTSetCharacteristicValue.

Ez az áldásos, BLE SensorTags alkalmazás letölthető a Windows Store Alkalmazásokból: https://www.microsoft.com/store/apps/9p054xsjjr1n. További információkért, bemutatókért, gyakorlati alkalmazásokért, példákért stb. Keresse fel a következő blogot:

2. lépés: Windows 10 - évfordulós frissítés - 1607 -es verzió

Image
Image

A Windows 10 operációs rendszer ezen verziója a legjobb, a Bluetooth Low Energy eszközök szempontjából. Minden probléma nélkül párosítható az összes SensorTag -al (függetlenül a rajtuk futó szoftververziótól), amellyel az áldásTags alkalmazás tudja, hogyan kell dolgozni (CC2650STK, Thunderboard React, Thunderboard Sense és CC2541DK), és a Bluetooth szolgáltatásaiból származó összes információ általános Az Access and Get Device Information (Eszközinformációk elérése és beszerzése) minden probléma nélkül megszerezhető.

Az adatátviteli sebesség (CC2650STK és CC2541DK eszközök esetén) az adatátvitel értesítési és olvasási mechanizmusát alkalmazva elemezzük a következőket:

1. az értesítési mechanizmuson keresztül minden érzékelő (nyolc) adatait 150 [ms] és 150 [ms] között minden probléma nélkül megkaphatjuk;

2. ehelyett, amikor 150 [ms] -ra állítjuk az adatgyűjtési időt, és az adatolvasási mechanizmust használjuk - a legboldogabb helyzetben 713 [ms], a legrosszabb esetben pedig 840 [ms] értéket kapunk.

Ha elemezzük a Thunderboard React -ot és a Thunderboard Sense -t, akkor egyenértékű eredményeket kapunk - minden probléma nélkül működnek a Windows 10 Anniversary Update környezetben.

Valójában az áldTags alkalmazás fő funkcióinak és a különböző speciális funkcióknak (pl. Gadgets) minden bemutató filmje a Windows 10 Anniversary Update támogatásával készült.

3. lépés: Windows 10 - Alkotói frissítés - 1703 -as verzió

Windows 7
Windows 7

A Windows 10 Creators Update verziója a legrosszabb operációs rendszer (OS) a Bluetooth Low Energy eszközök szempontjából.

Szinte semmi sem működik. A Microsoft elismerte, hogy a Creators Update megszakította a Bluetooth Low Energy (1. és 2. referencia) funkciót. A Microsoft cég a lehető leghamarabb gyorsjavítást ígért. De azóta kiadták a Windows frissített verzióját (Fall Creators Update), és semmi sem történt - eddig a Windows 10 Creators Update verziójában a Bluetooth Low Energy továbbra sem működik.

Nagyszámú olyan bejegyzés található a fórumokon, amelyekben különböző emberek panaszkodnak különböző típusú Bluetooth -eszközökre, amelyek a Creators Update -re történő frissítés után leállnak (lásd itt, lásd itt, lásd itt, lásd itt stb.).

Az eredményeket, amelyeket azonnal megmutatok, számos teszt után kaptunk: (1) asztali számítógépen, amelyen CSR4.0 Bluetooth USB -kulcs (CSR8510 A10) volt, és (2) Dell Inspiron P66F laptopon, integrált Bluetooth LE eszköz. Tudom, hogy az interneten számos megoldás létezik a Bluetooth -problémák több típusának kijavítására. Szinte mindent kipróbáltam, de semmi sem működött (frissítse a Bluetooth illesztőprogramot, futtassa a Windows hibaelhárítóját, tiltsa le és engedélyezze a Bluetooth -hoz kapcsolódó szolgáltatásokat stb.)

Tehát mutassuk be az eredményeket:

1. CC2650STK:

a. Az 1.40-es firmware verziónál a SensorTag eszköz párosítása a Windows rendszerrel lehetetlen (többször, legalább 8-10 alkalommal megismételtem a folyamatot, be- és kikapcsoltam a Bluetooth-t, majd újra megpróbáltam-az eredmények ugyanazok voltak: lehetetlen volt adja hozzá ezt az eszközt).

b. Az 1.20 -as firmware verzióban a PC felfedezte a SensorTag -ot, és sikerült párosítanom a SensorTag -ot a számítógéppel.

Ezenkívül sikerült elérnem az általános hozzáférési adatokat. De a Get Device Information szolgáltatásban 9 jellemző közül csak 6 válaszolt, és csak tőlük lehetett információt szerezni.

Ehelyett nem tudom beállítani az eszközt, és nem tudok adatokat lekérni az érzékelőkről sem az olvasási mechanizmuson, sem az értesítéseken keresztül.

2. Thunderboard React:

Az operációs rendszer furcsa viselkedést mutat a párosítási folyamat elindításakor. A felfedezett eszközök listájában a SensorTag megjelenik és eltűnik (1… 1,5 s időtartammal). Végül, amikor egy egérkattintás sikeres a SensorTagon, a párosítási folyamat befejeződik, és a Thunderboard React LED -jein (a kék és a zöld) van egy időszak, amikor atipikus módban egymás után villognak.

Az általános hozzáférési szolgáltatás (0x1800) jellemzőinek leolvasása minden probléma nélkül elvégezhető, de az Eszközinformációs szolgáltatás (0x180A) leolvasása nem sikerül mind a négy meglévő jellemzőnél.

Az érzékelők beállítása (a SensorTag beágyazva), az adatgyűjtés módja (a Thunderboard React programban csak a következő lehetőségei vannak: (1) az adatok lekérése 3 érzékelő értesítésén keresztül és (2) a többi négy érzékelő adatainak olvasása) lehetetlen. Ezért a tényleges adatok érzékelőkről történő beszerzésének lehetetlensége közvetlenül innen ered.

3. Thunderboard Sense:

Ugyanez a lüktető folyamat, amelyet a Thunderboard React esetében is megfigyeltek, a Thunderboard Sense esetében is megtörtént - amikor a párosítási folyamatot akarjuk elérni. De itt még rosszabb a helyzet: a párosítás után az áldTag program nem képes észlelni a SensorTagot. Tehát nincs aktív eszköz - nincs entitás, ahonnan az áldásTags alkalmazás megszerzi az adatokat.

4. CC2541DK:

A viselkedés megegyezik a CC2650STK (1.40 firmware verzió) viselkedésével. Minden egyes csatlakozási kísérletnél a következő hibaüzenet jelenik meg: "Próbálja újra csatlakoztatni az eszközt".

Összefoglalva tehát, a Windows 10 ezen verziójában (Creators Update) lehetetlen kommunikálni a fent említett négy típusú SensorTags egyikével sem. Következésképpen megemlítem (még egyszer), hogy itt ugyanazt a szoftververziót használtam, amelyet a Windows 10 Anniversary Update rendszeren végzett összes tesztben is.

4. lépés: Windows 10 - Őszi alkotók frissítése - 1709 -es verzió

Image
Image

Ez a Windows 10 verzió (1709 - OS Build 16299.19) hatalmas előrelépés a Windows 10 Creators Update -hez képest (a BLE -n szinte semmi sem működött), de még hosszú út áll a Windows 10 Anniversary Update szintjének eléréséhez (1607) operációs rendszer

De lássuk, miért tettem ezt a kijelentést:

1. CC2650STK (1.40 firmware verzió) és CC2541DK:

Ezt a két eszközt egyszerre fogom itt kezelni, mert a Windows 10 (1709) operációs rendszerrel kapcsolatos viselkedésük hasonló.

A párosítási művelet és a leolvasás az általános hozzáférésből és az eszközinformációs szolgáltatásokból tökéletesen működik mindenféle probléma nélkül.

A problémák csak akkor jelentkeznek, ha információt akarunk olvasni az érzékelőkről. Az értesítések útján történő adatátviteli mechanizmus egyáltalán nem működik.

A SensorTagbe ágyazott érzékelőkről az adatok lehívásának egyetlen módja az eszközről érkező közvetlen leolvasási mechanizmus. Ennek a megközelítésnek két problémája van: (1) alacsonyabb adatátviteli sebesség (amint azt fentebb bemutattuk) és (2) ha az összes érzékelő elfogadja a két adatátviteli módszer egyikét (olvasás és értesítés útján), akkor a SensorTag gombjai csak az értesítési mechanizmuson keresztül hallgatják ki. A Windows 10 (1709) operációs rendszer ezen "funkciójának" köszönhetően az áldTags alkalmazás a 9.7.8.0 verziótól kezdve az adatgyűjtés olvasási módszerét is megvalósítja.

Probléma jelenik meg a CC2650STK SensorTag 1.20 firmware verziójával. Ha az általános hozzáférési szolgáltatás párosítási és adatolvasási folyamata nagyon jól működik, akkor az eszközinformációs szolgáltatások olvasási folyamata nem lehetséges. Ezenkívül az érzékelők leolvasása (ebből a SensorTag -ból ezzel a firmware verzióval) nem működik a két lehetséges mechanizmus egyikével (olvasás vagy értesítés).

2. Thunderboard React:

Ugyanabban a módban, mint a Windows 10 Creators Update -ben, a SensorTag megjelenik és eltűnik, amikor új Bluetooth -eszközt akarunk hozzáadni. Ugyanezt a viselkedést lehet kiemelni a Bluetooth gyorsgombjának cselekvési központjában is: „Nincs kapcsolat” és a „Thunderboard React” jelenik meg ismételten (lásd a következő filmben ezt a folyamatot az 5,14 s időindextől kezdve). Azonnal következtethetünk hogy a Thunderboard React bűnös, főleg a Silicon Labs mérnökei által a hirdetési mechanizmus hibás megvalósítása miatt. De az interneten keresve észre fogjuk venni, hogy más felhasználók is bejelentették ugyanezt a problémát más típusú BLE eszközöknek, miután telepítették az őszi alkotókat Frissítés - pl. Nézze meg ezt a filmet a YouTube -on.

A SensorTag párosítása után az áldásTags alkalmazás nem találja a Thunderboard React eszközt. Tehát ezen a ponton semmi sem működik: az általános hozzáférés és az eszközinformációs szolgáltatások, vagy az adatgyűjtés a Thunderboard React SensorTag beágyazott érzékelőktől.

3. Thunderboard Sense:

A viselkedési mód hasonló a Thunderboard React -hez. Ez a Bluetooth -eszköz többször megjelenik és eltűnik. Ha a párosítási folyamat sikeres volt, lehetőség van az adatok átvételére a Generic Access Service szolgáltatásból. De innentől kezdve már semmi sem működik.

Összegzésként elmondható, hogy a Windows 10 Fall Creators Update (1709, 16229.19 -es verzió) frissítésénél csak a TI által gyártott SensorTag -ek (CC2650STK és CC2541DK) működnek. Ráadásul csak olvasási módban dolgoznak. De figyelem! Ebben a módban csak a CC2650STK firmware 1.40 verziója működik. Sajnos, amikor CC2650STK -t vásárol, nagyon nagy az esélye, hogy 1.20 -as verziójú firmware -t vásárol. Tehát ahhoz, hogy kommunikálni tudjunk egy ilyen típusú SensorTag frissítéssel, legalább az 1.40 -es firmware verzióra van szükség.

Ehhez a lépéshez kapcsolódóan bemutatok egy filmet, amely igazolja mindezeket a fenti állításokat a Windows 10 Fall Creators Update számára.

A Windows 10 Fall Creators Update első kiadása (build 16229.19), 2017. október 17 -e óta nem történt javítás vagy hibajavítás a Bluetooth LE -vel kapcsolatban a KB4054517 -ig (2017. december 12 -én jelent meg). A KB4054517 -ben (OS Build 16299.125) van egy kulcsfontosságú változás a Bluetooth LE -n (lásd itt): „Megoldja a problémát a személyre szabott Bluetooth -eszközökkel, amelyek nem támogatják a kötést”. Mivel ez az üzenet nagyon titokzatos, úgy döntöttem, hogy folytatom az eddigi elemzéseimet, és megnézem, van -e javulás a Windows 10 Fall Creators Update (16229.19 -es verzió) első kiadásához képest. … És egy kis meglepetés, jelenleg a következőket tudom beszerezni: (1) adatokat a Thunderboard Sense -ből (a SensorTag -ba ágyazott érzékelőkből, de csak az olvasási mechanizmuson keresztül) és (2) minden információt az általános hozzáférési és eszközinformációs szolgáltatásokból. Más fejlesztés nincs.

5. lépés: Windows 8

Az első BLE támogatással rendelkező Microsoft operációs rendszerként a megvalósítás kielégítő, de messze nem lesz kiváló. Az egyetlen eszköz, amely ezzel az operációs rendszerrel működik, a CC2650STK és a CC2541DK.

Ha a CC2650STK adatgyűjtési idejét 150 [ms] -ra állítjuk, akkor az értesítési mechanizmuson keresztül minden probléma nélkül megkaphatjuk az adatokat (minden beágyazott érzékelőből), amelyek megfelelnek a 150 ms -os mintavételi aránynak. Sajnos a CCC2650STK leolvasási mechanizmus használatával 2 másodperc alatt adatokat kaphatunk (az összes érzékelőből).

A helyzet egyre rosszabb, amikor a CC2541DK -ról beszélünk. Az értesítési mechanizmus révén az adatokat 0,4… 0,6 másodperc alatt nyerik el. Az olvasási mechanizmus használata közben 2,8… 3 másodperces ingadozási periódussal tudjuk lekérni az adatokat. A feltételek ugyanazok: 150 [ms] a CC2541DK SensorTag -ba ágyazott összes érzékelőből.

6. lépés: Windows 7

A Microsoft cég a Windows 8 operációs rendszertől kezdve támogatja a Bluetooth Low Energy (BLE) verem támogatását. Olyan API -t biztosítottak, amely lehetővé teszi az alkalmazások számára a BLE -eszközök elérését.

De a Microsoft nem hordozta a BLE API-kat a Windows 7 rendszerhez. A Windows 7 beépített veremje csak a 2.1/3.0 Bluetooth verziót támogatja, a BLE (4.0, 4.1 vagy 4.2) nem támogatott. Tehát a fejlesztő szemszögéből lehetetlen kommunikálni a Windows 7 rendszerben egy BLE eszközzel a Windows 7 verem használatával.

A TI cég rendelkezik a BLE Device Monitor nevű programmal, amely képes: (1) futni Windows 7 rendszeren és (2) kommunikálni egy SensorTaggal. Ehhez azonban speciális USB -kulcsot kell használnia (pl. CC2540 Bluetooth Low Energy USB). Ha az USB -hardverkulcs forráskódja ingyenes, a BLE Device Monitor forráskódja nem érhető el - csak a TI vállalat belső használatra szolgál.

7. lépés: Következtetések

Következtetések
Következtetések

A Windows 10 Anniversary Update (1607 -es verzió) a legjobb Windows -verzió, amelyet a Microsoft valaha készített a Bluetooth Low Energy (BLE) eszközök - esetünkben a SensorTags - szempontjából. Nyilvánvalóan ez annak is köszönhető, hogy számos fejlesztés történt a Bluetooth LE szintjén az alábbi operációs rendszer-összeállításokban (további információ: https://support.microsoft.com/en-us/help/4000825): 14393.51, 14393.105, 14393.189, 14393.222, 14393.321, 14393.351, 14393.726 és 14393.1083.

Az áldásTags (BLE SensorTags) alkalmazás letölthető a Windows Store Alkalmazásokból: https://www.microsoft.com/store/apps/9p054xsjjr1n. További információkért, bemutatókért, gyakorlati alkalmazásokért, példákért stb. Keresse fel a következő blogot:

A fenti eredmények összesítésével megkapjuk az ehhez a lépéshez tartozó táblázatot.

Ajánlott: