找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

查看: 22070|回复: 33

[其他] 记录一下CSR蓝牙做DFU的流程

[复制链接]
连续签到天数:1天
签到总天数:95天
签到总奖励:592金币
发表于 2012-12-31 18:52:07 | 显示全部楼层 |阅读模式

马上注册,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册  

×

一、DFU flow chart

详情 参考:61_AN092b_DFUOverview.pdf。


二、flow chart 解释

1. 产生 .DFU文件 :

DFU文件由多个private key files;pskey files;firemware files;app files组成.一个DFU文件可为不同型号的BC做 DFU。PC端的 DFU SERVER 程式会自动选择 正确的 BC做 软体升级。以下是生成 .DFU文件的步骤

1.1生成 private publickey files:

在MS DOS 模式下输入

dfukeygenerate -v -o my_stack_key-r /dev/random

得到my_stack_key.private.key和my_stack_key.publict.key 2个key文件。详情

参考:\CSR\DFUTools\DOCs\dfukeygenerate.html

1.2插入public_keyunsignedloader.

在MS DOS 模式下输入

dfukeyinsert -v -o loader_with_key-l loader_unsigned.xdv -ks my_stack_key.public.key

也插入public_key到需要保护的PSKEY文件。

详情参考:\CSR\DFU Tools\DOCs\dfukeyinsert.html

1.3 Signing Stack Software

在MS DOS 模式下输入

dfusign -v-o stack_signed -s stack_unsigned.xpv-ks my_stack_key.private.key

详情参考:\CSR\DFU Tools\DOCs\ dfusign.html

1.4 BUILD DFU FILE

在MS DOS 模式下输入

dfubuild-v -pedantic -t 3 -f spp8v2.dfu -uv 0xa12 -up 1 -ui "SPP8 V2.0" -s stack_signed.xpv –a spp8v2.app

其中stack_signed.xpv 是需要升级的 stack软体,spp8v2.app是需要升级的应用软体。执行后得到可以做DFU的文件:spp8v2.dfu

如果需要修改pskey的话,那么就加上-p3选项,这个选项需要带三个参数,第一个表示受保护的pskey,第二个表示stack的pskey,第三个表示app的pskey。如果需要更改,就填写对应的pskey文件名,不需要的话用"."代替,例如我现在需要更新stack和app中的pskey,那么就使用如下格式

  -p3 . stack.psr app.psr

但是我们一般都放在stack.psr里面,它的权限比较高,可以确保我们的pskey能够被更新到。

详情参考:\CSR\DFU Tools\DOCs\ dfubuild.html


2. BC连接 PC:

选择BC的USB或者UART连接到 PC的USB或者 UART,同时只有其中一个host interface有用.


3. 设置BC,HOST INTERFACE 为 USB或则 UART:

设置bootmode0 为 DFU 模式.open uart or usb host interface

设置bootmode1为 default启动模式.以下是透过USB做DFU的相关PSKEY设置项

&F000-

&F002=00000000 0000 0040

// boot_mode_list0

&4b0 = 1f9

//boot_mode_table0 USB HOST INTERFACE

&4b8 = 2

// boot_mode_list1

&4b1 = 1f9

//boot_mode_table1

&4f8 = 4

// boot_mode_list2

//&4b2 = 1f9

//boot_mode_table2

//&538 = 2


4.BC进入 DFU 模式:

在应用软体中让BC从bootmode0重新启动。


5.DFU处理

启动DFUWIZARD程式(或者自己制作的DFU SERVER),选择DFU INTERFACE:usb or uart.如果是透过UART做DFU需要在startdfuwizard 前关闭与dfuwizard使用同一UART的程式。另外,目前toshiba的DRIVER与CSR

USB DRIVER有冲突。所以如果透过USB做DFU需要 uninstall Toshiba的DRIVER。选择好 DFU INTERFACE后一路 “NEXT” 即可。如果 DFU成功 。

DFUWIZARD最后会出现 “DFU SUCCESSFUL”的 提示讯息。


6.DFU完成

如果DFUWIZARD 提示“DFU SUCCESSFUL”。BC将会重新以正常模式启动,并运行upgrade的 软体。

楼主热帖
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
连续签到天数:1天
签到总天数:541天
签到总奖励:6436金币
发表于 2013-4-24 23:45:13 | 显示全部楼层
谢谢分享,学习中!!!!!!
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

暂无签到数据

发表于 2013-5-4 18:38:08 | 显示全部楼层
笔记,自己亲自操作过程,很实用。我试试看看,有何一起讨论
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

暂无签到数据

发表于 2013-9-1 02:17:07 | 显示全部楼层
谢谢分享,学习中
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

暂无签到数据

发表于 2013-10-20 23:04:26 | 显示全部楼层
学习一下。
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:1天
签到总奖励:5金币
发表于 2013-10-20 23:24:45 | 显示全部楼层
Thanks for sharing.
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:885天
签到总奖励:15306金币
发表于 2013-10-21 11:09:22 | 显示全部楼层
学习。。。。
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:140天
签到总奖励:835金币
发表于 2013-10-21 14:07:23 | 显示全部楼层
参观学习,参观学习。
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:3天
签到总天数:141天
签到总奖励:794金币
发表于 2013-10-23 01:43:52 | 显示全部楼层
这个确实有用,谢谢分享







    神奇的:Opera/9.80 (Windows NT 6.1) Presto/2.12.388 Version/12.16  (zh-cn)
    ┈─━ 你的幸福是我的快乐!(+^_^*)
    ——┃-俺为尾巴代言|
             
    积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
    回复 支持 反对

    使用道具 举报

    连续签到天数:1天
    签到总天数:7天
    签到总奖励:26金币
    发表于 2013-10-23 08:44:48 | 显示全部楼层
    参观学习,参观学习。
    积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

    GMT+8, 2024-3-28 22:45 , Processed in 0.230356 second(s), 22 queries , Gzip On, MemCached On.

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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