首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >蓝牙未使用HCI进行写入扫描

蓝牙未使用HCI进行写入扫描
EN

Stack Overflow用户
提问于 2013-01-29 07:22:45
回答 1查看 3.1K关注 0票数 1

我正在尝试在现有的嵌入式设备上实现蓝牙。我使用的控制器是LS Research TiWi-uB2,它使用的是Ti CC2564双模集成电路。主机为LPC2378单片机。该设备需要能够被其他设备(Android设备&目前的PC)发现。没有现成的BT堆栈来满足我的需要(成本,静态内存分配,内存大小),所以我编写了自己的堆栈。

通过该规范的第二卷E部分,我最终在HCI上获得了有意义的通信,但设备似乎从未被其他任何东西“发现”过。此时,我只使用BR/EDR特性,而不使用LE特性。

以下是HCI接口的调试转储(包括UART数据包类型):

代码语言:javascript
复制
BT_Reset
Tx: 0x01 0x03 0x0C 0x00
Rx: 0x04 0x0E 0x04 0x01 0x03 0x0C 0x00
Device info
Tx: 0x01 0x01 0x10 0x00
Rx: 0x04 0x0E 0x0C 0x01 0x01 0x10 0x00 0x06 0x00 0x00 0x06 0x0D 0x00 0x0F 0x1B
Local supported commands
Tx: 0x01 0x02 0x10 0x00
Rx: 0x04 0x0E 0x44 0x01 0x02 0x10 0x00 0xFF 0xFF 0xFF 0x03 0xCE 0xFF 0xFF 0xFF 0xFF
Local supported features
Tx: 0x01 0x03 0x10 0x00
Rx: 0x04 0x0E 0x0C 0x01 0x03 0x10 0x00 0xFF 0xFE 0x2D 0xFE 0xDB 0xFF 0x7B 0x87
Get device address
Tx: 0x01 0x09 0x10 0x00
Rx: 0x04 0x0E 0x0A 0x01 0x09 0x10 0x00 0x81 0xA6 0xD3 0x2F 0x18 0x00
Address: 00 18 2F D3 A6 81
Read buffer size
Tx: 0x01 0x05 0x10 0x00
Rx: 0x04 0x0E 0x0B 0x01 0x05 0x10 0x00 0xFD 0x03 0xB4 0x04 0x00 0x04 0x00
ACL len = 1021
Write buffer size
Tx: 0x01 0x33 0x0C 0x07 0xFC 0x00 0x00 0x00 0x00 0x00 0x00
Rx: 0x04 0x0E 0x04 0x01 0x33 0x0C 0x00
Write local name
Tx: 0x01 0x13 0x0C 0x08 0x42 0x54 0x5F 0x54 0x65 0x73 0x74 0x00
Rx: 0x04 0x0E 0x04 0x01 0x13 0x0C 0x00
Read class of device
Tx: 0x01 0x23 0x0C 0x00
Rx: 0x04 0x0E 0x07 0x01 0x23 0x0C 0x00 0x14 0x01 0x08
Write class of device
Tx: 0x01 0x24 0x0C 0x03 0x14 0x01 0x08
Rx: 0x04 0x0E 0x04 0x01 0x24 0x0C 0x00
Write scan enabled
Tx: 0x01 0x1A 0x0C 0x01 0x03
Rx: 0x04 0x0E 0x04 0x01 0x1A 0x0C 0x00
Finished

我也可以做链接查询:

代码语言:javascript
复制
Tx: 0x01 0x01 0x04 0x05 0x33 0x8B 0x9E 0x0A 0x0A
Rx: 0x04 0x0F 0x04 0x00 0x01 0x01 0x04
…
Rx: 0x04 0x01 0x01 0x00

但它找不到任何设备。

我确信我遗漏了一些相当明显的东西,但看不到它可能是什么。我看不出CC2564需要特殊处理才能在BR/EDR模式下运行,而且所有的默认设置似乎都是合理的。

更新

该模块需要一个初始化脚本(也称为“service pack”)。请参阅“初始化脚本”下的https://code.google.com/p/btstack/wiki/MSP430GettingStarted。好消息是,有了脚本,模块就可以被发现了。坏消息是,根据LS Research,我自己的堆栈不会有蓝牙SIG问题--我将不得不使用Bluetopia堆栈。看起来一切都与使用Ti处理器密切相关。

在这一点上,我必须等待,直到具有更高级别接口的BR/EDR/BLE模块上线。

EN

回答 1

Stack Overflow用户

发布于 2013-04-03 21:27:50

仅当您使用公共配置文件(例如SPP)时,或者当您以可连接的方式向公共设备公开您的设备时(如耳机或键盘),才需要符合蓝牙标准。简而言之,只有当你在全球市场上销售你的设备作为“蓝牙”设备(所以你可以使用标志)...at至少在我的理解…

service pack不包含堆栈的任何部分,因此完全免版税。

根据以下文档,在加载service pack之前,不允许执行蓝牙特定操作(甚至发现):cc256x guide

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14573110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档