嗨,对话框中,
我们遇到了一个奇怪的问题。试图用SUOTA prox-repoter SDK示例。启用了suota固件运行好,甚至上传suota应用的新形象;然而,当设备重新启动固件更新即不是从旧版本还是引导。同样的步骤,同样的弗兰克-威廉姆斯Dev-kit职业工作正常和弗兰克-威廉姆斯被更新。
这里的问题是什么?
你好,穆
因为这个问题发生,我想,在一个自定义的板,而不是开发工具包,我只能猜测可能出错,图像更新以来,你提到,那么问题应该由ble_suota_loader引起的。当设备重新启动,目前有任何问题图片下载然后它会引导ble suota装载机而不是以前的形象因为这应该尽快覆盖的新设备启动引导程序(奇怪的)。
你可以做什么来调试这是#定义dg_configDEBUG_TRACE为了打印消息尽快引导装载程序打印它的执行。我可以假设是,当下载新形象引导装载程序并不认为一个有效的标题(0 x70 0 x61)相应的弥补,所以不经过图像的更新(如果图像是有效的)或擦除图像(如果图像是无效的),他的靴子与当前图像。所以一个良好的开端ble_suota_loader调试。你还可以验证使用智能片段如果NVMS_FW_UPDATE_PART SUOTA更新后的数据。
由于MT_dialog
谢谢你的回复,在这种情况下不应该装置启动后被困吗?但是我们的设备重启后不困,与前面的弗兰克-威廉姆斯继续工作。
不,如果有问题新更新的图像ble_suota_loader会检查当前图像如果当前图像是好的那么这就是会被执行。当前图像的加载程序发现错误也保佑suota装载机将开发一个基本的保佑应用程序只有suota服务。在任何情况下该设备将广告的图片(新的或当前图像)或用一个简单的SUOTA启用项目和它不会卡住。
我们有检查了NVMS_FW_UPDATE_PART通过工具箱和没有被写在(只有定制DUT的情况下)原因可能是什么?
这仍然是关于使用SUOTA定制DUT (dev-kit仍然运行良好)
我们进一步调查这个,当我们使用调试和遵循写入flash SUOTA它顺利的一部分,告诉我们,我们有写我们需要写的字节数(前512),但是当我们打开智能片段工具箱NVMS_FW_UPDATE_PART是空的。
我们试图写入NVMS_FW_UPDATE_PART程序中使用自定义代码,可以验证通过智能工具箱,NVMS_FW_UPDATE_PART片段精确值我们编写槽自定义幸福服务。我们使用ad_nvms_write()函数
我们缺少什么?我们需要做一些初始化吗?
这种行为没有明显的原因,没有国旗为了SUOTA应用程序正确写入适当的NVMS_FW_UPDATE_PART,因为这是复制SUOTA只运行定制的董事会,而不是开发工具包(我假设您正在使用的代码测试?)显然这是与您正在使用的h / w和s / w。
自从SUOTA应用程序更新正确我觉得这有点困难在写作过程是一个问题,我的意思是如果有写错了,应用程序将提到写作有点不对劲,外部存储器,所以为了测试这一点开始更新过程和中间的更新智能片段的连接工具(为了确保有执行写在flash以及更新验证第一图像分区是空的),试着读回的信息,分区和检查如果他们不包含任何或包含图像的一部分(不要让ble_suota_loader运行以来这可能擦除数据)。
如果它们不包含任何flash一定有毛病。如果是包含图像的一部分,那么什么是错误的与头文件和加载程序运行时它擦除整个更新图像。您还可以检查的抹去引导装载程序通过定义dgconfigDEBUG_TRACE和检查从引导装载程序代码的哪些部分。
另外也有可能是分区表ble_suota_loader知道和应用程序使用的是不同的,例如如果您使用的是不同的大小flash和你有一个自定义的分区表,自定义分区,ble_suota_loader也应该意识到,由于装载机使用默认USE_PARTITION_TABLE_1MB_WITH_SUOTA,所以其将获得的图像和数据是基于该分区。
flash的大小是1 m dev-kit一样。我们正在运行相同的代码对DUT dev-kit。
我们所做的是使用ad_nvms_read ad_nvms_write后()()用于SUOTA代码。和打印的字节。弗兰克-威廉姆斯写512年第一块正确但后来没有写。有时它进一步然后开始写。所以在引导装载程序启动时不得到有效的新标题图片,因为没有被写在0
是这里的问题呢?
下面给出的UART打印:(可以在0 x824开始出错
擦除头擦除0 36512年24日写的图像数据编写图像数据:24日[0]0 [1]80 [2]fd [3] 7 35 [4] [5] 1 [6] 2 [7] 8读取图像数据UPDT_PART 24日:[0]0 [1]80 [2]fd [3] 7 35 [4] [5] 1 [6] 2 [7] 8编写图像数据在512年224年写图像数据224:[0]0 [1][2]fc 7 [3] [4] c0 0 [5] [6] fc [7] 7阅读图像数据UPDT_PART 224: [0] 0 [1] [2] fc 7 [3] [4] c0 0 [5] [6] fc [7] 7编写图像数据在512年424年写图像数据424:27 [1][0]e0 0 [2] [3] 14 2 b[4][5]达25 [6]3 [7]阅读图像数据UPDT_PART 424: 27 [0] [1] e0 0 [2] [3] 14 2 b[4][5]达25 [6]3 [7]编写图像数据在512年624年624年写图像数据:[0]43 dd [1] [2] 0 [3] 9 b [4] 42 ab [5] [6] c5 [7] d1阅读图像数据UPDT_PART 624: [0] 43 dd [1] [2] [3] 0 9 b 42 ab [4] [5] [6] c5 [7] d1编写图像数据在512年824年824年写图像数据:[0]2 0 [1][2]fb[3]达10 [4][5]bd [6] [7] 0824年阅读图像数据UPDT_PART: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff写于512年a24图像数据写图像数据a24: [0] 7 39 [1] [2] [3] [4] 43 da [5] 86 [6] 70 [7] 47读取图像数据UPDT_PART a24: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff写于512年c24图像数据编写图像数据c24: [0] 30 [1] b5 40[2][3] 1[4] 0[5][6] 23日8 c [7] 7读取图像数据UPDT_PART c24: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff擦除1000年36写于512年e24图像数据编写图像数据e24:[0] 62[1] 88[2] 13 40[3][4] 6[5][6] 22日5 b [7] 9读取图像数据UPDT_PART e24: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff
什么是您正在使用的flash自定义呢?是一样的一个开发工具包?
我们使用GD25LQ80。http://www.xinyahong.com/upLoad/product/month_1411/201411181636261776.pdf它有类似规格的用于dev-kit
有样本mem-test程序,我们可以使用它来检查flash的完整性?SUOTA问题是我们当前dut的持续在所有
我们已经算出了这个问题。问题是我们的flash不正确配置和custom_config_qspi_suota主要应用程序和custom_config_qspi引导装载程序没有正确定义的默认配置bsp_defaults被加载比我们的设备有不同的闪光的闪光。包括以下行custom_config_qspi_suota在主应用程序和custom_config_qspi引导装载程序,解决了这个问题:/ / FLAH配置#定义dg_configFLASH_HEADER_FILE“qspi_gd25lq80b.h”#定义dg_configFLASH_MANUFACTURER_ID GIGADEVICE_ID#定义dg_configFLASH_DEVICE_TYPE GD25LQ_SERIES#定义dg_configFLASH_DENSITY GD25LQ80B_SIZE
我认为对话框应该包括适当的设置指南嗯- b - 056软件开发人员指南。
这些设置是gd25lq80b flash芯片;请参阅部分10.2.1.4嗯- b - 044软件平台参考适当的设置不同的闪光
你好,穆
因为这个问题发生,我想,在一个自定义的板,而不是开发工具包,我只能猜测可能出错,图像更新以来,你提到,那么问题应该由ble_suota_loader引起的。当设备重新启动,目前有任何问题图片下载然后它会引导ble suota装载机而不是以前的形象因为这应该尽快覆盖的新设备启动引导程序(奇怪的)。
你可以做什么来调试这是#定义dg_configDEBUG_TRACE为了打印消息尽快引导装载程序打印它的执行。我可以假设是,当下载新形象引导装载程序并不认为一个有效的标题(0 x70 0 x61)相应的弥补,所以不经过图像的更新(如果图像是有效的)或擦除图像(如果图像是无效的),他的靴子与当前图像。所以一个良好的开端ble_suota_loader调试。你还可以验证使用智能片段如果NVMS_FW_UPDATE_PART SUOTA更新后的数据。
由于MT_dialog
谢谢你的回复,在这种情况下不应该装置启动后被困吗?但是我们的设备重启后不困,与前面的弗兰克-威廉姆斯继续工作。
你好,穆
不,如果有问题新更新的图像ble_suota_loader会检查当前图像如果当前图像是好的那么这就是会被执行。当前图像的加载程序发现错误也保佑suota装载机将开发一个基本的保佑应用程序只有suota服务。在任何情况下该设备将广告的图片(新的或当前图像)或用一个简单的SUOTA启用项目和它不会卡住。
由于MT_dialog
嗨,对话框中,
我们有检查了NVMS_FW_UPDATE_PART通过工具箱和没有被写在(只有定制DUT的情况下)
原因可能是什么?
嗨,对话框中,
这仍然是关于使用SUOTA定制DUT (dev-kit仍然运行良好)
我们进一步调查这个,当我们使用调试和遵循写入flash SUOTA它顺利的一部分,告诉我们,我们有写我们需要写的字节数(前512),但是当我们打开智能片段工具箱NVMS_FW_UPDATE_PART是空的。
我们试图写入NVMS_FW_UPDATE_PART程序中使用自定义代码,可以验证通过智能工具箱,NVMS_FW_UPDATE_PART片段精确值我们编写槽自定义幸福服务。我们使用ad_nvms_write()函数
我们缺少什么?我们需要做一些初始化吗?
你好,穆
这种行为没有明显的原因,没有国旗为了SUOTA应用程序正确写入适当的NVMS_FW_UPDATE_PART,因为这是复制SUOTA只运行定制的董事会,而不是开发工具包(我假设您正在使用的代码测试?)显然这是与您正在使用的h / w和s / w。
自从SUOTA应用程序更新正确我觉得这有点困难在写作过程是一个问题,我的意思是如果有写错了,应用程序将提到写作有点不对劲,外部存储器,所以为了测试这一点开始更新过程和中间的更新智能片段的连接工具(为了确保有执行写在flash以及更新验证第一图像分区是空的),试着读回的信息,分区和检查如果他们不包含任何或包含图像的一部分(不要让ble_suota_loader运行以来这可能擦除数据)。
如果它们不包含任何flash一定有毛病。如果是包含图像的一部分,那么什么是错误的与头文件和加载程序运行时它擦除整个更新图像。您还可以检查的抹去引导装载程序通过定义dgconfigDEBUG_TRACE和检查从引导装载程序代码的哪些部分。
另外也有可能是分区表ble_suota_loader知道和应用程序使用的是不同的,例如如果您使用的是不同的大小flash和你有一个自定义的分区表,自定义分区,ble_suota_loader也应该意识到,由于装载机使用默认USE_PARTITION_TABLE_1MB_WITH_SUOTA,所以其将获得的图像和数据是基于该分区。
由于MT_dialog
flash的大小是1 m dev-kit一样。
我们正在运行相同的代码对DUT dev-kit。
我们所做的是使用ad_nvms_read ad_nvms_write后()()用于SUOTA代码。和打印的字节。
弗兰克-威廉姆斯写512年第一块正确但后来没有写。有时它进一步然后开始写。所以在引导装载程序启动时不得到有效的新标题图片,因为没有被写在0
是这里的问题呢?
下面给出的UART打印:(可以在0 x824开始出错
擦除头
擦除0 36
512年24日写的图像数据
编写图像数据:24日[0]0 [1]80 [2]fd [3] 7 35 [4] [5] 1 [6] 2 [7] 8
读取图像数据UPDT_PART 24日:[0]0 [1]80 [2]fd [3] 7 35 [4] [5] 1 [6] 2 [7] 8
编写图像数据在512年224年
写图像数据224:[0]0 [1][2]fc 7 [3] [4] c0 0 [5] [6] fc [7] 7
阅读图像数据UPDT_PART 224: [0] 0 [1] [2] fc 7 [3] [4] c0 0 [5] [6] fc [7] 7
编写图像数据在512年424年
写图像数据424:27 [1][0]e0 0 [2] [3] 14 2 b[4][5]达25 [6]3 [7]
阅读图像数据UPDT_PART 424: 27 [0] [1] e0 0 [2] [3] 14 2 b[4][5]达25 [6]3 [7]
编写图像数据在512年624年
624年写图像数据:[0]43 dd [1] [2] 0 [3] 9 b [4] 42 ab [5] [6] c5 [7] d1
阅读图像数据UPDT_PART 624: [0] 43 dd [1] [2] [3] 0 9 b 42 ab [4] [5] [6] c5 [7] d1
编写图像数据在512年824年
824年写图像数据:[0]2 0 [1][2]fb[3]达10 [4][5]bd [6] [7] 0
824年阅读图像数据UPDT_PART: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff
写于512年a24图像数据
写图像数据a24: [0] 7 39 [1] [2] [3] [4] 43 da [5] 86 [6] 70 [7] 47
读取图像数据UPDT_PART a24: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff
写于512年c24图像数据
编写图像数据c24: [0] 30 [1] b5 40[2][3] 1[4] 0[5][6] 23日8 c [7] 7
读取图像数据UPDT_PART c24: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff
擦除1000年36
写于512年e24图像数据
编写图像数据e24:[0] 62[1] 88[2] 13 40[3][4] 6[5][6] 22日5 b [7] 9
读取图像数据UPDT_PART e24: [0] ff [1] ff [2] ff [3] ff [4] ff [5] ff [6] ff [7] ff
你好,穆
什么是您正在使用的flash自定义呢?是一样的一个开发工具包?
由于MT_dialog
我们使用GD25LQ80。http://www.xinyahong.com/upLoad/product/month_1411/201411181636261776.pdf
它有类似规格的用于dev-kit
有样本mem-test程序,我们可以使用它来检查flash的完整性?SUOTA问题是我们当前dut的持续在所有
嗨,对话框中,
我们已经算出了这个问题。问题是我们的flash不正确配置和custom_config_qspi_suota主要应用程序和custom_config_qspi引导装载程序没有正确定义的默认配置bsp_defaults被加载比我们的设备有不同的闪光的闪光。包括以下行custom_config_qspi_suota在主应用程序和custom_config_qspi引导装载程序,解决了这个问题:
/ / FLAH配置
#定义dg_configFLASH_HEADER_FILE“qspi_gd25lq80b.h”
#定义dg_configFLASH_MANUFACTURER_ID GIGADEVICE_ID
#定义dg_configFLASH_DEVICE_TYPE GD25LQ_SERIES
#定义dg_configFLASH_DENSITY GD25LQ80B_SIZE
我认为对话框应该包括适当的设置指南嗯- b - 056软件开发人员指南。
这些设置是gd25lq80b flash芯片;请参阅部分10.2.1.4嗯- b - 044软件平台参考适当的设置不同的闪光