CC2540模块用SimpleBLECentral与iOS做Peripheral的问题
我用iOS的LightBlue建了个Peripheral,UUID 0xFFF0 但CC2540模块用SimpleBLECentral 连不上,请问这个是什么原因?
CC2540模块与模块之间可以正常连接。
或者iOS有什么demo例子是可以正常连接的?
wa,
那是因为SimpleBLECentral 只能和 SimpleBLEPeripheral 连接,因为做了查找的时候广播的服务UUID过滤。
你可以在SimpleBLECentral.c 中simpleBLECentralEventCB() 函数,case GAP_DEVICE_INFO_EVENT: 中 看到。
请问 CC2540模块用了SimpleBLECentral模式,只能用回模块的SimpleBLEPeripheral 连接吗?
SimpleBLECentral连接iOS可以的吗?如果可以连接可以说一下详情步骤怎样弄吗?SimpleBLECentral代码或iOS上要怎样修改和设置参数?
学习!
Yan,
版主可以回答一下我上面问的问题吗?
在线等,急。请问还有其它人可以回答一下吗?
Yan,
已经把DEFAULT_DEV_DISC_BY_SVC_UUID设成FALSE了,还是不行。
现在是0xfff0是Simple Profile Service UUID,0xfff6\0xfff7是数据通信使用的UUID
一打开那时是可以连上,iOS蓝牙图片是亮的。但几秒后就断了。但iOS没收到任何有连接的回调。
请问要怎样解决?
wa,
DEFAULT_ENABLE_UPDATE_REQUEST 是TRUE吗? 改成FALSE吧。
iOS对连接参数更新有范围的要求。估计默认的范围或者你设置的范围不满足,才会这样。
Yan,
已经改成了FALSE了。
那现在应该怎样设?有DEMO吗?
wa,
先不用设置,再重复你的步骤看看会不会断啊
Yan,
CC2540设置成#define DEFAULT_DEV_DISC_BY_SVC_UUID FALSE了。
但都是不行。CC2540按了要连接按键,灯长闪。在iOS写了个简单的Peripheral,刚打开时可以连上(灯不闪),但iOS那边无任何连接到蓝牙的回调信息。
我用LightBlue测试在iOS写了个简单的Peripheral是有回调信息。
但与CC2540就完全没任何反应。
这个要怎样解?
wa,
我说的是 DEFAULT_ENABLE_UPDATE_REQUEST 。
Yan,
DEFAULT_ENABLE_UPDATE_REQUEST 是FALSE的,但都是不行。
wa,
那么你应该用packet sniffer 抓包看一下,看看空中数据正常不正常。
Yan,
是不是我这边的 SimpleBLECentral和iOS里的写法有问题?有没有这两个对应的各自DEMO例子?
wa,
你只能看一下空中的交互是否正常,或者异常断开的原因是什么。
DEMO的例子,SimpleBLECentral 和 SimpleBLEPeripheral啊,iOS的话就有sensortag 的。
Yan,
packet sniffer要设参数的吗?这个用默认抓,好像没什么。还有iOS的sensortag只是 Central,没 Peripheral的吧?sensortag测试不到SimpleBLECentral。
还未解决,没人知道吗?
wa,
我并不熟悉iOS 的具体编程。
断开连接或者不正常现象的通信的抓包部分有吗?
Yan,
有的,这个是Packet Sniffer抓包保存的数据,麻烦以你专业的方角看一下为啥这样。连接会断开都有包的。
Yan,
请问这是什么原因做成的呀?