嗨,大家好。
我正在使用带有6.0.6 SDK的DA14585基本DEV-套件,尝试运行SUOTA教程(第6页)。我遇到了一些问题,我想问到。
1.DA14585 Software & Tools页面上没有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 App中找不到这款设备。(如果我再次调试代码,我可以找到它,但我认为这样做有问题)。
4.当我尝试将fw_image_2.img上传到我的设备时,使用suota应用程序,我得到“错误:无效的产品标题”。所以,我无法完成教程。
任何建议吗?
提前致谢。
关键词:
设备:
嗨TMiranda,
由于585支持更大的图像,因此可能是您所在历史的原因是最重要的,这可能是驻留的偏移量,这意味着您必须增加闪存中偏移量的大小。所以打开project_multipart_binary_v2.py并更改以下变量中的值,如下所示:
感谢你及时的答复。
1 -作为一种意见,我建议您将该文件添加到14585可下载内容。这不会伤害任何人,而且可能会避免一些问题。
3 -正如我所说,我只有DA14585基础开发工具包,所以我怎么能确定它的工作,因为没有办法看到设备广告?
4 - 我认为这是问题。在燃烧SPI闪光灯后,我无法在Suota应用程序上看到设备广告。我已经尝试过您所示的新变量,但没有更改。我还在SPI闪存可启动部分上尝试过两种选项。
提前致谢。
嗨TMiranda,
由于MT_dialog
2.事实上,我可以使用LightBlue和iOS的SUOTA找到SUOTA设备,但只有当我在Keil的调试模式下运行时。没有发生什么,当我烧它在SPI内存和重启板。为了构建multipart.bin文件,我只使用了教程中显示的输入文件,即fw_1。十六进制,fw_2。运行ble_examples/prox_reporter.uvprojx命令生成Hex、fw_1_version和fw_2_version。secondary_bootloader。我使用的十六进制文件已经出现在SUOTA_Multipart_Binary_Generator/input文件。
3.我会在这里给这个跑步和帖子。
事实上,我刚刚用了一个专业工具包,我遇到了和以前一样的问题。我将尝试使用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闪存,重置我的设备,我能够在Suota App上看到它广告并连接到它。每当我尝试将我的新固件版本更新到它,使用应用程序时,会出现一个新的错误,“相同的图像错误”。我使用Suota An-B-10阅读了DA1458X中的错误与此错误相关的说明,但我仍然困惑。我试图通过应用程序多次上传图像,以及不同的图像库,但到目前为止没有任何工作。再次,几个问题。
1 -银行不应该有不同的形象吗?(我修改了固件版本和时间戳)
2 - 我在哪里可以找到有关两个内存银行实现的更多信息?
3 - 我如何通过软件进行课程?我不想在我未来的应用程序中使用该应用程序,既不在教程中显示的USB加密狗。雷竞技安卓下载
嗨TMIranda,
由于MT_dialog
1 -正如在AN-B-010 DA14580使用SUOTA_0文件在18-19页所说,fw_multi_part_spi.bin文件是通过两个fw_1创建的。img和fw_2.img。这将被编程在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。创建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
INFO :: FW_IMAGE_1.IMG以没有数据加密成功创建。
信息:: fw_image_2.img是未经数据加密的成功创建的。创建图像的输出\ fw_multi_part_spi.bin……
[00000000] AN-B-001 SPI头部
[00000008]引导装载程序
(000018 b0)填充(FF)
(00008000)“输出\ fw_image_1.img”
(0000 e968)填充(FF)
(00013000)“输出\ fw_image_2.img”
[00019968]填充(FF)
[0001 f000]产品标题
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
INFO :: FW_IMAGE_1.IMG以没有数据加密成功创建。
信息:: fw_image_2.img是未经数据加密的成功创建的。
创建图像的输出\ fw_multi_part_spi.bin……
[00000000] AN-B-001 SPI头部
[00000008]引导装载程序
(000018 b0)填充(FF)
(00008000)“输出\ fw_image_1.img”
[0000E970]填充(FF)
(00013000)“输出\ fw_image_2.img”
(00019970)填充(FF)
[0001 f000]产品标题
Fw_multi_part_spi.bin创建成功。
#####################################################################################
同样,相同的校验和,因为我用相同的。hex文件创建两个图像,这与存储在内存中的不同。当我试图使用SUOTA应用程序上传他们在我的手机上,我仍然得到相同的错误信息。我不知道我做错了什么。
嗨TMiranda,
我的印象是你已经误解了Suota如何工作和你应该上传到手机的哪些图像以执行课题,使用相同的图像来创建多百分之文件(只要重命名FW_1.bin进入fw_2.bin并执行python脚本)。在创建第二个图像(不再运行Python脚本)后,只需使用更新的标题拍摄更新的二进制文件,并将其与下面的命令mkimage.exe single your_binary.bin your_fw_version.h new_image.img一起通过mkimage.exe文件。这将创建您应该上传到手机的图像,并使用该FW进行更改。如果您仍然会收到错误,您可以调试代码以查看设备读取和使用该消息的实际读取和启用您的消息,请确保使用O0优化以便能够读取变量,请将SPI与多级烧掉SPI.bin并从keil运行相同的项目,您应该检查的函数是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,
没有文档将逐步描述一步一步调试方法,您可以做的是在闪存中的多部分图像并运行应从Keil启动的图像以调试它,就像我在我的情况下描述它一样之前的帖子和i ve也表示您应该检查的功能。此外,您已附加的视频似乎无法使用。
由于MT_dialog
特定模式下的视频,我改变了,你们现在可以看到。
我没有看到任何错误的视频,你已经上传,我已经附加了一个。zip文件与OTA项目包括两个不同的OTA支持项目的二进制文件fw_1.bin和fw_2.bin连同他们的头文件和相应的图像fw_1。img和fw_2。以及multi_part.bin文件(包含fw_1.img的两个映像)。现在,如果你刻录了flash中的multi_part.bin文件,然后只复制fw_2。Img在你的手机上,你就可以上传fw_2。Img到设备。所以请尝试这样做,然后如果这是成功的,你可以尝试通过提供的二进制文件生成图像,也许这将帮助你跟踪问题。
由于MT_dialog
嗨,Dialog,你确定这个suota没问题吗?我已经改变了img和sw版本很多次,结果总是“相同的图像错误”,我想可能引导加载程序总是检查相同的图像,但不是我上传的?
这个问题不仅仅发生在米兰达先生身上,我不知道他或她是否解决了这个问题。
我使用以下命令'mkimage.exe single ncl_1.bin ncl_1_version.h ncl_1.img'来创建img文件,然后使用下一个命令'mkimage.exe multi spi secody_bootloader_585.bin ncl_1.img 0x4000 ncl_1.img 0x1b000 0x38000 ncl_1_ota.bin'用bootloader创建bin文件,然后将其刻录到闪存中,然后我现在可以找到设备。
接下来,我将sdk_version更改为一个新版本(更改sdk_version,SDK_VERSION_DATE,SDK_VERSION_STATUS)并重新命名为ncl_2_version.h,重建一个新的bin文件,exec命令'mkimage.exe single ncl_2.bin ncl_2_version.h ncl_2。创建第二个Img文件。
现在我需要img文件ncl_1。img和ncl_2。Img,我复制文件信息我的iPad通过itunes,当我上传ncl_2。我总是得到msg '相同的图像错误'。
你好,嗯,
我们正试图复制您的问题,以便为您提供解决问题的指示。我们会尽快通知您。
谢谢,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