嗨,家伙。
我正在使用带有6.0.6 SDK的DA14585基本DEV-套件,尝试运行SUOTA教程(第6页)。我遇到了一些问题,我想问到。
1. da14585软件和工具页面上没有da1458x_suota_multipart_binary_generator_0.rar。我不得不从DA14583下载它。是否有一个原因?
2. Suota教程请您使用BLE_585_SW_VERSION.H文件来生成.img文件。SDK 6.0.6上的此文件不存在(或者我无法找到它)。
3.在SmartSnippets工具上刻录Multi_Part.bin后,使用JTAG,并重置我的电路板,SmartSnippets工具上的任何事情都不会发生(没有重置确认)。除此之外,我无法在iPhone中找到Suota应用程序中的设备。(如果我再次调试代码,我可以找到它,但我认为这样做有问题)。
4.当我尝试上传fw_image_2。img到我的设备,使用SUOTA应用程序,我得到一个“错误:无效的产品头”。所以,我无法完成教程。
有小费吗?
提前谢谢。
关键词:
设备:
嗨tmiranda,
你所经历的原因可能是图像中存在的偏移量,因为585支持更大的图像,这意味着你必须在flash中增加偏移量的大小。因此,打开project_multipart_binary_v2.py,并像下面这样修改以下变量的值:
感谢你及时的答复。
1 - 作为意见,我会建议您将文件添加到14585可下载内容。它不会伤害任何人,可能在这里避免几个问题。
3 - 正如我所说的那样,我只有DA14585基本DEV-套件,所以我怎样才能确定它的工作,因为没有办法看设备广告?
4 -我想这就是问题所在。烧SPI flash后,我无法看到SUOTA应用程序上的设备广告。我已经尝试了您所显示的新变量,但没有改变。我还在SPI Flash内存可引导部分上尝试了这两个选项。
提前谢谢。
嗨tmiranda,
谢谢mt_dialog.
2.事实上,我可以使用LightBlue和Suota找到Suota设备,但只有在我在Keil上的调试模式下运行时才。当我在SPI内存中燃烧并重新启动电路板时,没有任何反应。要构建MultiPart.bin文件,我只使用教程中显示的输入文件,是fw_1.hex,fw_2.hex,fw_1_version和fw_2_version,它生成了ble_examples / prox_reporter.uvprojx。exted_bootloader.hex文件我已经使用了suota_multipart_binary_generator /输入文件。
3.我将在这里运行并发布。
事实上,我只是把手放在Pro套件上,我以前有相同的问题。我会尝试使用BLE_APP_OTA并在此处更新。
编辑:
我有同样的问题。使用ble_app_ota生成fw_multi_part_spi.bin文件不会更改任何内容。燃烧到SPI闪光灯并重置电路板后,我无法找到我的设备。我正在使用权力配置文件,我能看到板应该升起并运行(并且我已经重置了几次)。
所以,现在我在da14580devkit中使用da14585 pro-kit运行该示例。我发现了使用Suota遵循DA1458x的最后一个错误的来源
AN-B-10。问题是文件Bootloader.h和app_spotar.h上的product_header_position中使用的值出错了。我将它更改为0x1f000,错误消失了。
现在,我可以烧Spi Flash内存,重置我的设备,我可以看到它在SUOTA应用程序上的广告,并连接到它。每当我尝试更新我的新固件版本,使用应用程序,一个新的错误出现,“相同的图像错误”。我已经读了DA1458x使用SUOTA AN-B-10时有关这个错误的说明,但我仍然很困惑。我尝试过不止一次通过应用程序上传图片,并到不同的图像银行,但迄今为止没有任何工作。再问几个问题。
1 - 不应该银行有不同的图像吗?(我改变了固件版本和时间戳)
2 - 我在哪里可以找到有关两个内存银行实现的更多信息?
3 - 我如何通过软件进行课程?我不想在我未来的应用程序中使用该应用程序,既不在教程中显示的USB加密狗。雷竞技安卓下载
嗨tmiranda,
谢谢mt_dialog.
1 - 如使用Suota_0文件在AN-B-010 DA14580(第18-19页)中所说,使用fw_1.img和fw_2.img创建fw_multi_part_spi.bin文件。这将在SPI内存中编程,该SPI内存将包含辅助引导程序(0x00000),fw_1.img(0x80000),fw_2.img(0x13000)和产品标题(0x1f000)。我的fw_1.img和fw_2.img应该是不同的,因为我改变了代码(我在user_config.h上更改了设备的名称),固件版本(sdk_version.h)和时间戳(sdk_version。H)。正如您所说的那样,我现在使用相同的图像(fw_1.img和fw_1_copy.img [命名为fw_2.img]来创建multi_part_spi.bin。当我尝试上传不同的图像时,我仍然有相同的图像错误。
2/3 - 谢谢,我稍后会检查它们。
嗨tmiranda,
用spi mutlipart.bin的两个银行中的ble_app_ota测试它,我无法复制您报告的内容,您是否确定您不混淆标题文件,并且下载的图像具有不同的图像标题版本比位于特定银行的一个或其不同于两个银行中的一个?
谢谢mt_dialog.
我正在尝试prox_reporter。我现在已经更改为BLE_APP_OTA。
下面是我在SPI内存中烧录的前两个图像(相同的图像)和fw_multi_part_spi.bin生成的输出。
#############免费脚本用于创建DA1458X多部分图像#################
########### version :: sw_v_0000.00003 ################################
##################### 2017年开发Janua #######################################
Hex2bin v1.0.10,版权所有(c)2012 jacques Pelletier&贡献者
最低地址= 003C0000
最高地址= 003c6927
PAD BYTE = FF
8位校验和= A8
Hex2bin v1.0.10,版权所有(c)2012 jacques Pelletier&贡献者
最低地址= 003C0000
最高地址= 003c6927
PAD BYTE = FF
8位校验和= A8
Hex2bin v1.0.10,版权所有(c)2012 jacques Pelletier&贡献者
最低地址= 003C0000
最高地址= 003c18a7
PAD BYTE = FF
8位校验和= 98
信息::fw_image_1。Img成功创建,没有数据加密。
信息:: fw_image_2.img是未经数据加密的成功创建的。创建图像'输出\ fw_multi_part_spi.bin'...
[00000000] AN-B-001 SPI标题
[00000008] Bootloader
[000018b0]填充(FF)
[00008000]'输出\ fw_image_1.img'
[0000E968]填充(FF)
''输出\ fw_image_2.img'
(00019968)填充(FF)
[0001F000]产品标题
fw_multi_part_spi.bin成功创建。##########################################################################
如您所见,图像(FW_1和FW_2,我假设)的校验和相同,因此它应该是相同的图像。
要创建第二个图像,我已更改设备的名称和SDK_VERSION信息,并在教程中介绍它。我使用iTunes向我的手机发送了两个副本。下面是第二个图像的Python脚本的输出。
#############免费脚本用于创建DA1458X多部分图像#################
########### version :: sw_v_0000.00003 ################################
##################### 2017年开发Janua #######################################
Hex2bin v1.0.10,版权所有(c)2012 jacques Pelletier&贡献者
最低地址= 003C0000
最高地址= 003C692F
PAD BYTE = FF
8位校验和= 8f
Hex2bin v1.0.10,版权所有(c)2012 jacques Pelletier&贡献者
最低地址= 003C0000
最高地址= 003C692F
PAD BYTE = FF
8位校验和= 8f
Hex2bin v1.0.10,版权所有(c)2012 jacques Pelletier&贡献者
最低地址= 003C0000
最高地址= 003c18a7
PAD BYTE = FF
8位校验和= 98
信息::fw_image_1。Img成功创建,没有数据加密。
信息:: fw_image_2.img是未经数据加密的成功创建的。
创建图像'输出\ fw_multi_part_spi.bin'...
[00000000] AN-B-001 SPI标题
[00000008] Bootloader
[000018b0]填充(FF)
[00008000]'输出\ fw_image_1.img'
[0000E970]填充(FF)
''输出\ fw_image_2.img'
[00019970]填充(FF)
[0001F000]产品标题
fw_multi_part_spi.bin成功创建。
##########################################################################
同样,相同的校验和,因为我正在创建一个具有相同.hex文件的两个图像,它与存储在我内存上的那些不同。当我在手机上使用Suota应用程序上传它们时,我仍然得到相同的错误消息。我不知道我在这里做错了什么。
嗨tmiranda,
我觉得你已经误解了SUOTA是如何工作的,你应该上传的图片手机为了执行SUOTA,使用相同的图像,以创建multipart.bin文件(重命名fw_1.bin fw_2.bin并执行python脚本)。在创建第二个映像之后(不要再运行python脚本),只需使用更新后的二进制文件和更新的头,并通过mkimage.exe通过下面的命令mkimage.exe single your_binary.bin your_fw_version.h new_image。Img,将创建的图像,你应该上传到你的手机,并使用该fw进行更改。如果你仍然得到错误调试代码,以便可以看到实际的设备读取和promts你信息,确保您使用O0优化为了能够读取变量,燃烧的spi multipart.bin从凯尔和运行相同的项目,您应该检查功能是app_read_image_header (),这样您就可以检查代码读取的内容,并使用该消息提示您。
谢谢mt_dialog.
你好,
我已经完成了上述步骤,更改了一点 - 我需要运行hex2bin.exe程序以创建二进制文件,因为构建过程只返回一个十六进制文件,然后运行mkimage.exe文件。我仍然收到同样的错误。你能指出我在哪里可以找到更多关于调试的信息吗?我只看到了教程的示例,我不知道如何执行它。我制作了一个视频,逐步展示了我正在做的事情。链接以下。
https://www.youtube.com/watch?v=xkdkw0cdwko.
https://www.youtube.com/watch?v=22lio55nfvu.
提前谢谢。
嗨tmiranda,
没有文档,描述一步一步一步调试方法,你可以做的是有多部分图像的flash和运行图像应该从凯尔为了调试启动它,就像我在以前的文章描述它,我也表示您应该检查的功能。另外,你所附的视频似乎是不可用的。
谢谢mt_dialog.
那些在特定模式的视频,我刚刚改变了它,你现在可以看到它们。
我在上传的视频上没有看到任何错误,我已经附加了一个.zip文件,其中的OTA项目包括两个不同的OTA支持项目fw_1.bin和fw_2.bin以及它们的头文件和相应的图像fw_1.img和fw_2.img以及multi_part.bin文件(包含fw_1.img的两个图像)。现在,如果在Flash中刻录多个_part.bin文件,然后只复制手机上的FW_2.IMG,您将能够将FW_2.IMG上传到设备。所以请尝试这样做,然后如果这是成功的,可以尝试通过提供的二进制文件生成图像,也许这将有助于跟踪问题。
谢谢mt_dialog.
嗨对话框,你确定suota还可以吗?我已经改变了img和sw版本,这么多次,结果始终是“相同的图像错误”,我想也许引导加载程序始终检查同一个图像,而不是我上传的东西?
Tmiranda先生不发生问题,我不知道他是否解决了这个问题。
我使用以下命令'mkimage.exe single ncl_1.bin ncl_1_version.h ncl_1。Img '创建Img文件,然后使用下一个命令'mkimage.exe multi spi secondary_bootloader_585.bin ncl_1。img 0 x4000 ncl_1。img 0x1B000 0x38000 ncl_1_osta .bin'创建bin文件与引导加载程序,然后将其刻录到flash,然后我可以找到现在的设备。
接下来我将sdk_version更改为新版本(更改sdk_version,sdk_version_date,sdk_version_status)并重命名为ncl_2_version.h,重建一个新的bin文件,以及exec comand'mkimage.exe single ncl_2.bin ncl_2_version.h ncl_2.img'来创建第二个img文件。
现在我必须使用img文件ncl_1.img和ncl_2.img,我用iTunes复制文件信息我的iPad,当我上传upota时,我总是得到msg'相同的图像错误'。
嗨HM,
我们正试图复制您的问题,以便为您提供解决问题的指示。我们会尽快通知您。
谢谢,PM_DIALOG.
我也与RCU_585应用程序一起运行到“相同的图像”错误。
我可以使用软件指南的附录C的说明来运行“mk_suota_img.bat”并生成“rcu_585_suota.bin”。我可以使用smartsnippets闪存,并使用我的软件版本在Suota应用程序中查看。
然后我清理我的项目,用新版本和构建日期修改“user_config_sw_ver.h”,重建,然后再次使用“mk_suota_img.bat”来生成一个新的.img文件。我将新版本的版本.img文件加载到我的Android手机上,而是使用Suota应用程序获取“相同的图像”错误。
你好,
我刚刚尝试了自己并搞定了它(使用Suota应用程序在语音RCU开发套件中升级固件)。几件事要检查:
- 您需要更新user_config_sw_ver.h文件中的版本号和构建日期。
- 如果您在更新这些值时注释出原始版本和日期,请确保将最新信息显示在文件的顶部。以下作品:
#define sw_version“v_v_7.141.3.18”
#define sw_version_date“2018-11-08 17:04”
//#定义sw_version“v_v_6.140.2.17”
//#define sw_version_date“2017-10-07 16:03”
但这不是生成图像的脚本,它忽略了评论并只使用它发现的第一个版本和日期,将包含包含旧信息的图像(以及相同图像错误的可能性):
//#定义sw_version“v_v_6.140.2.17”
//#define sw_version_date“2017-10-07 16:03”
#define sw_version“v_v_7.141.3.18”
#define sw_version_date“2018-11-08 17:04”
希望这有助于
im_dialog.