跳过主要内容

自定义板DA14580的SUOTA错误"INVALID PRODUCT HEADER"

DA14580

4年前

自定义板DA14580的SUOTA错误"INVALID PRODUCT HEADER"

发布的shrikrishna.katore0点 3回复
0的问题

嗨,对话框中,

我有定制的DA14580板。
我正在尝试更新我的固件(Image1)到它使用SUOTA IOS APP第一次我得到成功时,我试图更新相同的图像,我得到“相同的图像错误”作为预期。
当我更新NewFirmware (Image2),它显示成功,但当我试图更新旧的Firmware版本(Image1),我得到“无效产品头”。
之后我就不能更新固件了,既不能更新也不能更新
有什么问题吗?

谢谢,
Shrikrishna。

4年前

MT_dialog -30点

嗨shrikrishna.katore,

如果您得到这种代码,这意味着产品报头已损坏,SUOTA期望从产品报头读取图像的位置,在这样做之前,它检查产品报头签名,从位置0x1F000是0x70和0x52,如果产品报头与我提到的签名字节不匹配,那么应用程序将返回INVALID product header消息。因此,您可以在特定位置检查flash,并检查数据是否与产品头部签名的数据匹配。

由于MT_dialog

3年前

mliu 0点

你好,

我得到了同样的错误。
我使用DA14583子卡和DA14580主板。
fw_multi_part_spi.bin被刻录到芯片内的flash中。
女儿板正在做广告。iPhone上的SUOTA与子卡相连。
当我发送fw_image_2。img到子卡,我得到“错误:无效的产品头”消息。

我使用智能代码片段工具检查了product头部和fw_image_2.img。
两个标题都是正确的。在secondary_bootloader项目中的bootloader.h文件中,
产品头部签名定义为7052,图像头部定义为7051。

有什么问题吗?

谢谢。

3年前

MT_dialog -30点

嗨,麋鹿,

在这种情况下,可能从flash返回的数据不正确(你是使用自定义fw还是BLE的例子之一?),你可以做的是准备一个多部分的图像,通过keil运行相同的fw,然后在第899行app_read_image_headers()函数的app_spot .c文件中放置一个断点,所以当设备正在运行并连接到SUOTA电话应用程序时,点击更新按钮,所以fw应该到达断点,你可以检查设备在访问flash获取产品报头数据时读取的值是什么,如果数据不正确,fw应该返回SPOTAR_INVAL_PRODUCT_HDR。

由于MT_dialog