журнал блютуз hci что это

Bluetooth: Архитектура — Host Controller Interface (HCI)

Нижние программные уровни стека Bluetooth
журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это
Хост – устройство, к которому подключен модуль Bluetooth.
На рисунке изображен обзор нижних программных уровней. Аппаратное ПО (микропрограмма) HCI преобразует команды интерфейса контроллера хоста в команды для физического оборудования Bluetooth (для Baseband и менеджера связей), а так же управляет статусными регистрами, регистрами управления и регистрами событий.
Между драйвером HCI и аппаратным ПО HCI могут существовать несколько слоев. Эти промежуточные слои не контролируют данные, передаваемые транспортным уровнем хост контроллера.
Драйвер HCI осуществляет обмен данными и командами с аппаратным ПО HCI. Для обеспечения передачи этих данных служит драйвер транспортного уровня хост контроллера (драйвер физической шины).
Хост получает асинхронные уведомления о событиях HCI независимо от того, как используется транспортный уровень. Когда хост обнаруживает, что произошло событие, он анализирует пакеты полученных событий для того, чтобы определить, какое событие произошло.

Транспортный уровень контроллера хоста
Стек драйверов хоста имеет транспортный уровень между драйвером контроллера хоста и хостом. Транспортный уровень прозрачен для передачи данных. Драйвер контроллера хоста, являющийся интерфейсом к контроллеру, должен быть независимым от способа передачи данных. К способу передачи данных не должны предъявляться требования знания данных, передаваемых драйвером контроллера самому контроллеру. Это позволяет изменять интерфейс (HCI) или контроллер, не влияя на транспортный уровень.

Обзор команд и событий HCI

Общие события — события могут возникать от команд или других событий, возникающий в любое время.
Установка устройства — команды используются для переключения контроллера в определенное состояние.
Контроллер управления потоком — эти команды совместно с событиями используются для управления потоком от хоста к контроллеру.
Информация контроллера — эти команды позволяют хосту обнаруживать локальную информацию об устройстве.
Конфигурация контроллера — эти команды совместно с событиями позволяют настраивать общие конфигурационные параметры.
Обнаружение устройств эти команды совместно с событиями позволяют устройству обнаруживать другие устройства.
Установка соединения — эти команды совместно с событиями позволяют устройству подключаться к другому устройству.
Информация о другом устройстве — эти команды совместно с событиями позволяют обнаруживать информацию о других устройствах.
Синхронные соединения — эти команды совместно с событиями позволяют создавать синхронные соединения.
Состояние соединения — эти команды совместно с событиями позволяют настраивать связь, преимущественно для операций, уменьшающих энергопотребление.
Структура сети Piconet — эти команды совместно с событиями позволяют обнаруживать и настраивать сеть Piconet.
Качество обслуживания — эти команды совместно с событиями позволяют настраивать параметры качества обслуживания.
Физические связи — эти команды совместно с событиями позволяют настраивать физическую связь.
Управление потоком хоста — эти команды совместно с событиями позволяют использовать управление потоком данных совместно с хостом.
Информация о связи — эти команды совместно с событиями позволяют читать информацию о связи.
Аутентификация и шифрование — эти команды совместно с событиями позволяют аутентифицировать другое устройство и зашифровать связь с ним.
Тестирование — эти команды совместно с событиями позволяют переводить устройство в тестовый режим.

Управление потоком HCI

Управление потоком от хоста к контроллеру
Управление потоком в этом направлении используется для предотвращения переполнения буфера данных контроллера с данными ACL, направляющимися на другое устройство (используя хендл соединения), которое не отвечает. Хост управляет буферами данных контроллера.

Управление потоком от контроллера к хосту
В некоторых реализациях может быть необходимым управление потоком в направлении от контроллера к хосту. Данный набор команд может использоваться для включения или отключения управления потоком в данном направлении.

Источник

Журнал блютуз hci что это

Bluetooth является беспроводной технологией для создания персональных сетей на расстоянии не более 10 метров, работающей на частоте 2.4 ГГц, которая не подлежащит лицензированию. Обычно такие сети формируются из портативных устройств, таких, как сотовые телефоны, КПК и лаптопы. В отличие от Wi-Fi, другой популярной беспроводной технологии, Bluetooth предоставляет более высокий уровень сервиса, например, файловые серверы типа FTP, передачу файлов, голоса, эмуляцию последовательного порта и другие.

По умолчанию драйверы устройств Bluetooth поставляются в виде модулей ядра. Перед подключением устройства вам необходимо подгрузить драйвер в ядро.

Подключите ваше USB-устройство. На консоли (или в журнале syslog) появится примерно такое сообщение.

ubt0: vendor 0x0a12 product 0x0001, rev 1.10/5.25, addr 2 ubt0: Interface 0 endpoints: interrupt=0x81, bulk-in=0x82, bulk-out=0x2 ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3, wMaxPacketSize=49, nframes=6, buffer size=294

# /etc/rc.bluetooth start ubt0 BD_ADDR: 00:02:72:00:d4:1a Features: 0xff 0xff 0xf 00 00 00 00 00

Max. ACL packet size: 192 bytes Number of ACL packets: 8 Max. SCO packet size: 64 bytes Number of SCO packets: 8

Host Controller Interface (HCI) предоставляет интерфейс для управления контроллером передатчика и менеджером соединений, а также доступ к данным о состоянии оборудования и его управляющим регистрам. Этот интерфейс предоставляет унифицированный метод доступа к передающим возможностям Bluetooth. Уровень HCI на управляющей машине обменивается данными и командами с микрокодом HCI в оборудовании Bluetooth. Драйвер для Host Controller Transport Layer (то есть физической шины) предоставляет обоим слоям HCI возможность обмениваться данными друг с другом.

BD_ADDR является уникальным адресом устройства Bluetooth, вроде MAC-адресов сетевых адаптеров. Этот адрес необходим для дальнейшей работы с устройством. Адресу BD_ADDR можно присвоить удобное для чтения имя. Файл /etc/bluetooth/hosts содержит информацию об известных хостах Bluetooth. В следующем примере показано, как получить имя, назначенное удалённому устройству.

Если вы выполните опрос на другом Bluetooth-устройстве, но ваш компьютер будет опознан как «your.host.name (ubt0)». Имя, назначаемое локальному устройству, может быть в любой момент изменено.

Система Bluetooth предоставляет услуги по соединениям типа точка-точка (при этом задействованы только два устройства Bluetooth) или точка-ко-многим-точкам. В последнем случае соединение используется совместно несколькими устройствам Bluetooth. В следующем примере показывается, как получить список активных для локального устройства соединений.

Идентификатор соединения ( connection handle ) полезен, когда необходимо прекратить соединение. Заметьте, что обычно нет нужды делать это вручную. Стек будет автоматически разрывать неактивные соединения.

Обратитесь к помощи посредством hccontrol help для получения полного списка доступных HCI-команд. Большинство команд HCI для выполнения не требуют прав администратора системы.

Протокол L2CAP (Logical Link Control and Adaptation Protocol) предоставляет услуги по работе с данными, как ориентированные на соединения, так и без ориентации на них, протоколам более высокого уровня с возможностями мультиплексирования и обеспечением операций по сегментации и обратной сборке. L2CAP позволяет протоколам более высокого уровня и приложениям передавать и получать пакеты данных L2CAP длиной до 64 Кбайт.

% btsockstat Active L2CAP sockets PCB Recv-Q Send-Q Local address/PSM Foreign address CID State c2afe900 0 0 00:02:72:00:d4:1a/3 00:07:e0:00:0b:ca 66 OPEN Active RFCOMM sessions L2PCB PCB Flag MTU Out-Q DLCs State c2afe900 c2b53380 1 127 0 Yes OPEN Active RFCOMM sockets PCB Recv-Q Send-Q Local address Foreign address Chan DLCI State c2e8bc80 0 250 00:02:72:00:d4:1a 00:07:e0:00:0b:ca 3 6 OPEN

Протокол RFCOMM эмулирует последовательные порты поверх протокола L2CAP. Он основан на ETSI-стандарте TS 07.10. RFCOMM представляет собой простой транспортный протокол, с дополнительными возможностями по эмуляции 9 цепей последовательных портов RS-232 (EIATIA-232-E). Протокол RFCOMM поддерживает одновременно до 60 соединений (каналов RFCOMM) между двумя устройствами Bluetooth.

В рамках RFCOMM полный коммуникационный маршрут включает два приложения, работающие на разных устройствах (конечные коммуникационные точки) с коммуникационным сегментом между ними. RFCOMM предназначен для сокрытия приложений, использующих последовательные порты устройств, в которых они расположены. Коммуникационный сегмент по сути является Bluetooth-связью от одного устройства к другому (прямое соединение).

RFCOMM имеет дело с соединением между устройствами в случае прямого соединения, или между устройством и модемом в сетевом случае. RFCOMM может поддерживать и другие конфигурации, такие, как модули, работающие через беспроводную технологию Bluetooth с одной стороны и предоставляющие проводное соединение с другой стороны.

Во FreeBSD протокол RFCOMM реализован на уровне сокетов Bluetooth.

hcsecd[16484]: Got Link_Key_Request event from ‘ubt0hci’, remote bdaddr 0:80:37:29:19:a4 hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name ‘Pav’s T39’, link key doesn’t exist hcsecd[16484]: Sending Link_Key_Negative_Reply to ‘ubt0hci’ for remote bdaddr 0:80:37:29:19:a4 hcsecd[16484]: Got PIN_Code_Request event from ‘ubt0hci’, remote bdaddr 0:80:37:29:19:a4 hcsecd[16484]: Found matching entry, remote bdaddr 0:80:37:29:19:a4, name ‘Pav’s T39’, PIN code exists hcsecd[16484]: Sending PIN_Code_Reply to ‘ubt0hci’ for remote bdaddr 0:80:37:29:19:a4

Протокол обнаружения сервисов SDP даёт возможность клиентским приложениям осуществлять поиск услуг, предоставляемых серверными приложениями, а также характеристик этих услуг. В перечень атрибутов сервиса включается тип класса предлагаемого сервиса и информация о механизме или протоколе, требуемом для использования сервиса.

SDP подразумевает коммуникации между SDP-сервером и SDP-клиентом. Сервер поддерживает список сервисов, в котором описываются параметры сервисов, связанных с сервером. Каждая запись об услуге содержит информацию об одном сервисе. Клиент может запросить информацию об опеределённом сервисе, обслуживаемом SDP-сервером, выдавая SDP-запрос. Если клиент или приложение, связанное с клиентом, решат воспользоваться сервисом, то для его использования необходимо открыть отдельное соединение к устройству, предоставляющему сервис. SDP предоставляет механизм обнаружения услуг и их параметров, но не даёт механизма использования этих сервисов.

Обычно SDP-клиент выполняет поиск услуг на основе некоторых желаемых характеристик услуг. Однако иногда возникает необходимость выяснить полный перечень типов услуг, предоставляемых SDP-сервером, не имея никакой информации об имеющихся сервисах. Такой процесс всех предлагаемых сервисов называется обзором (browsing).

. и так далее. Заметьте, что каждый сервис имеет перечень атрибутов (например, канал RFCOMM). В зависимости от сервиса вам может потребоваться где-то сохранить эти атрибуты. Некоторые реализации Bluetooth не поддерживают просмотр сервисов и могут возвращать пустой список. В этом случае возможен поиск конкретной услуги. В примере ниже показано, как выполнить поиск службы OBEX Object Push (OPUSH).

Перечень сервисов, зарегистрированных в локальном SDP-сервере, может быть получен посылкой SDP-запроса на просмотр «специального» адреса BD_ADDR.

# sdptool browse ff:ff:ff:00:00:00

сотовый телефон или модем используется вместе с компьютером в качестве беспроводного модема для подключения к серверу коммутируемого доступа в Интернет, или другой коммутируемой услуге;

сотовый телефон или модем используется компьютером для приёма входящих соединений.

доступ к ЛВС для одного Bluetooth-устройства;

доступ к ЛВС для нескольких Bluetooth-устройств;

связь между двумя ПК (при помощи протокола PPP поверх эмулируемого последовательного канала связи).

OBEX является широкоиспользуемым протоколом для простой передачи файлов между мобильными устройствами. В основном он используется в коммуникациях через инфракрасный порт для передачи файлов между ноутбуками или КПК компании Palm, а также для пересылки визитных карточек или календарных планов между сотовыми телефонами и другими устройствами с персональными информационными менеджерами.

Клиент OBEX используется для посылки или приёма объектов с сервера OBEX. Объектом, к примеру, может быть визитная карточка или указание. Клиент OBEX может получить номер RFCOMM-канала, указав вместо него имя сервиса. Поддерживаются следующие имена сервиса: IrMC, FTRN и OPUSH. Канал RFCOMM можно задать его номером. Ниже даётся пример сеанса OBEX, где с сотового телефона забирается объект с информацией об устройстве, а новый объект (визитная карточка) передаётся в каталог сотового телефона.

После подключения псевдотерминал можно использовать как последовательный порт.

Некоторые старые Bluetooth-устройства не поддерживают переключение ролей. По умолчанию, когда FreeBSD подтверждает новое соединение, она пытается выполнить переключение роли и стать ведущим устройством. Устройства, которые это не поддерживают, не смогут подключиться. Заметьте, что переключение ролей выполняется при установлении нового соединения, поэтому невозможно выяснить, поддерживает ли удалённое устройство переключение ролей. На локальной машине имеется возможность отключить переключение ролей при помощи HCI-параметра.

Источник

Журнал отслеживания Bluetooth HCI не создан

Я использую Android 4.4.2 и включил «Журнал отслеживания Bluetooth HCI», как описано здесь Анализ / запись собственного трафика Bluetooth Android

После включения и выключения блютуза перезагрузил телефон. Я не смог найти файл журнала в ожидаемом месте:

Как я могу попасть в журнал btsnoop_hci.log?

10 ответов

ПРИМЕЧАНИЕ. Этот ответ не является правильным. Пожалуйста, прокрутите до ответа с наибольшим количеством голосов, чтобы получить правильный ответ

По моему опыту, функция отслеживания Bluetooth HCI требует, чтобы ваше устройство было рутировано. На моем Samsung Galaxy S GT-I9000 с root-доступом он работает нормально, в то время как на моем Galaxy S3 Neo без рута эта функция не работает.

Более того, вы должны убедиться, что вы случайно не удалили файл. Каждый раз, когда я удаляю файл, мне приходится повторно включать функцию отслеживания Bluetooth, чтобы система воссоздала файл журнала.

Вот что решило это для меня:

1) adb shell cat /etc/bluetooth/bt_stack.conf

Чтобы узнать имя файла журнала, для меня это:

Сложность заключается в том, что файлы создаются с отметкой времени в их именах, поэтому вы не сможете получить их (это), просто используя

На телефоне OnePlus 6 (A6003, Android 9) (и я полагаю, что на других телефонах OnePlus) местоположение:

Для пользовательской версии Pixel / Nexus у вас может не быть разрешения на извлечение /data/misc/bluetooth/logs/btsnoop_hci.log. Вы можете получить журнал hci следующим образом:

Вы получите BUG_REPORT.txt и zip-файл. Журнал HCI находится в папке FS \ data \ misc \ bluetooth \ logs zip-файла.

На Nexus 5X и Pixel C Android O необходимо включить Bluetooth, включить отслеживание HCI в настройках разработчика, отключить и повторно включить Bluetooth и перезагрузиться.

После этого вы можете получить журнал, зайдя в настройки разработчика и «взять отчет об ошибке» и получить полный журнал.

Файл bt_stack.conf не изменяется и на / sdcard нет нового файла, как на других устройствах

ОБНОВЛЕНИЕ: журнал btsnoop hci, похоже, постепенно выводится из доступных для пользователя областей на многих телефонах. Предполагая, что у вас включено ведение журнала hci, вы можете получить отчет об ошибке

Затем распакуйте папку. Если вам повезло, есть папка ‘FS’, которая содержит журнал btsnoop_hci.log на несколько уровней ниже (не знаю, почему на некоторых телефонах он есть, а на некоторых нет). Если у вас его нет, возьмите текст отчета об ошибке файл, который выглядит так

Вы можете увидеть, где ваш телефон хранит журнал hci, прочитав файл bt_stack.conf. Пытаться

Вы увидите строку, которая выглядит как

Обычно, но не всегда (зависит от телефона) в корне sdcard. В этом файле конфигурации также есть строка, которая может отражать, действительно ли ведение журнала hci включено или нет.

Переключение параметра «Включить журнал отслеживания Bluetooth HCI» в параметрах разработчика должно изменить его на

Я говорю «следует», потому что на некоторых телефонах этот файл не обновляется. Вам следует:

Если ни один из 3 вариантов не работает, вам не повезло. Ведение журнала BT Snoop hci немного несовместимо на разных телефонах. Я видел несколько телефонов, на которых я просто не мог заставить его работать, несмотря ни на что, но в большинстве случаев вы должны иметь возможность его запустить. Телефон с рутированным доступом не является обязательным.

Однако позже я заметил, что в Android я получил УВЕДОМЛЕНИЕ, чтобы «ПОДЕЛИТЬСЯ СВОИМ ОТЧЕТОМ ОБ ОШИБКЕ», и когда я выбрал уведомление, у меня были варианты отправки по электронной почте / сохранения на G Drive и т. Д. Отправил мне txt и zip по электронной почте, и все, пропустив adb и прочую чушь.

@TwinPrimesAreEz превосходен, но есть четвертый вариант; по крайней мере, когда ваше устройство рутировано. Вызов:

Источник

[Вопросы] Можно ли удалять btsnoop_hci.log?

Доброго времени суток. Через глубокую чистку обнаружил файл btsnoop_hci.log, весит 2,56 Гб. Можно ли его удалить и не скажется ли его удаление на работе устройства или каких-либо приложений? журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

IMG_20180627_105044.jpg (30.1 KB, Downloads: 0)

2018-06-27 14:51:27 Upload

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

удаляй. это файл отчёта, или лог. на работу приложений он никак не влияет

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

513-Vkluchit Log file.jpg (64.23 KB, Downloads: 0)

2018-06-29 07:53:50 Upload

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

Как его отключить? Не могу найти этот раздел для разработчиков.

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

Раздел для разработчиков, (если он включён), находится здесь: [Настройки] = [Расширенные настройки] = [Для разработчиков]

..В целом можете не волноваться, у даление файлов при г лубокой очистке, никак не может повлиять на работу устройства или каких-либо приложений. Важно только следить, что бы Ваши, (необходимые Вам файлы), не попали под общую гребёнку.

журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это
———————————————————————
журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это
———————————————————————
журнал блютуз hci что это. Смотреть фото журнал блютуз hci что это. Смотреть картинку журнал блютуз hci что это. Картинка про журнал блютуз hci что это. Фото журнал блютуз hci что это

Источник

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 и перезагрузить компьютер.

после этого вы можете получить журнал в настройках разработчика и «принять отчет об ошибке» и получить полный отчет.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *