Мы тестируем Bluetooth в WEC2013 с помощью USB-ключа от универсального поставщика на платформе iMx6. Мы используем стандартный транспортный уровень HCI, снабженный WEC2013 BSP.Проблема в соединении Bluetooth
BT включен и способен сканировать все соседние устройства.
Мы включили следующие переменные sysgen и запись в реестре.
Sysgen Переменные: въездные
SYSGEN_BTH (Bluetooth stack with universal loadable driver)
SYSGEN_BTH_BTHUTIL (Bluetooth Profile Management APIs)
SYSGEN_BTH_HID_KEYBOARD (Bluetooth HID - Keyboard)
SYSGEN_BTH_HID_MOUSE (Bluetooth HID - Mouse)
SYSGEN_BTH_AG (Bluetooth HS/HF and Audio gateway service)
SYSGEN_BTH_SETTINGS (Bluetooth settings UI)
SYSGEN_OBEX_CLIENT (Obex client)
SYSGEN_OBEX_SERVER (Obex server)
SYSGEN_OBEX_FILEBROWSER (OBEX file browser)
SYSGEN_OBEX_INBOX (OBEX Inbox)
SYSGEN_FTPD (FTP server)
SYSGEN_BTH_BTHSSVC(Support Secure Simple Pairing)
реестра:
[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\Default\224_1_1\Default\Bluetooth_USB_Driver]
"DLL"="bthusb.dll"
[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\Default\Default\224_1_1\Bluetooth_USB_Driver]
"DLL"="bthusb.dll"
[HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth\Transports\PnP\{B3DD867A-1E6E-4215-8AA7-EAC1DFC46548}]
"flags"=dword:80000000
"driver"="bthusb.dll"
"resetdelay"=dword:0
"PacketSize"=dword:200
"BlockSize"=dword:5
[HKEY_LOCAL_MACHINE\ControlPanel\Bluetooth]
"PinAttemptInterval"=dword:200000
"PinEntries"=multi_sz:"0000","8888"
Мы наблюдали различные сценарии в паре с устройством.
Подключение мобильного телефона от платы (imx6 + USB Dongle работает с WEC2013) Здесь спаривание успех, когда пара инициируется через bthsettings UI. Он будет запускать 6-значный автоматический ключ доступа с обеих сторон.
Подключение с мобильного устройства к плате без открытия интерфейса пользователя bthsettings. Здесь соединение происходит успешно. Когда пользовательский интерфейс не открыт (BT включен в фоновом режиме), соединение инициируется с мобильного устройства, оба будут спарены с использованием автоматизированного метода доступа к ключам . Но это будет внутренне вызывать пользовательский интерфейс bthsettings, поэтому в следующий раз, когда мы дадим спаривание с мобильного, мобильная сторона попросит ввести ключ . Как только ключ вводится на мобильном телефоне, а пара нажата, на мобильном терминале будет наблюдаться спаренное уведомление. В этом случае спаривание не удалось.
Подключение с мобильного устройства к плате при открытии bthsettings. Здесь спаривание не удалось. Когда пара инициируется с мобильного устройства, будет активирован пользовательский интерфейс ввода ключа вручную, и когда ключ вставлен и пара будет нажата, на мобильном терминале будет отображаться , связанное с отклоненным уведомлением, а спаривание не удалось.
В этой неудачной senarios, верхний слой реагирует с «запросом Pin-кода командой отрицательного ответа» для «запроса пин-кода события» от чипа.
Нам нужен ввод данных для этого процесса сопряжения. Почему эти автоматические ключевые и ручные методы генерации ключей вызывается на основе открытого или открытого интерфейса пользователя? И почему ручной случай ключа не работает?
Не хватает ли каких-либо элементов реестра или стека?
Спасибо за ответ @Braghadees! – GNKeshava
Теперь MS говорит о своей ошибке, которую они сделали, также они предоставили вышеописанное как исправление через обновление Apr-2015 «FIX: соединение Bluetooth не удается с мобильного устройства на устройство Windows Embedded Compact 2013» [https://support.microsoft. com/en-us/kb/3061987] – Braghadees
Да. Мы сообщали об этой проблеме в Microsoft параллельно. – GNKeshava