如何创建配置的SUOTA

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
8个帖子/ 0新
最后发表
Ryon
离线
最后看到:2个月前1年
加入:2019-06-26 08:04
如何创建配置的SUOTA

你好,

我不知道如何在Ble_Peripheral项目项目中创建配置的配置。

据我所知,pxp_reporter这个项目具有SUOTA的功能。但是我不知道如何配置ble_peripheral项目。

我已经阅读了UM-B-056-DA1468x_software_Developers_Guide_6V0的PDF,但它只介绍了如何制作.img文件。

我不知道哪些项目或配置应该添加到ble_peripheral项目中。

请建议我该怎么做才能让我的项目具有拟议的功能。

谢谢。

设备:
PM_Dialog
离线
最后看到:2周3天前
工作人员
加入:2018-02-08 11:03
嗨Ryon,

嗨Ryon,

是的,SDK的PXP_Reporter示例包括Suota功能,您可以将其作为参考。让我在BLE_PERITIELAL示例中分享添加拟文单的一些提示。

  1. 添加custom_config_qspi.hconfig文件夹下从pxp_reporter到ble_peripheral的头文件。以下两个宏定义用于SUOTA支持。在SUOTA构建配置中构建项目时,会包含custom_config_qspi_suota.h,并自动排除custom_config_qspi.h。为此,不需要在源文件中包含custom_config_qspi_suota.h。
#define dg_configIMAGE_FLASH_OFFSET(0x20000) #define dg_configSUOTA_SUPPORT(1)

  1. 遵循dg_configsuota_suppor.T宏,你应该在ble_peripheral_task.c中做同样的修改。
    1. 包括的dlg_suota.hsw_version.h.头文件
    2. 添加initialised_privileged_data静态bool suota_ongoing = false;
    3. 修改BLE外设的广告数据。例如:
static const uint8_t adv_data[] = {0x03, GAP_DATA_TYPE_UUID16_LIST_INC, 0xF5, 0xFE, 0x06, GAP_DATA_TYPE_LOCAL_NAME, 'S', 'U', 'O', 'T', 'A'};
  1. 像pxp_reporter_task.c中那样添加适当的回调函数。
  1. 然后,您应该创建一个新的分区表。ble_peripehral项目中不包含SUOTA分区表,因此您应该创建自己的分区表。我建议你们读一下章节3.非易失性存储器Flash适配器的概念Demostrates如何创建新分区条目的教程。您可以使用以下1M辅导分区表。
  2. 分区2(0x000000处,0x01E000,NVMS_FIRMWARE_PART,0)分区2(0x01E000,0x001000,NVMS_PRODUCT_HEADER_PART,0)分区2(0x01F000,0x001000,NVMS_IMAGE_HEADER_PART,0)分区2(0x020000,0x050000,NVMS_FW_EXEC_PART,0)分区2(0x070000,0x00D000,NVMS_LOG_PART,0)分区2(0x07D000,0x002000,NVMS_PLATFORM_PARAMS_PART,PARTITION_FLAG_READ_ONLY)分区2(0x07F000,0x001000,NVMS_PARTITION_TABLE,PARTITION_FLAG_READ_ONLY)分区2(0x080000,0x010000,NVMS_PARAM_PART,0)分区2(0x090000,0x051000,NVMS_FW_UPDATE_PART,0)分区2(0x0E1000,0x01F000,NVMS_GENERIC_PART,PARTITION_FLAG_VES)

  3. ble_suota_loader中应该包含相同的分区。

请遵循以上步骤,如果您有任何后续问题,请告诉我。

谢谢,PM_Dialog

Ryon
离线
最后看到:2个月前1年
加入:2019-06-26 08:04

你好,

谢谢你的回复。

我遵循上述步骤,但我找不到以下配置中的源代码项目:

DA14683-00-Release_QSPI_SUOTA

我也没有找到任何关于如何包含一个新的构建配置的相关手册。我能从pxp_reporter导入它吗?

当我从pxp_report ?

所以我想知道如何构建配置DA14683-00-Release_QSPI_SUOTA。

PM_Dialog
离线
最后看到:2周3天前
工作人员
加入:2018-02-08 11:03
嗨Ryon,

嗨Ryon,

  1. 在SmartSnippets Studio的“Project Explorer”中导入ble_peripheral和pxp_reporter项目。
  2. 右键单击ble_peripheral,然后选择“属性”
  3. 在弹出窗口中,从左侧菜单导航到“C/ c++ Build”。
  4. 在右下角,您将看到“Manage Configurations…”,因此请点击她,以便为SUOTA添加构建配置。
  5. 选择“新……”
  6. 在适当的字段中输入“Name”和“Description”。你可以给这个名字“DA14683-00-Release_QSPI_SUOTA”
  7. 选择“Import from projects”并选择pxpx_reporter > DA14683-00-Release_QSPI_SUOTA并点击“OK”。

谢谢,PM_Dialog

Ryon
离线
最后看到:2个月前1年
加入:2019-06-26 08:04
你好,

你好,

我按照您上面描述的步骤配置了项目。

并具有OTA功能。但是8秒后,应用无法工作,因为它不能播放,SUOTA的APP无法扫描。

当我减少代码大小时,它将工作得很好。内存设置不正确?如果没有,我该怎么办

谢谢

PM_Dialog
离线
最后看到:2周3天前
工作人员
加入:2018-02-08 11:03
嗨Ryon,

嗨Ryon,

你能解释一下下面的问题吗?

“当我减少代码大小时,它将工作得很好。”内存设置不正确?如果没有,我该怎么办?”

您是否在ble_peripheral_task.c中进行了所有适当的修改?请检查您是否使用了正确的分区表?如果您遵循pxp_reporter项目和我提供的提示,您应该能够添加SUOTA特性。

谢谢,PM_Dialog

Ryon
离线
最后看到:2个月前1年
加入:2019-06-26 08:04

你好,

是的,我已经在ble_peripheral_task.c中做了所有适当的修改,并且使用了pxp_reporter project(1M)的分区表。

但是我已经在我的自定义项目上添加了一些功能,所以它没有工作,当我注释掉我的代码时,它将工作。

内存的具体配置如下:

#define dg_configQSPI_CACHED_OPTIMAL_RETRAM_0_SIZE_AE (64 * 1024)
#define dg_configQSPI_CACHED_RAM_SIZE_AE (32 * 1024)
#define dg_configQSPI_CACHED_RETRAM_0_SIZE_AE (96 * 1024) #define dg_configQSPI_CACHED_RETRAM_0_SIZE_AE

内存配置是否正确?

PM_Dialog
离线
最后看到:2周3天前
工作人员
加入:2018-02-08 11:03
嗨Ryon,

嗨Ryon,

您能否注明固件的大小?我假设您的自定义代码完全具有Suota功能的功能。代码卡在哪里?你能调试吗?

谢谢,PM_Dialog