SUOTA tutorial error

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
20 posts / 0 new
最后一篇
Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
SUOTA tutorial error

嗨,大家好。

I'm using the DA14585 Basic Dev-Kit with the 6.0.6 SDK, trying to run the SUOTA Tutorial (number 6). I've faced a few problems that I would like to question.

1. da14585软件和工具页面上没有da1458x_suota_multipart_binary_generator_0.rar。我不得不从DA14583下载它。是否有一个原因?

2. The SUOTA tutorial ask you to use a ble_585_sw_version.h file to generate the .img files. This file doesn't exist on the SDK 6.0.6 (or I have been unable to find it).

3.在SmartSnippets工具上刻录Multi_Part.bin后,使用JTAG,并重置我的电路板,SmartSnippets工具上的任何事情都不会发生(没有重置确认)。除此之外,我无法在iPhone中找到Suota应用程序中的设备。(如果我再次调试代码,我可以找到它,但我认为这样做有问题)。

4.当我尝试将fw_image_2.img上传到我的设备时,使用suota应用程序,我得到“错误:无效的产品标题”。所以,我无法完成教程。

有小费吗?
提前致谢。

Keywords:
设备:
mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
嗨tmiranda,

嗨tmiranda,

  1. 原因是因为581/583和585/586的版本几乎是关于拟议程序的相同,这意味着您可以使用相同的文件来生成多级。
  2. The file that is referenced in the tutorial as a ble_585_sw_version.h file is the sdk_version.h file in the SDK6.0.6, that should be corrected, thanks for indicating.
  3. 在闪存中刻录文件后,智能代码段工具没有重置确认,您只需查看通过电源分析器的设备广告(仅使用UART接口为Pro套件提供)。如果您无法看到此,则在生成多部分二进制中出现问题。
  4. 自从上一个问题以来,您无法在闪存中刻录多部分后,您无法看到设备广告,您如何更新图像?如果您正尝试从UART的JTAG下载,而没有次级引导程序,而不是那么不起作用,因为Suota希望在Flash中找到一些额外的信息以便执行课题。

由于585支持更大的图像,因此可能是您所在历史的原因是最重要的,这可能是驻留的偏移量,这意味着您必须增加闪存中偏移量的大小。所以打开project_multipart_binary_v2.py并更改以下变量中的值,如下所示:

mem_loc_for_fww_1_img.=“0x8000”
mem_loc_for_fw_2_img.= "0x1F000"
MEM_LOC_FOR_PRODUCT_HEADER=“0x38000”
This will give more space between your images.
谢谢mt_dialog.
Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
Thanks for the quick answer.

Thanks for the quick answer.

1 - 作为意见,我会建议您将文件添加到14585可下载内容。它不会伤害任何人,可能在这里避免几个问题。
3 - 正如我所说的那样,我只有DA14585基本DEV-套件,所以我怎样才能确定它的工作,因为没有办法看设备广告?
4 - 我认为这是问题。在燃烧SPI闪光灯后,我无法在Suota应用程序上看到设备广告。我已经尝试过您所示的新变量,但没有更改。我还在SPI闪存可启动部分上尝试过两种选项。

提前致谢。

mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
嗨tmiranda,

嗨tmiranda,

  1. 感谢您的指示,后来教程将正确更新。
  2. 如果您没有Pro套件,因此您无法使用Power Profiler,那么您唯一的选项就是使用Suota应用程序或通用BLE应用程序,请注意,为了使Suota Android / IOS应用程序将设备显示为可用的Suota设备您必须在广告字符串中放置Suota UUID。这造成了另一个问题,您使用哪个fw来构建多部分文件?您是否使用Suota启用了FW,如BLE_APP_OTA?
  3. 请使用BLE_APP_OTA演示才能执行SUOTA程序,如果这对Python脚本不适用于您,请尝试使用Suota.pdf,它是一个580文档但是遵循AN-B-010 DA14580中的说明。我提到的程序是相同的。还要记住,您必须为图像2和0x38000使用图像和0x8000的图像和0x1f000的不同偏移。

谢谢mt_dialog.

Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
事实上,我可以找到

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并在此处更新。

编辑:
I'm having the same problem. Generating the fw_multi_part_spi.bin file using ble_app_ota doesn't change anything. I cannot find my device after burning into SPI flash and reseting the board. I'm using the Power Profile and I'm able to see that the board should be up and running (and I've reseted it a few times).

Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
所以,现在我正在运行

所以,现在我正在运行example with a DA14585 Pro-Kit in a DA14580DEVKIT. I've found the source of my last error by following the DA1458x using SUOTA
AN-B-10. The problem was that values used in the PRODUCT_HEADER_POSITION on files bootloader.h and app_spotar.h were wrong. I've changed it to 0x1f000 and the error disappeared.

现在,我可以刻录SPI闪存,重置我的设备,我能够在Suota App上看到它广告并连接到它。每当我尝试将我的新固件版本更新到它,使用应用程序时,会出现一个新的错误,“相同的图像错误”。我使用Suota An-B-10阅读了DA1458X中的错误与此错误相关的说明,但我仍然困惑。我试图通过应用程序多次上传图像,以及不同的图像库,但到目前为止没有任何工作。再次,几个问题。

1 - 不应该银行有不同的图像吗?(我改变了固件版本和时间戳)
2 - Where can I find more information about the two memory banks implementation?
3 - How can I do a SUOTA via software? I don't want to use the app in my future applications, neither the USB dongle as it's shown in the tutorial.

mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
嗨tmiranda,

嗨tmiranda,

  1. 我没有问题,FW将检查图像,当第一次刻录闪存中的多部分时,可以使用相同的图像以避免相同的图像错误。
  2. 两个内存银行是您声明的不同地址,没有任何文档将解释Suota的内部工作,您可以查看Suota实现和efferic_bootloader项目。
  3. 您的意思是写下自己的主机,将连接到外设并更新图像?支持站点上可用Android和IOS的源代码,并且还有一个示例在执行upota更新的Windows应用程序中,与UART的585个BLE模块通信。您将能够在SDK 6.0.6中找到da14585_sdk \ 6.0.6.427 \ projects \ host_apps \ windows \ suota中的源代码。

谢谢mt_dialog.

Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
1 - As it's said in the AN-B

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 - 谢谢,我稍后会检查它们。

mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
嗨tmiranda,

嗨tmiranda,

Tested this with ble_app_ota same versions in both banks on the SPI mutlipart.bin, i am not able to replicate what you are reporting, are you certain that you dont mix up the the header files and that the image that you download has a different image header version than the one located in the specific bank or its different from at least one of the two banks ?

谢谢mt_dialog.

Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
I was trying with the prox

I was trying with the prox_reporter. I've changed to the ble_app_ota now.

以下是对于我在SPI内存中刻录的前两个图像(相同的图像)和fw_multi_part_spi.bin生成的输出。

############# FREE SCRIPT FOR CREATING DA1458x MULTI PART IMAGE ###################
################### version :: sw_v_0000.00003 ##################################
#############在2017年开发Janua #####################################
hex2bin v1.0.10, Copyright (C) 2012 Jacques Pelletier & contributors
最低地址= 003c0000
最高地址= 003C6927
Pad Byte = FF
8位校验和= A8
hex2bin v1.0.10, Copyright (C) 2012 Jacques Pelletier & contributors

最低地址= 003c0000
最高地址= 003C6927
Pad Byte = FF
8位校验和= A8
hex2bin v1.0.10, Copyright (C) 2012 Jacques Pelletier & contributors

最低地址= 003c0000
最高地址= 003c18a7
Pad Byte = FF
8-bit Checksum = 98

INFO :: 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成功创建。##########################################################################

As you can see, the checksum for both images (fw_1 and fw_2, I suppose) are the same, so it should be the same image.

要创建第二个图像,我已更改设备的名称和SDK_VERSION信息,并在教程中介绍它。我使用iTunes向我的手机发送了两个副本。下面是第二个图像的Python脚本的输出。

############# FREE SCRIPT FOR CREATING DA1458x MULTI PART IMAGE ###################
################### version :: sw_v_0000.00003 ##################################
#############在2017年开发Janua #####################################
hex2bin v1.0.10, Copyright (C) 2012 Jacques Pelletier & contributors

最低地址= 003c0000
最高地址= 003c692f
Pad Byte = FF
8-bit Checksum = 8F
hex2bin v1.0.10, Copyright (C) 2012 Jacques Pelletier & contributors

最低地址= 003c0000
最高地址= 003c692f
Pad Byte = FF
8-bit Checksum = 8F
hex2bin v1.0.10, Copyright (C) 2012 Jacques Pelletier & contributors

最低地址= 003c0000
最高地址= 003c18a7
Pad Byte = FF
8-bit Checksum = 98

INFO :: 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] Padding (FF's)
''输出\ fw_image_2.img'
[00019970]填充(FF)
[0001F000]产品标题
fw_multi_part_spi.bin成功创建。
##########################################################################

同样,相同的校验和,因为我正在创建一个具有相同.hex文件的两个图像,它与存储在我内存上的那些不同。当我在手机上使用Suota应用程序上传它们时,我仍然得到相同的错误消息。我不知道我在这里做错了什么。

mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
嗨tmiranda,

嗨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.

Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
你好,

你好,

我已经完成了上述步骤,更改了一点 - 我需要运行hex2bin.exe程序以创建二进制文件,因为构建过程只返回一个十六进制文件,然后运行mkimage.exe文件。我仍然收到同样的错误。你能指出我在哪里可以找到更多关于调试的信息吗?我只看到了教程的示例,我不知道如何执行它。我制作了一个视频,逐步展示了我正在做的事情。链接以下。

https://www.youtube.com/watch?v=xkdkw0cdwko.
https://www.youtube.com/watch?v=22lio55nfvu.

提前致谢。

mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
嗨tmiranda,

嗨tmiranda,

没有文档将逐步描述一步一步调试方法,您可以做的是在闪存中的多部分图像并运行应从Keil启动的图像以调试它,就像我在我的情况下描述它一样之前的帖子和i ve也表示您应该检查的功能。此外,您已附加的视频似乎无法使用。

谢谢mt_dialog.

Tmiranda.
离线
最后一次露面:2 years 4 months ago
加入:2017-11-16 18:00
视频在哪里

那些在特定模式的视频,我刚刚改变了它,你现在可以看到它们。

mt_dialog.
离线
最后一次露面:2 weeks 22 hours ago
职员
加入:2015-06-08 11:34
我没有看到任何错误

我在上传的视频上没有看到任何错误,我已经附加了一个.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.

附件:
HM.
离线
最后一次露面:6个月2周前
加入:2018-04-19 13:53
Hi Dialog, are you sure the

嗨对话框,你确定suota还可以吗?我已经改变了img和sw版本,这么多次,结果始终是“相同的图像错误”,我想也许引导加载程序始终检查同一个图像,而不是我上传的东西?
Tmiranda先生不发生问题,我不知道他是否解决了这个问题。

HM.
离线
最后一次露面:6个月2周前
加入:2018-04-19 13:53
i use the following command

我使用以下命令'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 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'相同的图像错误'。

PM_DIALOG.
离线
最后一次露面:16 hours 17 min ago
职员
加入:2018-02-08 11:03
嗨HM,

嗨HM,

We are trying to replicate your problem in order to give you instruction to solve your issue. We will let you know as soon as possible.

谢谢,PM_DIALOG.

mrlambchop
离线
最后一次露面:1 year 6 months ago
加入:2017-02-01 07:35
我跑进“同样的

我也与RCU_585应用程序一起运行到“相同的图像”错误。

I can use the instructions from Appendix C of the software guide to run "mk_suota_img.bat" and generate "rcu_585_suota.bin". I can flash that bin with SmartSnippets and see it in the SUOTA app with my software version.

然后我清理我的项目,用新版本和构建日期修改“user_config_sw_ver.h”,重建,然后再次使用“mk_suota_img.bat”来生成一个新的.img文件。我将新版本的版本.img文件加载到我的Android手机上,而是使用Suota应用程序获取“相同的图像”错误。

im_dialog.
离线
最后一次露面:2周6天前
加入:2016-12-06 22:25
你好,

你好,

I just tried this myself and got it to work (using the SUOTA App to upgrade the firmware in a Voice RCU development kit). A couple of things to check:

- 您需要更新user_config_sw_ver.h文件中的版本号和构建日期。
- 如果您在更新这些值时注释出原始版本和日期,请确保将最新信息显示在文件的顶部。以下作品:

#define SW_VERSION "v_v_7.141.3.18"
#define SW_VERSION_DATE "2018-11-08 17:04"

//#define SW_VERSION "v_v_6.140.2.17"
//#define sw_version_date“2017-10-07 16:03”

但这不是生成图像的脚本,它忽略了评论并只使用它发现的第一个版本和日期,将包含包含旧信息的图像(以及相同图像错误的可能性):

//#define 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.