OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6436|回复: 11

对于蓝牙 zigbee RF4CE 超集群 CC2650的学习

[复制链接]

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
发表于 2016-3-16 16:40:29 | 显示全部楼层 |阅读模式
开发遇到问题,解决问题要查找那么多英文资料头疼。这个帖子开一下,也许我会继续更新。http://www.ti.com.cn/tool/cn/cc2650dk
1 (1).png
1 (2).png
1 (3).png
QQ截图20160316163933.png
QQ截图20160316164008.png
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-3-16 16:40:53 | 显示全部楼层
本帖最后由 cornrn 于 2016-3-16 16:49 编辑

有一起学习的吗

swcu117d.pdf

7.61 MB, 下载次数: 88

swrt020.pdf

2.26 MB, 下载次数: 74

swrt021.pdf

1.81 MB, 下载次数: 86

swrt022.pdf

1.45 MB, 下载次数: 66

swru402.pdf

741.35 KB, 下载次数: 302

swry014a.pdf

776.91 KB, 下载次数: 54

回复 支持 反对

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-4-18 17:06:40 | 显示全部楼层
[mw_shl_code=cpp,false]1、什么是蓝牙4.0,蓝牙4.0较之前版本蓝牙的区别。
蓝牙4.0 共3种工作模式,普通蓝牙模式,高速蓝牙模式和低速蓝牙模式,而以前的版本只支持普通蓝牙模式,其他模式不和普通蓝牙模式兼容;
2、蓝牙4.0 是BLE么?
蓝牙4.0包含BLE, BLE是蓝牙4.0中的单模模式。

3、低功耗蓝牙和普通蓝牙有什么区别?
最主要的区别是数据包有限制,因此功耗也更低。

4、目前是否所有手机都能支持低功耗蓝牙?
不是,需要支持蓝牙4.0技术的手机,如苹果、三星、HTC等。

5、低功耗蓝牙4.0是否能够向下兼容之前版本的蓝牙,为什么?
低功耗蓝牙不向下兼容,低功耗由于需要降低功耗,使用的通讯机制已经和普通蓝牙不同,所以无法通讯。

6、BLE蓝牙速率多少?
物理层速率1M,实际转发速率是每次连接事件传20字节。

7、低功耗蓝牙模块的传输距离有多远?
在0dB的情况下,标称100英尺,约60米。

8、BLE模块的传输速率是多大?能传的数据量有多大?
转发速率最快4K/S,可稳定工作在2.8K/S。能传的数据量有多大,取决于你传多久。

9、BLE模块的抗干扰能力怎么样?穿墙能力如何?
使用调频通讯方式,37个通讯频点,3个广播频点。可有效避免一些频点干扰。不建议穿墙使用,如果是空心木质墙体可以试试。

10、BLE模块是否为双工模块?
是的,全双工。

11、BLE模块默认连接间隔是多少?可以调节吗?
V1.X是100ms,V2.0是20ms,V2.0可以调。

12、BEL模块串口数据包的大小可以是多少?
200字节以内,包含200字节。

13、BLE模块的工作电流怎么计算的?标准的纽扣电池能用多久?
持续的工作电流对时间积分,再求平均值。一秒一次连接,不计其它功耗,一年以上。

14.产品使用通过的BQB认证模块,还需要过其他蓝牙认证吗?
只是要过产品的其他认证,比如FCC,CE,蓝牙部分无需再过认证。

15、过BQB认证的模块加屏蔽罩与否对模块性能有什么影响,稳定性的一致性该如何解释?
加屏蔽可以屏蔽外部信号对模块自身电路的干扰,也可以防止模块自身回路对射频的干扰。

16、BLE模块能应用于耳机么?
不可以,无法支持音频等大数据流应用。

17、BLE模块能应用于鼠标或者键盘么?
可以。

18、普通BLE模块和BLE透传模块有什么区别?
普通的纯硬件模块,里面的软件赋予了模块透传功能,那么这个模块就是透传模块了。

19、BLE支持路由功能么?
不支持。

20、蓝牙透传支持空中升级么?BLE协议支持空中升级么?
不支持。

21、TI 的USB dongle支持链接几个模块?
三个。

22、 BLE模块支持链接几个手机?
模块作为从设备,只能被一个主设备连。一个手机可以连接多个模块。

23. BLE模块支持2.4G非蓝牙协议模式么?
2541可以。

24、发射和接受数据时候的峰值功耗有多大?如何降低峰值功耗?
2540 在-6dBm 发送数据峰值为24mA; 2541在0dBm发射数据峰值18.2mA,降低发射功率可以降低峰值功耗。

25、怎么计算模块总功耗?
在地线上串入标准电阻,如10欧姆,使用示波器对电阻两端的压降进行采样,在单位时间内,电压波形/10欧姆对时间的积分便是平均电流。

26、产品需要模块主动连接,能实现吗?
透传模块是从设备,只能被动连接。

27. 在BLE透传模块中,能修改PWM频率么?
在V2.1中支持。

28. 在BLE模块应用中,如果CPU引脚不够怎么办?
最少两根rx和tx。但无法进入睡眠。

29. 可以直接使用BLE模块直驱外接一个2.0蓝牙前端么?
可以尝试,但速率提高不了。

30. 如果需要发送的数据量比较大,该怎么解决?
自行分包,每包200bytes。

31、给蓝牙模块供电,电压有哪些要求,如纹波,去耦电容等要求?
需要稳定的3-3.3V直流电源,最低不能低于2.6V,模块本身有滤波电容,模块外部可以直接供电,必须保证能够支持最高50mA的瞬间电流。

32、纯硬件模块是否需要写底层驱动?
蓝牙协议底层驱动是密封的,无法修改。

33、蓝牙4.0透传模块是否能自效验?
串口数据不带检验;蓝牙本身数据自带校验。

34、TI 的 BLE协议栈  可否修改TX的信号强度?
可修改,有专门的HCI命令来设定发射功率,HCI_EXT_SetTxPowerCmd具体详情,请查看蓝牙协议栈文档,或者在协议代码中全局搜索Prower。

35、怎么判断自己的手机是支持BLE的呢?我在手机系统设置什么的里面没有找到蓝牙版本,上网查说是蓝牙4.0的,但是编程代码又显示不支持。
具体情况请查找对应手机资料,或者咨询客服;编程代码又显示不支持,那凶多吉少,因为代码会调用一个检测函数,如果不支持会返回错误信息。

36、透传模块和直驱模块的区别是什么?各自的优势在哪里?分别适合做哪些项目的开发?
区别是一个是转发数据,一个是可以直接控制外围电路;
目前直驱模块也包含了透传功能,以后可能取消,让透传和直驱功能彻底分开;
透传模块适合做连接产品和移动设备的桥梁,让电子产品和移动设备双向通讯;
直驱模块是提供给客户的CPU,客户只需通过手机编程就能控制模块的所有资源,用来驱动外围电路,无需再用额外的CPU。

37、如果模块是采集端,手机是周期性采集,模块的Flash 数据量的容量限制是多少?是否可以设置模块采集的频率和次数。
采集频率可以设定,但次数设置,保存采集数据到本地目前版本不支持。

38、蓝牙透传模块是否带firmware固件?
透传模块带固件,纯硬件模块不带。

39、之前我们是用蓝牙3.0,现在想升为蓝牙4.0,需要MFI密码吗?
MFI意思是Made For Iphone,和蓝牙的升级没有任何关系。使用信驰达的透传模块再不需要MFI认证。
因为TI的芯片cc254x已经过了这个认证。

40、蓝牙4.0模块主要应用在什么产品和场合?
蓝牙4.0模块模块是实现手机遥控的解决方案,是产品连接互联网的桥梁,有此需求的应用皆可考虑。

模块做为智能手机外设的桥梁,使得主机端应用开发异常简单。在桥接模式下(串口),
用户的现有产品或者方案配合此透传模块,能十分方便地和移动设备(需支持蓝牙4.0)相互通
讯,实现超强的智能化控制和管理。而在直驱模式下,用户直接使用模块扩展简单外围,就
能快速设计出方案甚至产品,以最低成本最高效地推出特有的个性化移动设备新外设。[/mw_shl_code]
[mw_shl_code=cpp,true]二、蓝牙4.0模块测试及使用常见问题:

1、BLE透传能一直拉低BRTS么?
可以。但模块不会进入睡眠,一直在等待你的串口数据。

2、模块收到数据完成后还会收到一段乱码?
估计字串没带结束符。

3、模块上电的时候不断的重读收到一段相同的字符串?
反复复位。在模块和CPU的信号线之间串入电阻隔离,防止电平差异引起的大电流会导致反复复位。

4、如果设备被别人劫持了怎么办?
如果设备防劫持密码泄漏,或者没开启使用,只能重启设备或者求他断开再用。

5、如果单片机不支持115200,如何让它连接到透传模块?
v1.5以上支持自定义波特率。

6、手机连接BLE模块后,一下子就断开,时好时坏,为什么?
无线干扰严重或者硬件不良。

7、关于蓝牙模块,客户如何能快速的测试模块的好坏?
可以使用test引脚来完成快速测试,需要链接VDD,GND,Test;上电后会直接广播,利用手机可以直接链接后测试;见透传模块说明文档中的测试模式。

8、关于CC2540透传模块修改防劫持密码除了采用APP修改还有什么方法?
v2.0中利用TEST脚,对模块进行重置密码为000000,意思是不使用;
v2.1中可以在上电后十秒内下拉IO0到地,保持三秒,可以恢复出厂设置,恢复密码000000,不使用。

9、CC2540透传模块的防劫持密码忘记了的话,有什么方法能够恢复连接?
同上。

10、请问UUID就是task ID吗?可不可以订制服务特性的UUID?
两码事,BLE中的UUID是蓝牙联盟规定通用唯一识别码,而TASK ID是任务识别码是OASL编程中的一种任务编号。可以订制服务特性的UUID。

11、蓝牙4.0模块可不可以实现模块与模块的通信,现在有这样的功能吗?
模块可以实现模块对模块通讯,目前已有对应的TI例程;透传后续才会支持这种功能;主透传正在开发中。

12、HCI传输数据用哪个函数呀?
GATT层有读写函数可以使用。

13. 用CC2540芯片一上电后 ,为什么外部晶体不起振,并且连不上仿真器?
请烧写程序后再次进行测试;
请检测晶振是否正常;
请检测芯片是否焊接正常,必须使用风枪,底部需要上锡;
请检查仿真器连接线是否正常。

15、用什么函数可以控制蓝牙发送功率?并且蓝牙怎么检测其距离远?
具体可以利用studio7测试;
具体功率设置可以使用HCI_EXT_SetTxPowerCmd( HCI_EXT_TX_POWER_MINUS_6_DBM )。

16、APP测试透传功能时,如何防止连接中断?
防止供电不足导致复位,距离不宜太远,防止遮挡

17.手动断开手机蓝牙,P0.6口提示断开有延迟(几十秒),但是P0.7已经指示发广播,为什么?
应该是非正常断开,等待超时后才提示真正断开。

18.连接上蓝牙,P0.6口提示连接成功,但是P0.7还在提示发广播,为什么?
那时候就不是广播了,是连接事件信号。

19.当模块有多次事件发生或者使能通知或者传输数据的时候,会不会有堵塞的现象,有没有优先处理机制。
不会阻塞,但后发数据会失败,之前送出去的数据不会受影响。

20、模块上使用板载天线和使用陶瓷天线,这二者性能有什么不同?传输距离有多远?传墙性能如何?
总体来说,PCB天线和陶瓷天线都是采用四分之一波长微带线做成的。只不过陶瓷天线采用的是高介电常数的陶瓷材料,从实际效果看要优于陶瓷天线,从性能和成本上来说,PCB天线也优于陶瓷天线,但是从体积上来说,陶瓷天线是优于PCB天线的。2.4G穿墙性能很差,因为它的波长很短。

21.模块在硬件设计什么注意的事项,对电源和天线 Layout有什么要求?
合理的布板,注意射频板级电容分布,电源滤波要处理好,大面积接地,输出进行50欧走线。

22、测试蓝牙模块时为什么总是容易出现乱码字符?
数据不满20字节,将会将缓存中的数据一起发送出来,需要加入长度或者加入结束符 0x00;

23、当透传模块进入睡眠时,要怎样才能唤醒?是否必须用手机端进行连接?
透传模块需要下拉EN使能,才能唤醒模块;取消使能时,将和手机断开;

24、模块应用在客户的产品中关于天线部分的设计要求?
天线的附近不能有金属,并且电路板上需要设置禁止覆铜区;外壳不能有金属,至少在天线部位不能有金属。

25、蓝牙4.0模块对于定位功能的实现原理,以及定位的精度。
定位目前只能做到RSSi信号强度定位,在近距离和远距离,信号强度变化幅度会不一样,并且环境不同定位精度也会不同;目前能做到定位只能定位到一定的区间,例如在5米左右,也就只0-10米内;

26、 CC2530模块进行组网,最多支持多少个子机。提供组网建议。
组网合理的情况下,节点个数可以做到100个左右;

27、手机控制LED灯的方案输出功率是否有限制 可以做大功率吗?
可以,这个和方案无关,方案只给出点亮还是不点亮,点多亮的控制方法,功率大小取决于驱动电路的能力

28、可不可以用usb dongle做receiver端,测试丢包率?
可以烧写sinffer或者使用studio7 可以测试掉包率;建议使用studio7;

29、蓝牙4.0LED灯控方案最多可以控制几盏灯?
Iphone最多允许带四个模块,一个模块只控制一盏灯那就是四盏灯。注:一个模块可以有线连接控制多盏灯,可以实现多段控制。

30、操作防丢器时,达到设定的报警距离后,为什么还是没有报警?
距离只是一种参考,RSSI受到的干扰容易让这种距离变得不稳定,这也就是开发防丢器最难的地方。

31、将陶瓷天线改成PCB天线时需要注意哪些方面的匹配设计?
陶瓷天线的体积较小,PCB天线较大,需要留足够的空间,同时需要匹配50R阻抗;如果没有设计经验,必须使用官方标准设计。

32、自己做蓝牙模块,烧录点怎么留出来?
可以提供测试焊盘或者留出引脚。

33、单片机IO口模拟串口发送数据到CC2540如何设置(如数据包选择等),是否直接发送 N,8,1 数据协议即可?
目前只能使用 N,8,1。

34、蓝牙4.0模块如果进入深度休眠后,再唤醒,必须用手机端进行连接吗?不能由模块主动连接手机吗?
可以由手机主动链接,模块无法主动发起链接,只能广播;[/mw_shl_code]
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-6-13 17:10:50 | 显示全部楼层
蓝牙2.0模块 使用过的资料备份

BMX-02&03_spec_蓝牙模块.pdf

344.17 KB, 下载次数: 227

FBT06蓝牙模块AT指令集.pdf

684.58 KB, 下载次数: 210

蓝牙4.0模块说明文档v521.pdf

1.19 MB, 下载次数: 229

蓝牙相关测试_德州-0605-.pdf

2.93 MB, 下载次数: 86

蓝牙芯片BC6130_QFN_Data_Sheet规格书.pdf

836.33 KB, 下载次数: 183

如何测试和评估蓝牙模块.pdf

712.73 KB, 下载次数: 231

蓝牙模块BF10-A说明书(AT指令版本)-V2.0.pdf

254.22 KB, 下载次数: 217

蓝牙模块BF10-I(IO口版本) 说明书V2.pdf

281.43 KB, 下载次数: 190

蓝牙模块BF10-V2.0.pdf

270.72 KB, 下载次数: 190

at_cmd_spec.pdf

686.32 KB, 下载次数: 225

MBTV4_datasheet_cn.pdf

1.55 MB, 下载次数: 198

BF10蓝牙模块开发资料V2.0.rar

1.36 MB, 下载次数: 206

FBT06蓝牙模块.rar

963.47 KB, 下载次数: 212

HMPCComAssistant.rar

273.35 KB, 下载次数: 219

彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

6

主题

91

帖子

0

精华

高级会员

Rank: 4

积分
767
金钱
767
注册时间
2014-11-15
在线时间
91 小时
发表于 2016-6-13 19:44:30 | 显示全部楼层
整理的很全面,值得学习
回复 支持 反对

使用道具 举报

27

主题

274

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
471
金钱
471
注册时间
2011-11-2
在线时间
11 小时
发表于 2016-6-13 21:41:19 | 显示全部楼层
可惜SPP和BLE都只能小数据传输,不知道有没有可以传大数据的,我想通过蓝牙传文件给到下面的机器。
回复 支持 反对

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-6-14 20:31:29 | 显示全部楼层
zenghi 发表于 2016-6-13 21:41
可惜SPP和BLE都只能小数据传输,不知道有没有可以传大数据的,我想通过蓝牙传文件给到下面的机器。

你需要传多大的数据量/每秒
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-6-14 20:33:23 | 显示全部楼层

CC2640 开发常见问题小结:

本帖最后由 cornrn 于 2016-6-14 20:35 编辑

CC2640 开发常见问题小结:
[mw_shl_code=csharp,true][mw_shl_code=cpp,true]Q: What do I need to get started?

A: You need a development kit, please select one of the following:

1) The new CC2650 LaunchPad™ (LAUNCHXL-CC2650). The CC2650 LaunchPad is a complete BLE development kit for $29 offering an on board XDS110 debugger, a multi-standard CC2650 in the 7x7 QFN package and access to IOs via the BoosterPack connectors™. New to LaunchPad? Check out the main site with more LaunchPad ecosystem details. This is the most economical development kit to prototype your embedded Bluetooth low energy system, develop software, measure power.

2) CC2650 SensorTag (CC2650STK) + the XDS110 DevPack Debugger (CC-DEVPACK-DEBUG) development kit (bundle TI eStore price $44). This is the best platform for IoT application development as the SensorTag has 10 sensors (motion, temperature, humidity, etc.) and runs off a coin cell battery. See how the SensorTag be used to accelerate your IoT development here.

3) CC2650 SmartRF06 Development Kit (CC2650DK). A full development kit featuring two SmartRF06EBK development boards, two CC2650EMs (7x7), an integrated LCD and support for accessing all IOs. All QFN package reference designs can be evaluated by changing the CC2650EM evaluation module.

Next, you'll need some software. Good news, it's free!

Download the Bluetooth low energy software stack (BLE-Stack) v2.1.1 which can be found here: ti.com/ble-stack
The TI BLE-Stack software package includes TI-RTOS SimpleLink, CC26XXWare and the royalty-free BLE protocol stack.

Refer to the “Setting up the Development Environment”  section in the CC2640 BLE Software Developer’s Guide (SWRU393) – this section has all the details on how to setup & build example projects in the BLE-Stack SDK: http://www.ti.com/lit/swru393

Some kits have dedicated SW examples:

Project 0 for the CC2650 LaunchPad: Develop your first Bluetooth LE application and control the LaunchPad with your iOS or Android app, all right from the CCS Cloud development environment.

SimpleLink Academy for the CC2650 LaunchPad or SensorTag + DevPack Debugger: Learn TI-RTOS basics & custom Bluetooth LE Profile development. Learn how to send data to/from a smart phone, such as for controlling a sensor or developing your own custom service.

Develop your own application on any development kit: Start with the SimpleBLEPeripheral example in the SW Developer's Guide to gain an understanding of Bluetooth LE and the TI BLE SW Stack. TI BLE Wiki. Use the "Sample Applications" section of the BLE Software Developer’s Guide (SWRU393), TI Designs & Examples on the TI BLE Wiki to create your Bluetooth low energy application!

All of the kits, training & sample application can be found on the TI BLE Wiki.

A CC26xx Family SW Quick Start Guide can be found here.


Q: Where do I learn more about the Bluetooth low energy specification, profiles, Notifications, Pairing, etc?

A: There is a good intro to Bluetooth LE in the CC2640 BLE Software Developer’s Guide (SWRU393). You can download the BT Core Specification for free from the Bluetooth Special Interest Group (SIG) website in addition to adopted Profiles & Services. Although the core specification is over 2,000 pages, only a few sections are typically referenced in the course of developing a Bluetooth LE application:

Generic Access Profile (GAP) - Specifies the role of the device (Peripheral, Central, Broadcaster, etc.): Volume 3, Part C
Attribute Protocol (ATT) - Defines discrete data types which are the 'building blocks' of Characteristics: Volume 3, Part F
Generic Attribute Profile (GATT) - Defines Characteristics, or an organized method of using Attributes. Volume 3, Part G
Security Manager Specification (SMP) - Defines the procedure for the generation and exchange of security keys, also known as Pairing. Volume 3, Part H
Link Layer Specification - Lowest layer that manages the connection between devices and defines channel data types. Volume 6, Part B
The vast majority of E2E inquiries related to the Bluetooth core specification are addressed by the above sections of the core specification. In some cases, the above sections cover classic as well as dual-mode operation. Refer to the respective introduction chapter for the LE-only sub sections.

Q: Where do I find more information on the CC2650 SensorTag, including sensor details, firmware, services/profiles, PC & Smartphone Apps, etc.?

A: Technical details on the SensorTag, sensors, schematics, BLE custom sensor profiles & how to access from a PC or smartphone can be found on the "Getting Started" & "Teardown" tabs of the SensorTag main page.

The SensorTag device firmware is provided in the TI BLE-Stack SDK, both in source & prebuilt hex format. It can be programmed with the SmartRF Flash Programmer 2 and a supported JTAG debugger.

Additional details on how to build/program the firmware, how to access the sensor data over BLE and more details including OAD are located in the SensorTag User's Guide on the TI BLE Wiki. Although any smart device app can be developed to interact with the SensorTag, TI does provide Android & iOS sample code.

Q: What is the difference between CC2650 & CC2640?

A: The multi-standard CC2650 wireless MCU supports BLE as well as other wireless protocols, such as ZigBee. The CC2640 supports Bluetooth low energy only. All code generated from the BLE-Stack v2 SDK is binary compatible with both the CC2650 & CC2640. Additionally, IDE project configuration settings in the BLE-Stack v2.1 SDK for CC2650 & CC2640 are cross-compatible; however, it is strongly recommended to not change the CPU settings in the IDE. Although the CC2650 has the HW & ROM capability to support additional wireless protocols, a given SW build can only support one wireless protocol.



Q: What are the different software packages available?

A:

TI RTOS SimpleLink
A full package including the OS kernel, high level peripheral drivers and CC26XXWARE

CC26XXWARE ("DriverLib")
Low level drivers, linker files and memory map

BLE-Stack v2
Bluetooth LE stack for CC2640, installer includes TI RTOS Simplelink


Q: Do you have a GitHub page?

A: Yes! Additional example projects can be found on the SimpleLink GitHub page.



Q: Which debuggers are supported?

A:

SmartRF06EB using XDS100v3 (included on board)
XDS100v3 standalone (from 3rd party manufacturers)
XDS200 (from 3rd part manufacturers)
DevPack Debugger (CC-DEVPACK-DEBUG) for the new SensorTag (new XDS110 debugger)
XDS110 on the CC2650 LaunchPad (LAUNCHXL-CC2650)
See the Tools wiki for more details on supported debuggers. Note that XDS100v2 debuggers are not supported with CC26xx.


Q: How do I setup the CC-DEVPACK-DEBUG (XDS110) with CCS and IAR?

A: Please see the Tools Overview wiki article. The User/Application COM port is the USB Serial "back channel" used in the sample applications.



Q: Can I use the CC Debugger with CC26XX?

A: Unfortunately not. The CC26XX / CC13XX series uses cJTAG / 4-pin JTAG as its debug interface which is not supported by CC Debugger



Q: Which IDE / Compilers are supported?

A: IAR >=7.40.2 or CCS 6.1 is supported (updates applied). Both have equally good support for TI RTOS. Please see the "Setting up the Development Environment" section of the CC2640 BLE Software Developer’s Guide (SWRU393) located in the Documents folder of the BLE-Stack SDK. The actual IDE versions used for testing the BLE-Stack SDK can be found in the Release Notes of the SDK (README.htm).

Note: IAR 7.50 versions prior to 7.50.3 have linker issues with BLE-Stack 2.1.x. Please use IAR 7.50.3 or later.



Q: When I download my code, where is it programmed? Internal or external flash memory?

A: The CC26xx is a flash based wireless MCU with 128kB of in-system programmable flash memory. All code downloaded / programmed by a supported IDE or SmartRF Flash Programmer 2 resides in and executes from internal flash memory. Some development kits feature an optional serial flash memory component connected via SPI. This external flash is to support firmware upgrade using TI's custom Over-the-Air Download (OAD) profile, which, when used with a software boot image manager, allows for updating the internal memory contents. For more details on the OAD profile, please see the CC2640 BLE OAD User's Guide article on the TI BLE Wiki.



Q: Does CC2640 Support Bluetooth version 4.2 or Mesh Networks

The CC2640 & BLE-Stack v2.1.x supports Bluetooth version 4.1 which includes multi Master/Slave capability ("MultiRole") for connections up to 8 devices. TI intends to deliver Bluetooth version 4.2 core specification support, including LE Secure Connections, LE Privacy 1.2 & LE Data Length Extension, in early summer 2016 via a BLE-Stack SW update for CC2640.

On November 11, 2015, the Bluetooth SIG announced enhancements to Bluetooth low energy coming in 2016, including official support for Mesh Networks & faster data rates. Please see this post for more details on how the CC2640 platform is positioned to support these features once they are officially adopted.

Q: How do I port my CC254x application to CC2640

A: Most reference projects in the CC254x SDK have been ported to CC2640. Please refer to CC2640 BLE SW Developer’s Guide porting section for additional information on porting. Although most of the BLE-Stack APIs have remained the same, the amount of porting effort required will vary depending on the complexity of the existing application.

Q: How do I port my CC2640 CCS or IAR project to the latest BLE-Stack v2.x SDK?

A: A v2.x project porting guide is available on the BLE Wiki.



Q: How do I add UART or SPI to my application

A: Multiple options are available for adding serial communication to your Bluetooth low energy application. Refer to the TI BLE Wiki article: "CC2640 Serial Communication".

Q: How do I implement Over the Air Download (OAD) firmware upgrade for CC2640?
A: Currently, OAD to internal flash is supported with limitations on the size of the Application. An option has been added to BLE-Stack V2.1 to allow for OAD to external SPI flash memory. For more details on how to implement the OAD profile, please see the CC2640 BLE OAD User's Guide article on the TI BLE Wiki.


Q: How do I do a simultaneous Master & Slave (i.e., Peripheral & Central role) connection?

A: Refer to the TI BLE Wiki article: MultiRole with BLE 2.1.

Q: Where can I find the original Out of Box demo for the CC2650DK?

A: The hex file for the PER Test demo can be found in this post:

Q: Where do I find more information on the Sensor Controller Engine (SCE) and Sensor Controller Studio (SCS)?

A: Please see the Sensor Controller Studio (SCS) Frequently Asked Questions post.

Q: Are newer TI-RTOS releases compatible with an existing BLE-Stack SDK?

A: A particular TI BLE-Stack release is tested with the TI-RTOS release packaged with the BLE-Stack SDK installer as described in the release notes. Occasionally, TI may provide a porting guide to a newer TI-RTOS release for specific functionality enhancements (e.g., to use an updated driver), however, compatibly can only be assured for the TI-RTOS version listed in the release notes of the TI BLE-Stack. Therefore, use of a different TI-RTOS release should be considered experimental even when a porting guide is available.


Troubleshooting

Q: I'm unable to flash program CC2640 with topside marking: CC2640 128 IT 59I A90C G4

A: Please make sure you are using the latest version of SmartRF Flash Programmer 2 v1.7.x. The latest version can be downloaded from the "Tools & Software" tab on the main CC2640 or CC2650 product folder.


Q: When switching to the 5x5 package, UART crashes in my BLE-Stack v2.1.x project, such as when initializing NPI.

A: An issue exists in the TI-RTOS 2.13 CC2650EM_5XD board file with the placement of the uartCC26XXHWAttrs structure. Please make the following change in the 5XD board file, usually located at C:\ti\tirtos_simplelink_2_13_00_06\packages\ti\boards\SRF06EB\CC2650EM_5XD:

#pragma DATA_SECTION(uartCC26XXObjects, ".const:uartCC26XXObjects")
with:
#pragma DATA_SECTION(uartCC26XXHWAttrs, ".const:uartCC26XXHWAttrs")

This issue has been corrected in subsequent TI-RTOS SDK releases for CC26xx.


Q: Why is my device in an infinite loop with "No source available for 0x1001bbd6"

A: This means you have encountered a CPU abort / exception, such as from accessing a non-existent memory address, using an incorrect PIN config, etc. For debugging this condition, i.e., finding what caused the CPU abort, see the "Deciphering CPU Exceptions" section in Ch 9 of the CC2640 BLE SW Developer’s Guide (SWRU393).



Q: My "out-of-the-box" BLE examples does not compile in IAR and I get an error saying "Variable expansion failed". What is wrong?

A: IAR sometimes fail to include the path variables for TI RTOS and CC26XXWARE and you need to import them again manually.

Goto Project->Configure Custom Argument Variables, Select Import and choose the corresponding variables file. Example location: Projects\ble\SimpleBLEPeripheral\CC26xx\IAR\SimpleBlePeripheral.custom_argvars

Q: My CC-DEVPACK-DEBUGGER (DevPack Debugger / XDS110) does not detect the SensorTag in SmartRF Flash Programmer 2 v1.7.x+?

A: A firmware update may be required. Please install CCS according to the CC2640 BLE Software Developer’s Guide (SWRU393). CCS will detect if a firmware update is required when a Debug session is started. Open and build the SensorTag project, then program the SensorTag via the CCS Debugger. Remember to close SmartRF Flash Programmer 2.
Q: I’m getting a linker or post-build error with Boundary.exe when building the Stack project.

A: The Boundary tool is used to adjust the Stack flash / RAM boundary to the optimal value. These errors typically occur when the Stack configuration is modified such that RAM/Flash usage has changed.

Verify that your argument variables / path point to the location where Boundary.exe is installed. The default location: C:\Program Files (x86)\Texas Instruments\Boundary. If the tool is installed to a different path, the IDE will need to be updated:
IAR: Tools-> Configure Custom Argument Variables ->”CC26xx TI-RTOS” -> BOUNDARY
CCS: Stack Project Properties -> Build, “Steps” tab, “Post-build steps”.
Refer to Section “3.12 Configuration of RAM & Flash boundary using the Boundary Tool” in the CC2640 BLE Software Developer’s Guide (SWRU393) for details on how to resolve build errors generated by the Boundary tool or Linker.


Q: I get pre-build errors in IAR, and after clicking Tools->Options->Messages->Show all build messages, it looks something like this
gmake[1]: Entering directory `C:/ti/simplelink/ble_cc26xx_2_00_00_42893/Projects/ble/SimpleBLEPeripheral/CC26xx/IAR/Config/src/sysbios'
Preprocessing library source files ...
C:/Users/<user>/AppData/Local/Temp/make904-2.sh: 1: Syntax error: "(" unexpected
C:/Users/<user>/AppData/Local/Temp/make904-3.sh: 1: Syntax error: "(" unexpected

A: Your system has for whatever reason disabled 8.3 pathname aliases (e.g. PROGRA~2) for the path IAR is installed to. The only known working solution is currently to install IAR at e.g. C:\IAR\EWARM7401 or some other path without spaces or long names.

Q: I get "Resource temporarily unavailable" pre-build errors in the application project similar to this:

Creating the SYS/BIOS library that contains the APIs not included in the ROM ...
0 [main] sh 6420 sync_with_child: child 6332(0x19C) died before initialization with status code 0xC0000142
23 [main] sh 6420 sync_with_child: *** child state waiting for longjmp
C:/Users/username/AppData/Local/Temp/make6628-1.sh: fork: Resource temporarily unavailable

A: Most likely there is a conflict with sh.exe in the XDCTools installation with some other package you have installed. Please search for sh.exe in your system and disable the conflicting package(s). Additionally, file system tools, such as cygwin may cause conflicts with the XDCTools; these installation(s) should be disabled as well.

Q: I’m still getting build errors of some kind.

A: Please use the E2E Rich Formatting Option and attach your IAR or CCS build log. Note that for IAR, you must enable the build log: Tools -> Options -> Messages -> Log build messages to file. Please compress the file as needed.



[/mw_shl_code]
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-6-14 20:33:51 | 显示全部楼层
续:[mw_shl_code=csharp,true]Q: When debugging or loading the Stack project, I get errors saying the vector table can’t be found or can’t run to main.

A: The Stack project is not an executable, thus it can’t be debugged directly from the IDE. The Stack must be debugged from the Application project workspace. In IAR, you should not encounter these warnings if “Download Active Application” is used to download (program) the Stack image. In CCS, you will see these warnings, however they can be ignored so long as the flash memory was successfully programmed. After the Stack is downloaded, switch to the Application workspace/project and start the debug session. More details are in the CC2640 BLE Software Developer’s Guide (SWRU393).

Q: My CC-DEVPACK-DEBUG (DevPack Debugger / XDS110) always reports "Firmware Upgrade Mode" in the Windows Device Manager?

A: Please make sure you have a battery inserted in the SensorTag and follow the procedure on the wiki: http://processors.wiki.ti.com/in ... s_Overview#XDS110_2
Q: Why am seeing poor RF performance and range issues on my custom CC2640 board when everything works fine on the TI Reference HW?

A: When the TI reference design guidelines (http://processors.wiki.ti.com/index.php/CC26xx_HW_Checklist) are followed, the most common reason for poor RF performance or range issues is an incorrect/mismatched RF Front End & Bias setting in SW vs. the actual front-end configuration on the custom HW. This mismatch usually happens when the custom board uses a different package (i.e, 5x5) and includes one of the TI CC2650EM eval module board files which does not match the custom board's front-end configuration. To achieve maximum RF performance, it is critical to have the correct SW setting that matches the actual board layout.

For example, the CC2650EM_5XD board file is for a 5x5 package using a Differential front-end configuration with eXternal bias. If the custom board uses a layout with Internal bias, using the 5XD board file will will result in a mismatched Bias setting and thus severely degrade RX sensitivity. The same principle applies for mismatched Single-ended vs Differential front-end configurations.

Make sure the board file is updated with the correct front-end configuration settings. The setting is defined by RF_FE_MODE_AND_BIAS in bleUserConfig.h. See this header file for the available SW definitions. It is recommended to confirm that the preprocessor is including the correct board file and RF_FE_MODE_AND_BIAS setting. If needed, create a new board file with the correct RF setting. See "10 Creating a Custom BLE Application" in the CC2640 BLE Software Developer’s Guide (SWRU393) for more details.

For more CC26xx HW troubleshooting, refer to the following wiki: http://processors.wiki.ti.com/index.php/CC26xx_HW_Troubleshooting



Q: How do I unbrick the device?

A: Use SmartRF Flash Programmer 2. Under the wrench icon (top right), select “CC26xx/CC13xx Forced Mass Erase”. Note that the flash programming tool will always report "success" when performing a mass erase. If the CC26xx Device Configuration (CCFG) has been set to disable the Mass Erase function, the operation will not succeed despite the flash programming tool reporting "success".
Q: My SensorTag (CC2650STK) doesn't Pair with Windows 8.1?

A: Please upgrade your SensorTag to firmware version v1.20 or later using the FW Download option in the iOS or Android SensorTag app, or use the pre-built SensorTag hex file in the BLE-Stack V2.1 SDK. Note that for size reasons, the SensorTag firmware is not built with the Pairing feature enabled, but it will correctly respond to a Pairing Request from a Central device.
Q: I am using pre-release silicon (Rev2.0 or Rev2.1) and my software does not run or never reaches main(). When I stop the CPU is stopped in a function called hisCodeIsBuiltForCC26xxHwRev22AndLater_HaltIfViolated. What is wrong?

A: Support for pre-release silicon is only available in the BLE-Stack V2.0 release using the following procedure. There is no support of pre-release silicon in BLE-Stack V2.1+.

The default CC26XXWARE path to setup files / drivers is set to support release material (Rev2.2). To run the software on older material this variable needs to be changed.

IAR:

Goto Tools->Configure Customer Argument Variables-->CC26xx TI-RTOS-->CC26XXWARE
Modify CC26XXWARE

From: C:\ti\tirtos_simplelink_2_11_01_09\products\cc26xxware_2_20_06_14829
To C:\ti\tirtos_simplelink_2_11_01_09\products\cc26xxware_2_00_06_14829
Delete OS kernel libraries folder: IAR\Application\CC2640\configPkg [IAR builds only]
Delete OS kernel source build folder: IAR\Config\src [IAR builds only]
Close workspace and re-open for changes to take effect
CCS:

Right-click the Application project, Select Properties
Goto Resource->Linked Resources, "Path Variables" tab
Follow the above instructions to modify CC26XXWARE
Goto Build->ARM compiler->Advanced Options->Predefined symbols
Look for CC2650F128RGZ and replace it with CC2650F128RGZ_R21 or CC2650F128RGZ_R20.
Rebuild the Application project[/mw_shl_code][/mw_shl_code]

彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

27

主题

274

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
471
金钱
471
注册时间
2011-11-2
在线时间
11 小时
发表于 2016-7-19 21:25:07 | 显示全部楼层
cornrn 发表于 2016-6-14 20:31
你需要传多大的数据量/每秒

M级别  看现在的BLE 都是5KB就撑死了
回复 支持 反对

使用道具 举报

163

主题

1223

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1461
金钱
1461
注册时间
2014-5-21
在线时间
339 小时
 楼主| 发表于 2016-7-21 08:23:10 | 显示全部楼层
zenghi 发表于 2016-7-19 21:25
M级别  看现在的BLE 都是5KB就撑死了

M级别呢啊,太大了,不是BLE做的事情ZIGBEE 做吧
彼高丽者,边夷贱类,不足待以仁义,不可责以常礼。古来以鱼鳖畜之,宜从阔略。若必欲绝其种类,恐兽穷则搏。
回复 支持 反对

使用道具 举报

1

主题

12

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2016-7-23
在线时间
2 小时
发表于 2016-7-23 14:32:58 | 显示全部楼层
zenghi 发表于 2016-7-19 21:25
M级别  看现在的BLE 都是5KB就撑死了

向前辈请教个问题,串口蓝牙模块传输速率怎么测试?不知道能不能指点一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 03:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表