首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BLE :主机栈- HCI -控制器

BLE :主机栈- HCI -控制器
EN

Stack Overflow用户
提问于 2018-02-01 12:40:07
回答 1查看 788关注 0票数 0

我对BLE/蓝牙编程很陌生。众所周知,BLE/蓝牙是一个完整的module.Recently --我发现,NimBLE提供蓝牙.https://github.com/apache/mynewt-core的主机堆栈或控制器部分。这里他们提到,它支持任何主机堆栈与任何控制器的混合和匹配。

  1. 那么,是HCI层(主机堆栈通过它们进行交互)和Controller (较低的蓝牙层)实现了所有模块的相同,还是特定于供应商?
  2. 如果我从NimBLE中选择主机堆栈,那么HCI的实现是否允许我与任何供应商的控制器一起操作,或者是HCI层应该使用供应商规范来实现,并且依赖于控制器。

我假设蓝牙/BLE模块的控制器部分有基本的RF和通信部分,所有模块的互操作性都是相同的。如果这个问题是微不足道的,我很抱歉。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-01 22:58:02

任何具有hci接口的主机堆栈都应该与任何hci控制器一起工作,只要它们都支持相同的传输方法(UART、USB等)。

有时,特别是对于usb,您还需要一个特定的主机驱动程序来打开特定设备的传输接口。对于UART,一些供应商需要通过配置波特率等的UART发送一些特定于供应商的设置数据包,然后hci才能启动。

此外,主机和控制器应该有一个共同的特征集。例如,对于只支持蓝牙经典的主机和只支持BLE的控制器,您不能做太多事情。

一些hci控制器实现自定义供应商命令,以提供比标准命令更多的功能,例如设置自定义公共蓝牙设备地址。为了利用这些命令,主机还必须支持这些命令。

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

https://stackoverflow.com/questions/48563020

复制
相关文章

相似问题

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