打印
[嵌入式linux]

蓝牙模块搞到一半发现坑爹了

[复制链接]
1923|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 13400013591 于 2019-11-20 23:25 编辑

最近在搞蓝牙,有点失去方向,想和大家交流一下,说说我的经历,也问问大家问题:
首先我的目标是:利用米尔IMX6UL平台+linux+蓝牙模块,搭建起一个blueZ协议栈的蓝牙终端,支持类似HFP ,AVP,OPP等高层协议。

首先我真的是两眼一抹黑,拿了HC-05模块来开发
这个模块很简单,大家有开发的问题都可以问我;
TTL电平工作,IMX6UL是232的串口这里要个转换,然后从IMX6这测看,就是一个串口,open write read即可,没啥
测试端手机用的蓝牙串口。
坑爹的地方很快发现了,这个模块是CSR BC417,内置单片机,上面写死了SPP协议,SPP->RFCOM->L2CAP-HCI-物理层,这么多层的协议,HC公司都写好了;
我没办法直接操作芯片,我给串口的所有数据,都被MCU拿走了,然后转一手给的蓝牙


我想要实现高层协议,那必须是直接操作芯片;
也就是,例如我发HCI数据,那么直接送给芯片,这类模块没办法实现我的功能,或者说,要实现,我自己要重写模块中的MCU的代码。

写到这里,想问问搞过的大神。
1、CSR芯片里面的MCU的代码,是HC公司写的还是CSR芯片厂提供的?
2、我上面的理解,没错吧?嘿嘿,上述都是自己分析的结果,不够自信,怕有误解。3、我想要直接操作芯片,从最底层也就是HCI层开发蓝牙,应该使用何种蓝牙模块?蓝牙dongle?其芯片是什么类型的?有没有什么可以推荐的?
4、有没有办法把CSR里面的单片机,想要二次开发可以吗?开发环境是?

-----------------------------------------------------------------------------------------------------------------------------------
HC-05这个模块,我不太懂这个模块在实际工程中会有什么用吗?感觉是一个学习级别,工具级别的东西啊?
说说我的感觉:
1、只有SPP功能,感觉功能太少。
2、HC-05现在是蓝牙芯片+MCU的SOC,那么如果用纯蓝牙芯片,那价格肯定可以低,然后再STM32/IMX6UL一类的主控,SPP协议在这两个平台上实现并非难事,开源的协议栈很多比如blueZ,
如果做工程的话,考虑到成本,那势必没必要用HC-05作为蓝牙接口,直接用某个蓝牙芯片即可(我还不知道用什么型号,大佬有推荐的吗?)
3、工具级别的话,用于拔插频繁的测试工具,或者是烧写工具,倒是蛮方便的。
-----------------------------------------------------------------------------------------------------------------------------------


使用特权

评论回复

相关帖子

沙发
ayb_ice| | 2019-11-21 09:51 | 只看该作者
有能力可以直接自己写,替换原模块程序

使用特权

评论回复
板凳
13400013591|  楼主 | 2019-11-21 09:57 | 只看该作者
ayb_ice 发表于 2019-11-21 09:51
有能力可以直接自己写,替换原模块程序

没能力自己写,但是移植成熟的协议栈没问题。
只是觉得这样:
一是破坏了代码解构,到时候需要主控和模块两套代码。
二是模块烧写又需要一套CSR的烧写工具,然后再学习CSR板载程序的开发,学习可以,做项目得不偿失。

今天早上试了一下,用一个蓝牙dongle即可,可以直接用HCITOOL操作,发送HCI指令,这种模块就可以用BLUEZ协议栈了,只是不知道dongle芯片类型,还在找文档,,,,

使用特权

评论回复
地板
ayb_ice| | 2019-11-21 10:03 | 只看该作者
13400013591 发表于 2019-11-21 09:57
没能力自己写,但是移植成熟的协议栈没问题。
只是觉得这样:
一是破坏了代码解构,到时候需要主控和模块 ...

模块都是这种的,傻瓜式的,透传,不需要了解协议

使用特权

评论回复
5
13400013591|  楼主 | 2019-11-21 10:37 | 只看该作者
ayb_ice 发表于 2019-11-21 10:03
模块都是这种的,傻瓜式的,透传,不需要了解协议

不是吧,,,,,
我手里刚拿到一块,就不是透传的蓝牙模块,胜为UDC-324D。

蓝牙模块透传功能是基于蓝牙协议的SPP协议,这种透传模块只能做串口用。
想要支持HFP AVP几乎不可能;
最简单一个例子,透传模块,HC-05,一对一。
如果利用blueZ,在RFCOM上建立多个SPP连接,可以一对多。
而且我这个项目目的就是要搞透蓝牙协议栈,,,从而定制化蓝牙功能

使用特权

评论回复
6
路驹| | 2019-11-21 15:19 | 只看该作者
看看

使用特权

评论回复
7
大熊智能科技| | 2020-6-30 12:38 | 只看该作者
楼主可以试试深圳市大熊科技有限公司高性价比 5.0蓝牙模块LM76

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

56

帖子

1

粉丝