Оглавление:
- Шаг 1. Анализ системы Bluetooth в Windows - подход SensorTag
- Шаг 2. Windows 10 - юбилейное обновление - версия 1607
- Шаг 3. Windows 10 - Creators Update - версия 1703
- Шаг 4. Windows 10 - Fall Creators Update - версия 1709
- Шаг 5: Windows 8
- Шаг 6: Windows 7
- Шаг 7: выводы
Видео: Системный анализ Windows Bluetooth - подход SensorTag: 7 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Далее я проведу анализ операционной системы (ОС) Windows с точки зрения связи с устройствами Bluetooth Low Energy - в нашем случае с различными типами SensorTags: Thunderboard React, Thunderboard Sense (оба произведены Silicon Labs. Company), CC2650STK и CC2541DK (оба разработаны Texas Instruments Company).
Шаг 1. Анализ системы Bluetooth в Windows - подход SensorTag
Далее я проведу анализ операционной системы (ОС) Windows с точки зрения связи с устройствами Bluetooth Low Energy - в нашем случае с различными типами SensorTags: Thunderboard React, Thunderboard Sense (оба произведены Silicon Labs. Company), CC2650STK и CC2541DK (оба разработаны Texas Instruments Company).
Далее я проанализирую Windows 7, Windows 8.1 и следующие версии Windows 10:
· Юбилейное обновление (выпущено 2 августа 2016 г.; окончание поддержки: ориентировочно март 2018 г.), · Creators Update (выпущено 5 апреля 2017 г.; окончание поддержки: ориентировочно в сентябре 2018 г.) и
· Fall Creators Update (выпущено 17 октября 2017 г.; окончание поддержки: ориентировочно март 2019 г.).
Анализ будет производиться со следующих точек зрения:
1. Возможность операционной системы (ОС) сопрягаться с SensorTag;
2. Возможность получить данные Generic Access (это обязательная услуга);
3. Возможность получения информации об устройстве (эта услуга предоставляет информацию о производителе и / или поставщике, относящуюся к определенному SensorTag);
4. Возможность получать данные SensorTag, используя метод чтения и
5. Возможность получать данные SensorTag, используя подход уведомлений.
Все тесты проводились с использованием приложения blessTags версии 9.7.8.0. Приложение blessTags было создано с поддержкой Windows SDK - Bluetoothapis. Были использованы такие функции, как BluetoothGATTGetCharacteristicValue, BluetoothGATTGetDescriptorValue, BluetoothGATTGetServices или BluetoothGATTSetCharacteristicValue.
Это приложение, приложение blessTags (BLE SensorTags), можно загрузить из приложений Магазина Windows: https://www.microsoft.com/store/apps/9p054xsjjr1n. Для получения дополнительной информации, демонстрации, практических приложений, примеров и т. Д. Посетите следующий блог:
Шаг 2. Windows 10 - юбилейное обновление - версия 1607
Эта версия операционной системы Windows 10 является лучшей с точки зрения устройств Bluetooth Low Energy. Он может без проблем сопрягаться со всеми SensorTags (независимо от версии программного обеспечения, работающего на них), с которыми приложение blessTags знает, как работать (CC2650STK, Thunderboard React, Thunderboard Sense и CC2541DK), и вся информация из служб Bluetooth Get Generic Доступ и получение информации об устройстве осуществляется без каких-либо проблем.
Анализируя скорость сбора данных (для устройств CC2650STK и CC2541DK) с использованием уведомительно-считывающего механизма передачи данных, мы можем наблюдать следующее:
1. через механизм уведомлений мы можем без проблем получать данные со всех датчиков (восьми) от 150 [мс] до 150 [мс];
2. вместо этого, когда мы устанавливаем время сбора данных на 150 [мс] и используем механизм чтения данных - в наиболее удачной ситуации мы получаем 713 [мс], а в худшем - 840 [мс].
Если мы проанализируем Thunderboard React и Thunderboard Sense, мы получим эквивалентные результаты - они без проблем работают в среде Windows 10 Anniversary Update.
Фактически, все презентации основных функций приложения blessTags и различных конкретных функций (например, гаджетов) были созданы при поддержке юбилейного обновления Windows 10.
Шаг 3. Windows 10 - Creators Update - версия 1703
Версия Windows 10 Creators Update - худшая операционная система (ОС) с точки зрения устройств с низким энергопотреблением Bluetooth.
Практически ничего не работает. Microsoft признала, что обновление Creators Update нарушило Bluetooth Low Energy (ссылка 1 и ссылка 2). Компания Microsoft пообещала исправление в ближайшее время. Но с тех пор они выпустили обновленную версию Windows (Fall Creators Update), и ничего не произошло - до сих пор в версии Windows 10 Creators Update Bluetooth Low Energy по-прежнему не работает.
На форумах имеется большое количество сообщений, в которых разные люди жалуются на разные типы устройств Bluetooth, которые перестают работать после обновления до Creators Update (см. Здесь, см. Здесь, см. Здесь, см. Здесь и т. Д.).
Результаты, которые я собираюсь показать сразу, были получены после многих тестов: (1) на настольном ПК с USB-ключом CSR4.0 Bluetooth (CSR8510 A10) и (2) на ноутбуке Dell Inspiron P66F с встроенное устройство Bluetooth LE. Я знаю, что в Интернете есть множество решений, позволяющих исправить несколько типов проблем с Bluetooth. Я перепробовал почти все, но ничего не работало (обновите драйвер Bluetooth, запустите средство устранения неполадок Windows, отключите и включите службы, связанные с Bluetooth и т. Д.)
Итак, представим результаты:
1. CC2650STK:
а. На прошивке версии 1.40 невозможно сопряжение устройства SensorTag с Windows (повторил процесс несколько раз, не менее 8-10 раз, я включил и выключил Bluetooth и попробовал еще раз - результаты были те же: невозможно было добавить это устройство).
б. В версии прошивки 1.20 ПК обнаружил SensorTag, и я смог связать SensorTag с ПК.
Кроме того, мне удалось получить данные Generic Access. Но, в сервисе Get Device Information, из 9 характеристик откликнулось только 6 и только по ним можно было получить информацию.
Вместо этого я не могу настроить устройство и не могу получать данные с датчиков ни с помощью механизма чтения, ни с помощью уведомлений.
2. Thunderboard React:
Операционная система ведет себя странно при запуске процесса сопряжения. В списке обнаруженных устройств появляется и исчезает SensorTag (с периодом 1… 1,5 с). Наконец, когда мышь успешно нажимает на SensorTag, процесс сопряжения завершается, и светодиоды на Thunderboard React (синий и зеленый) имеют период, когда они последовательно мигают в нетипичном режиме.
Чтение характеристик службы общего доступа (0x1800) может быть выполнено без каких-либо проблем, но чтение из службы информации об устройстве (0x180A) не выполняется по всем четырем существующим характеристикам.
Настройка датчиков (встроенных в SensorTag), режима сбора данных (в Thunderboard React у вас есть только следующая возможность: (1) получать данные через уведомление от 3 датчиков и (2) считывать данные с других четырех датчиков) невозможно. Следовательно, прямо отсюда вытекает невозможность получения реальных данных с датчиков.
3. Thunderboard Sense:
Было обнаружено, что тот же пульсирующий процесс, который наблюдается для Thunderboard React, существует и для Thunderboard Sense - когда мы хотим добиться процесса сопряжения. Но здесь дела обстоят еще хуже: после сопряжения программа blessTag не может обнаружить SensorTag. Итак, нет активного устройства - нет объекта, откуда приложение blessTags получает данные.
4. CC2541DK:
Поведение идентично поведению CC2650STK (версия прошивки 1.40). При каждой попытке подключения вы будете получать следующее сообщение об ошибке: «Попробуйте подключить устройство еще раз».
Итак, в заключение, в этой версии Windows 10 (Creators Update) невозможно взаимодействовать ни с одним из четырех типов SensorTags, указанных выше. Следовательно, я упоминаю (еще раз), что здесь я использовал ту же версию программного обеспечения, которую я также использовал во всех тестах, проведенных в Windows 10 Anniversary Update.
Шаг 4. Windows 10 - Fall Creators Update - версия 1709
Эта версия Windows 10 (1709 - сборка ОС 16299.19) - огромный шаг вперед по сравнению с Windows 10 Creators Update (были на BLE, почти ничего не работает), но еще предстоит пройти долгий путь до уровня Windows 10 Anniversary Update. (1607) операционная система
Но давайте посмотрим, почему я сделал это заявление:
1. CC2650STK (версия прошивки 1.40) и CC2541DK:
Я буду рассматривать эти два устройства одновременно, потому что их поведение в отношении операционной системы Windows 10 (1709) аналогично.
Операция сопряжения и считывание из служб общего доступа и информации об устройстве работают отлично, без каких-либо проблем.
Проблемы возникают только тогда, когда мы хотим считывать информацию с датчиков. Механизм передачи данных через уведомления вообще не работает.
Единственный способ получить данные от датчиков, встроенных в SensorTag, - это использовать механизм прямого считывания с устройства. Этот подход имеет две проблемы: (1) более низкая скорость передачи данных (как мы показали выше) и (2) если все датчики принимают один из двух методов передачи данных (посредством чтения и уведомления), кнопки на SensorTag могут быть опрашиваются только через механизм уведомления. Благодаря этой «особенности» ОС Windows 10 (1709) приложение blessTags, начиная с версии 9.7.8.0, реализует также метод чтения для сбора данных.
Проблема возникает с CC2650STK SensorTag с версией прошивки 1.20. Если процесс сопряжения и чтения данных из службы Generic Access работает очень хорошо, процесс чтения из служб информации об устройстве невозможен. Более того, считывание датчиков (из этого SensorTag с этой версией прошивки) не работает ни одним из двух возможных механизмов (чтение или уведомление).
2. Thunderboard React:
В том же режиме, что и в Windows 10 Creators Update, SensorTag появляется и исчезает, когда мы хотим добавить новое устройство Bluetooth. Такое же поведение можно выделить в центре действий на кнопке быстрого действия Bluetooth, где «Не подключен» и «Thunderboard React» постоянно отображаются (см. Этот процесс в следующем видео, начиная с временного индекса 5,14 с). Сразу можно сделать вывод что Thunderboard React виновен, в основном из-за неправильной реализации рекламного механизма инженерами Silicon Labs. Но, поискав в Интернете, мы заметим, что другие пользователи сообщали о той же проблеме на других типах устройств BLE после установки Fall Creators Обновление - например, просмотреть этот фильм на YouTube.
После сопряжения SensorTag приложение blessTags не может найти устройство Thunderboard React. Итак, на данный момент ничего не работает: общий доступ и службы информации об устройстве или сбор данных с датчиков, встроенных в Thunderboard React SensorTag.
3. Thunderboard Sense:
Режим работы аналогичен режиму Thunderboard React. Это устройство Bluetooth отображается и постоянно исчезает. Когда процесс сопряжения успешен, можно получить данные из Generic Access Service. Но с этого момента уже ничего не работает.
В заключение, в настоящее время в Windows 10 Fall Creators Update (1709, сборка 16229.19) работают только SensorTags, созданные TI (CC2650STK и CC2541DK). Более того, они работают только в режиме чтения. Но внимание! В этом режиме будет работать только версия микропрограммы CC2650STK 1.40. К сожалению, при покупке CC2650STK у вас очень высока вероятность взять устройство с версией прошивки 1.20. Таким образом, чтобы иметь возможность взаимодействовать с таким типом SensorTag, необходимо обновить прошивку как минимум до версии 1.40.
В связи с этим шагом я представляю фильм, подтверждающий все эти утверждения, сделанные выше для Windows 10 Fall Creators Update.
С момента первого выпуска Windows 10 Fall Creators Update (сборка 16229.19) 17 октября 2017 г. не было никаких улучшений или исправлений ошибок, связанных с Bluetooth LE до версии KB4054517 (выпущенной 12 декабря 2017 г.). В KB4054517 (сборка ОС 16299.125) есть ключевое изменение в Bluetooth LE (см. Здесь): «Решает проблему с персонализированными устройствами Bluetooth, которые не поддерживают связывание». Поскольку это сообщение является очень загадочным, я решил возобновить весь мой анализ, проведенный до сих пор, и посмотреть, есть ли какие-либо улучшения по сравнению с первым выпуском Windows 10 Fall Creators Update (сборка 16229.19). … И небольшой сюрприз, прямо сейчас я могу получить: (1) данные из Thunderboard Sense (от датчиков, встроенных в SensorTag, но только через механизм чтения) и (2) всю информацию из служб общего доступа и информации об устройстве. Других улучшений нет.
Шаг 5: Windows 8
Реализация первой ОС Microsoft с поддержкой BLE удовлетворительна, но далеко не идеальна. Единственные устройства, которые работают с этой операционной системой, - это CC2650STK и CC2541DK.
Установив время сбора данных на 150 [мс], для CC2650STK мы можем получить данные (со всех встроенных датчиков), соблюдая частоту дискретизации 150 [мс], через механизм уведомления без каких-либо проблем. К сожалению, используя механизм чтения CCC2650STK, мы можем получать данные (со всех датчиков) с периодом 2 секунды.
Ситуация усугубляется, когда речь идет о CC2541DK. Через механизм уведомлений данные получаются с периодом 0,4… 0,6 секунды. Используя механизм чтения, мы можем извлекать данные с периодом колебания 2,8… 3 секунды. Условия такие же: период сбора данных 150 [мс] со всех датчиков, встроенных в CC2541DK SensorTag.
Шаг 6: Windows 7
Компания Microsoft добавила поддержку стека Bluetooth Low Energy (BLE), начиная с операционной системы Windows 8. Они предоставили API, который позволяет приложениям получать доступ к устройствам BLE.
Но Microsoft не портировала BLE API в Windows 7. Встроенный стек Windows 7 поддерживает только Bluetooth версии 2.1 / 3.0, нет поддержки BLE (4.0, 4.1 или 4.2). Итак, с точки зрения разработчика, в Windows 7 невозможно взаимодействовать с устройством BLE, использующим стек Windows 7.
У компании TI есть программа под названием BLE Device Monitor, которая может: (1) работать в Windows 7 и (2) взаимодействовать с SensorTag. Но для этого необходимо использовать специальный USB-ключ (например, CC2540 Bluetooth Low Energy USB). Если исходный код для USB-ключа свободен, исходный код для BLE Device Monitor недоступен - он предназначен только для внутреннего использования компанией TI.
Шаг 7: выводы
Юбилейное обновление Windows 10 (версия 1607) - лучшая версия Windows, когда-либо созданная Microsoft с точки зрения устройств Bluetooth с низким энергопотреблением (BLE) - в нашем случае SensorTags. Очевидно, это также связано со значительным количеством улучшений, которые произошли на уровне Bluetooth LE в следующих сборках ОС (см. Дополнительную информацию: https://support.microsoft.com/en-us/help/4000825): 14393.51, 14393.105, 14393.189, 14393.222, 14393.321, 14393.351, 14393.726 и 14393.1083.
Приложение blessTags (BLE SensorTags) можно загрузить из приложений Магазина Windows: https://www.microsoft.com/store/apps/9p054xsjjr1n. Для получения дополнительной информации, демонстрации, практических приложений, примеров и т. Д. Посетите следующий блог:
Обобщая все вышеперечисленные результаты, мы получим таблицу, связанную с этим шагом.
Рекомендуемые:
Анализ LTE Cat.M1 PSM (режим энергосбережения): 4 шага
Анализ LTE Cat.M1 PSM (режим энергосбережения): в предыдущей статье мы обсудили, как установить цикл «активный / спящий» с помощью PSM. Пожалуйста, обратитесь к предыдущей статье для объяснения настроек оборудования, PSM и AT-команды. (Ссылка: https://www.instructables.com/id/What-Is-a-PSMPow…Ac
Анализ данных температуры / влажности с использованием Ubidots и Google-Sheets: 6 шагов
Анализ данных температуры / влажности с использованием Ubidots и Google-Sheets: в этом руководстве мы будем измерять различные данные о температуре и влажности с помощью датчика температуры и влажности. Вы также узнаете, как отправить эти данные в Ubidots. Так что вы можете анализировать его из любого места для разных приложений. Также отправив
Анализ биоимпеданса (BIA) с AD5933: 9 шагов
Анализ биоимпеданса (BIA) С AD5933: я был заинтересован в создании анализатора биоимпеданса для измерения состава тела, и мои случайные поиски продолжали находить дизайн из класса биомедицинских инструментов 2015 года в Университете Вандербильта. Я проработал дизайн, и я
Анализ книги заказов с помощью датчика цвета: 14 шагов
Анализ книги заказов с помощью датчика цвета: использует датчик красного / зеленого / синего цвета Adafruit TCS34725 для анализа светового потока из экранной книги заказов при торговле криптовалютами. Если преимущественно "купить" поступают заказы, представленные зелеными цифрами на экране, вы могли ожидать
Анализ настроений в Twitter с помощью Raspberry Pi: 3 шага (с изображениями)
Анализ настроений в Twitter с помощью Raspberry Pi: что такое анализ настроений и почему он должен вас волновать? Анализ настроений - это процесс определения эмоционального тона, стоящего за серией слов, который используется для понимания выражаемых настроений, мнений и эмоций. в пределах