Лог мониторинга bluetooth hci что это
Русские Блоги
Android Bluetooth HCI журнал подробно
0. Введение
Для разработчиков Bluetooth журнал HCI может помочь нам лучше проанализировать проблему и понять протокол Bluetooth, так же как при разработке сети необходимо использовать Wireshark для анализа сетевых протоколов.
Эта статья в основном представляетРоль журнала HCI、Как получить копию журнала HCIИ объединитьПрактический примерПроиллюстрироватьКак анализировать журнал HCI。
1. Введение в журнал HCI
1.1 Функция журнала HCI
Журнал HCI используется для анализа поведения взаимодействия между устройствами BluetoothСоответствует ли это ожиданиям?,Исполните с спецификацией Bluetooth, В повседневной разработке журнал HCI обычно используется для нескольких вещей:
анализ спроса: Мобильный телефон должен быть оснащен селфи-палкой Bluetooth для управления фотосъемкой. Через журнал HCI вы можете наблюдать, какой профиль Bluetooth используется конкурирующими продуктами при реализации этой функции? Пока мы знаем, что профиль Bluetooth используется, у нас есть идея реализовать эту функцию.
Изучение протокола Bluetooth: Используйте журнал HCI, чтобы помочь в изучении протокола Bluetooth, так же, как изучение TCP / IP путем захвата пакетов через wireshark
1.2 Базовая архитектура системы Bluetooth
Сказав так много использований журнала HCI, если мы хотим лучше понять журнал HCI, нам нужно сначала взглянуть на положение HCI во всей архитектуре базовой системы Bluetooth. Для облегчения понимания я буду использовать архитектуру базовой системы Bluetooth3 слоя абстракции:
HCI (Host controller Interface): Когда верхний уровень вызывает Bluetooth API,Не будет напрямую манипулировать нижним слоем Bluetooth(Контроллер) связанный интерфейс, ноОтправьте Команду соответствующей операции Контроллеру через HCIИ затем вернуть результат выполнения после того, как нижний уровень выполнит команду,То есть контроллер отправляет событие в HCI, а затем HCI уведомляет прикладной уровеньHCI сыграласредний слойРоль.
Controller: Контроллер находится на самом низком уровне, который можно понимать как чип Bluetooth на нашем мобильном телефоне.
Абстрактная архитектура Bluetooth
Полная базовая архитектура системы Bluetooth более сложна, поэтому мы не будем вдаваться в подробности. Заинтересованные студенты могут обратиться к спецификации Bluetooth.Core_v4.2.pdf, Есть подробные определения и введения. Когда мы проанализируем журнал HCI позже, мы также будем ссылаться на контент, определенный в этой спецификации.
Полная архитектура Bluetooth
2. Как захватить журнал HCI
Открыть в настройках разработчикаВключить журнал сбора информации Bluetooth HCIПереключатель, система Android будет автоматически собирать журнал HCI и сохранять его на телефоне.
Включить журнал сбора информации Bluetooth HCI
Различные платформы хранят журнал HCI по разным путям.MTKПуть для хранения журнала HCI/sdcard/mtklog/btlog/btsnoop_hci.log,QualcommПуть хранения/sdcard/btsnoop_hci.log
Если в указанном выше пути нет журнала HCI, мы все равно можем использоватьФайл конфигурации Bluetooth bt_stack.conf для просмотра пути, Bt_stack.conf находится/etc/bluetooth/Под тропой. Путь к журналу HCI пройденBtSnoopFileName=/sdcard/btsnoop_hci.logЧтобы настроить это.
Путь регистрации HCI на мобильном телефоне
И bt_stack.conf через исходный код Android/system/bt/conf/bt_stack.confНастроить.
3. Инструмент анализа журнала HCI
Frontline ComProbe Protocol Analysis SystemЭто инструмент анализа журнала протокола Bluetooth, предоставленный Frontline. Компания Frontine в основном используется для захвата устройств регистрации Bluetooth Air Sniff. Давайте поговорим о регистрации Air Sniff позже. Приобрести их инструмент захвата пакетов будет поставляться с инструментом анализа журнала, вы также можетеFrontine официальный сайтЗагрузите и загрузите, вам нужно заполнить некоторую информацию при загрузке, студенты, которые находят проблемы, могут перейти к другимНеофициальный сайтСкачивать.
После завершения установки найдите Frontline ComProbe Protocol Analysis System в меню «Пуск» и используйте Capture File Viewer, чтобы открыть журнал HCI.
ComProbe Protocol Analysis System
Шаг 1. Откройте журнал HCI
Выберите тип журнала
Step 2. После открытия файла журнала выберитеFrame DisplayВы можете увидеть журнал HCI, который мы взяли
Шаг 2. Выберите Frame Display
Основной интерфейс Frame Display
Step 3В окне Frame Display имеется множество вкладок, которые могут отображать различные типы протоколов в стеке протоколов, например: журналы, относящиеся к HCI, размещаются на вкладке HCI,Hands-Free(HFP)принадлежатПрофиль Bluetooth на прикладном уровне, Журналы операций, связанных с HFP, размещаются на вкладке Hands-Free.
4. Журнал HCI-Bluetooth процесс сканирования устройства анализа процесса
Прикладной уровень вызываетstartDiscovery()При выполнении сканирования устройства,HostВышлю один через HCIInquiry HCI CommandдайтеController, Далее мы изучим процесс запроса, проанализировав журнал HCI. Прежде чем анализировать журнал HCI, давайте изучимПакет команд HCIСтруктура.
4.1 Структура пакета данных HCI Command
Структура пакета данных команды HCI определена в спецификации основного протокола BluetoothCore_v4.2.pdfв.
Каталог спецификаций Bluetooth Core
For the Link Control commands, the OGF is defined as 0x01
следовательно,Код операции запроса0x0001
Интеллектуальная рекомендация
[MyBatis] О кеше
Уровень 1 кеш (локальный кеш) По умолчанию он всегда включен. Он действителен после запроса из Mapper и помещения в локальный. Он действителен в сеансе. Например, объект 01 отправляет sql, объект 02 т.
Учебка летакода: классификация цвета
Spring Framework IOC контейнер и анализ АОП
Базовая структура Spring в основном включает шесть модулей: DAO, ORM, AOP, JEE, WEB, CORE. Spring DAO: Spring обеспечивает поддержку операций для JDBC: класс инструментальных шаблонов JdbcTempl.
Базовый обзор веб-интерфейса_day07_JavaScript advanced
Расширенный JavaScript JavaScript = ECMAScript + BOM + DOM; 1. Объект спецификации Объектная модель браузера. Объектная модель браузера; Доступ и управление различными компонентами браузера для предос.
Использование pthread_join () и pthread_detach () для многопоточности
Потоки делятся на присоединяемые и несоединяемые. Ассоциируемый поток может быть освобожден и уничтожен другими потоками. Отдельный поток не может быть уничтожен или восстановлен другими потоками. Про.
Bluetooth HCI snoop журнал не генерируется
Я запускаю Android 4.4.2, и я включил «журнал Bluetooth HCI snoop», как описано здесь нюхать / регистрировать свой собственный трафик Android Bluetooth
после включения и выключения bluetooth я перезагрузил телефон. Я не смог найти файл журнала в ожидаемом месте:
Как я могу добраться до btsnoop_hci.лог?
7 ответов
согласно моему опыту функция Bluetooth HCI snooping требует, чтобы ваше устройство было укоренено. На моем корневом Samsung Galaxy S GT-I9000 он отлично работает, а на моем некорневом Galaxy S3 Neo эта функция не работает.
кроме того, вы должны убедиться, что вы не случайно удалили файл. Всякий раз, когда я удаляю файл, я должен повторно включить функцию отслеживания Bluetooth, чтобы система воссоздала файл журнала.
UPDATE: журнал btsnoop hci, похоже, постепенно выходит из доступных пользователю областей на многих телефонах. Предполагая, что вы включили ведение журнала hci, вы можете получить bugreport
затем распакуйте папку. Если Вам ПОВЕЗЕТ, есть папка «FS», которая содержит btsnoop_hci.войти войти несколько слоев вниз (не уверен, почему некоторые телефоны имеют это, а некоторые нет.) Если у вас его нет, возьмите текстовый файл отчета об ошибке, который выглядит следующим образом
вы можете увидеть, где ваш телефон хранит журнал hci, прочитав bt_stack.файл conf. Попробуй!—8—>
вы увидите строку, которая выглядит как
это обычно, но не всегда (зависит от телефона) от корня SD-карты. В этом файле конфигурации также есть строка, которая может отражать, действительно ли ведение журнала hci включено или нет
переключение опции «включить Bluetooth HCI snoop log» в параметрах разработчика должно изменить его на
Я говорю «должен», потому что для некоторых телефонов не обновляйте этот файл. Вы должны:
если ни один из 3 вариантов не работает, вам не повезло. BT Snoop HCI logging немного непоследователен на разных телефонах. Я видел несколько телефонов, где я просто не мог заставить его работать, не важно что, но в большинстве случаев вы должны быть в состоянии заставить его работать. Корневой телефон не является требованием
на Nexus 5X и Pixel C Android O вы должны включить bluetooth, включить HCI snooping в настройках разработчика, отключить и повторно включить bluetooth и перезагрузить компьютер.
после этого вы можете получить журнал в настройках разработчика и «принять отчет об ошибке» и получить полный отчет.
Журнал Bluetooth HCI не сгенерирован
Я запускаю Android 4.4.2, и я включил «журнал отслеживания Bluetooth HCI», как описано здесь. Sniffing / logging собственный Android-трафик Bluetooth Bluetooth
После включения и выключения Bluetooth я перезагрузил телефон. Я не смог найти файл журнала в ожидаемом месте:
Как я могу добраться до btsnoop_hci.log?
По моему опыту, функция отслеживания Bluetooth HCI требует, чтобы ваше устройство было внедрено. На моем укорененном Samsung Galaxy S GT-I9000 он отлично работает, хотя на моей ненарушенной Galaxy S3 Neo эта функция не работает.
Кроме того, вы должны убедиться, что вы случайно не удалили файл. Всякий раз, когда я удаляю файл, мне нужно снова включить функцию отслеживания Bluetooth, чтобы система заново создала файл журнала.
Пожалуйста, игнорируйте любые предложения, которые требуют, чтобы телефон был внедрен, чтобы получить журнал HCI. Это, конечно, не так. Вы можете видеть, где ваш телефон хранит журнал hci, читая файл bt_stack.conf. Пытаться
Вы увидите строку, которая выглядит так:
Обычно, но не всегда (зависит от телефона) от корня sdcard. В этом файле конфигурации есть строка, которая отражает, действительно ли ведение журнала hci включено или нет
Переключение опции «Включить протокол Bluetooth HCI snoop» в настройках разработчика СЛЕДУЕТ изменить его на
Я говорю «нужно», потому что для некоторых телефонов это просто не работает. Это редко, но бывает. Вам следует:
Если ни один из трех вариантов не работает, вам не повезло. Ведение журнала BT Snoop hci немного непоследовательно для разных телефонов. Я видел несколько телефонов, на которых я просто не мог заставить его работать, неважно, что, но в большинстве случаев вы должны это сделать. Корневой телефон не является требованием
Все о функциях разработчика в вашем телефоне
Константин Иванов
Настройки, которые используются для отладки и для разработки приложений, спрятаны в вашем телефоне – спрятаны в прямом смысле слова. Многие из нас идут в соответствующий раздел меню, чтобы запустить отладку USB или переключиться к рабочему модулю ART, но кроме этого, здесь имеется целый список настроек. Большая часть никогда вам не понадобится, но разве не интересно узнать, что скрывается в недрах вашего устройства?
«Разблокируем» функции разработчика в телефоне
Как говорилось выше, эти функции изначально скрыты. Это имеет смысл, поскольку найти их просто, а большинству людей они попросту не нужны. Для того, чтобы добраться до них, идем в раздел «Об устройстве» и ищем там пункт «Номер сборки». После пяти быстрых тапов появляется диалоговое окно – теперь устройство считает вас разработчиком. Только попробуйте ничего не испортить, ладно? Ну, или делайте что хотите – тоже вариант. Так или иначе, возможность заставить ваш телефон перестать работать всегда имеется.
А теперь посмотрим на предложенные функции повнимательнее.
Настройки
Понятно, что большинству пользователей все эти настройки ни на что не сдались. Кроме того, лезть туда и нажимать на пункты меню ради самого процесса — не лучшая идея. Но всегда стоит знать, что вообще можно сделать, хотя бы и просто для того, чтобы не делать этого никогда.
Надеемся, что наш рассказ просветил вас немного по вопросу этих настроек и опций, записанных непонятными словами. Кстати, в зависимости от выбранного языка системы, производителя и версии ОС Android, набор пунктов может несколько отличаться разделами и их названиями.