This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2340R5:关于 OAD 更新地址模式

Guru**** 2481465 points
Other Parts Discussed in Thread: CC2340R5, UNIFLASH

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1292499/cc2340r5-about-oad-update-address-mode

器件型号:CC2340R5
主题中讨论的其他器件: UNIFLASH

大家好!

我对在 CC2340上执行 OAD 更新时每个应用的地址模式有疑问。

在 simplelink_lowpower_f3_SDK_7_20_01_10中、basic_ble_oad_onchip 的 AddressMode 默认为公共地址。 这会导致 OAD 更新成功。

但是,如果我将"地址模式"更改为带有公共 ID 的 RPA,更新将失败。 不希望使用带有公共 ID 的 RPA 更新 OAD?

◆环境
・LP_EM_CC2340R5
・simplelink_lowpower_f3_SDK_7_20_01_10
・Uniflash 8.40
・SimpleLinkConnect 1.3.3与 IOS16.6.1

此致、

真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    感谢您与我们联系。 您能否指定 OAD 如何发生故障? 是在基本控制器侧还是 SimpleLink 连接侧出现错误? 您能分享错误吗? 作为快速测试、您是否可以抓取第二个板、闪存 host_test 并尝试使用 btool 执行 OAD?

    此致、

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan

    感谢您在另一个问题上的帮助。

    我还在确认、但我会分享我目前掌握的信息。

    ①About μ V 错误状态
    发生这种情况时、OAD 更新将不会继续。 此时、PC 已转至持久应用并处于睡眠状态(广播状态)。

    换言之、持久应用程序运行没有任何问题、但无法连接到智能手机。

    虽然我认为 RPA 需要键合来固定 IRK

    我认为 SDK 的默认片上和 persistent 不执行绑定、因此 IRK 无法跟踪地址、因此失败。

    我启用了绑定、但发生了以下错误。

    这不仅出现在参考板上、而且出现在正在开发的器件上。

    您是否知道有关此错误的任何信息?

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jan.

    虽然由于参考委员会的连接,审判次数很少,但我确认它适用于 BTool。


    具有公共 ID 的片上和永久 RPA 无法更新。

    已成功更新片上和永久公有地址。

    由于试验次数太少,我想借用另一个设备进行测试。 此时您是否发现了任何问题?

    此致。

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    Jan 离开办公室到下周。

    请耐心听我们说。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    高克莱门特

    感谢您联系我。

    此致

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    您能否确认 BTool 的哪些工作原理? 是否也仅使用 PA 或 RPA 的 OAD?

    同时、您是否有可以用来弄清调试失败原因的嗅探器?

    Br、


    大卫

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、David

    当片上和 persistent 处于 PA 模式时、我成功更新了 BTool。 当两者都是 RPA 时、BTool 更新始终失败。

    当 RPA 失败时、BTool 会显示一条更新失败的消息。 此外、持久应用程序也在进行广播。

    即使此更新失败、持续应用程序仍在广播的此问题也会由 SimpleLinkConnect 确认。

     

    目前的问题如下。  两个地址都是 RPA。 此外、对于① Ω 和③ Ω、只有 PA⇒RPA 从片上和持久 syscfg 更改为其他类型。
    在 μ ②中、⇒PA RPA 之外、配对模式也从"等待配对请求"更改为"启动配对请求"。

    ①SimpleLinkConnect 无法更新、持久应用正在进行广播。

    ②SimpleLinkConnect 无法更新。 此时将显示一条警报、指示未找到 OAD 服务、如下图所示。 另外、与 n ü ①不同、持久应用程序不进行广播。

    ③Btool 无法更新。 持久应用程序是广播。

    我注意到、如果绑定信息未保存在操作系统端、则会出现①和③。

    如果可以根据映像中所示的操作系统设置确认绑定信息、则不会复制绑定信息。

    由于绑定信息未在操作系统端保存、因此我认为 irk 密钥未正确保存、central 无法跟踪外设(永久应用程序)的地址。  由于无法跟踪外设、持久应用程序将继续进行广播。

    与 n ü ①不同、在 n ü ②中、我可以确认绑定信息是在 OAD 更新之前配对期间在智能手机上注册的。 然后、 将复制②、而不是①

    我想在 BTool 上注册绑定信息、但我不知道如何注册。 连接后、我尝试保存 LTK 并断开连接和重新连接、但绑定信息未显示在 Windows 蓝牙设置中。
    是否可以使用 BTool 在 Windows 上显示绑定信息?  这样、我就会看到 BTool 的以下问题。

    为了嗅探、我可以使用 Wireshark。

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    感谢您提供的详细帮助。 请让我们一直等到周一再讲解、并尝试使用可闻嗅探器检查问题。

    要确认两个器件已配对和绑定、嗅探器也可以是一个很好的参考点、而不是在 Windows 上显示该信息。

    Br、

    大卫。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,David

    我懂了。 确认。

    我还有其他工作要做,因此确认本身可能是在本周三。

    请稍等片刻。

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    没问题! 请在您有时间自行测试时告知我们。

    此致、

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan、

    很抱歉我让你等了。

    附加监听文件。

    e2e.ti.com/.../sniffing-files.zip

    我使用的是称为蓝牙虚拟监听器(btvs.exe)的虚拟监听器、可能无法收集 Jan 需要的数据包。

    请告诉我是否缺少数据包中的信息。

    收集计时将在配对后和更新前开始。

    收集时间结束时、更新开始并出现错误、或者更新继续且进度条移动。

    随附文件是对原始 Whir$a 的捕获、以及对文件进行多次不必要的处理、并将其滤除。

    以公有形式编写的文件具有基本和持久的公共地址类型。
    以 RPA 编写的文件具有基本和持久的地址类型作为 RPA。
    以 wait 写入的文件的配对模式为基本配对模式和持久配对模式、则为"Wait for a pair request (等待配对请求)"。
    以启动模式编写的文件会将基本和持久配对模式设置为"启动配对请求"。

    根据我的检查、SimpleLink 和 BTool 在 RPA 环境中始终都失败。

    ◆Ω env
    Windows 10专业版
    CCS12.4
    simplelink_lowpower_f3_SDK_7_20_01_10和 BTool

    iPhone13 mini iOS17.1.2
    SimpleLinkConnect 1.3.3

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    我懂了。 感谢您发送编修。 能否指定是否已经对项目进行了任何修改(除了更改寻址模式)? 如果可能的话、我希望尽量在我的最后重现此示例。 您能否分享一下是否也是 Android 设备上发生的行为?

    此致、

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan
    可以。 在地址模式之外、flash_map_backend.h 被改变。
    下面列出了所有更改。

    ◆mcuboot_LP_EM_CC2340R5_nortos_ticlang

    将 flash_map_backend.h 更改为以下内容

    #elif defined DeviceFamily_CC23X0R5
        #define BOOTLOADER_BASE_ADDRESS             0x00000000
        #define BOOT_BOOTLOADER_SIZE                0x00006000
    
    //    #define BOOT_PRIMARY_1_BASE_ADDRESS         0x00006000
    //    #define BOOT_PRIMARY_1_SIZE                 0x0003d000
    
    //    #define BOOT_SECONDARY_1_BASE_ADDRESS       0x00043000
    //    #define BOOT_SECONDARY_1_SIZE               0x0003d000
    
        #define BOOT_PRIMARY_1_BASE_ADDRESS         0x00006000
        #define BOOT_PRIMARY_1_SIZE                 0x0002c000
    
        #define BOOT_SECONDARY_1_BASE_ADDRESS       0x00032000
        #define BOOT_SECONDARY_1_SIZE               0x0004a000
    #else

    ◆basic_ble_oad_onchip_LP_EM_CC2340R5_freertos_ticlang

    从 basic_ble_oad 的 syscfg 中更改地址模式和配对模式。

    ◆based_persistent_LP_EM_CC2340R5_freertos_ticlang

    同样、根据具体条件更改持久应用程序。

    我还将附加 Hex。
    更改了 FLASH_MAP_backend。
    将基本应用设置为"具有公共 ID 的 RPA "和"启动配对重新排队"
    这是十六进制代码、具有持久应用程序集、设置为"具有公共 ID 的 RPA "和"启动配对重新排队"。

    e2e.ti.com/.../Hex.zip

    至于 Android、我没有、所以我要求其他成员确认。

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    我懂了。 您能解释一下为什么修改了  FLASH_MAP_backend? 我不希望这会对行为产生影响、但为了安全起见、您是否仍然看到原始 FLASH_MAP_backend 有问题? 另外、请告知我 Android 版本是否有相同的行为。

    此致、

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan

    我只知道如何更改 FLASH_MAP_Backend、因此如果不进行更改、我想知道需要采取的步骤。

    我认为 FLASH_MAP_backend 中的更改可能会产生影响。

    我是否应该只编译 SDK 而不更改任何内容并获取十六进制?

    在这种情况下、我应该在 Uniflash 中输入什么地址?

    请稍候、等待 Android。

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan

    我请另一位成员尝试之前在 Android 上附加的 Hex.zip。

    据说、使用 SimpleLinkConnect 成功进行了3次更新。

    我在 iPhone 13 mini 上再次尝试了它。

    正如预期的那样、更新失败、进度不继续。

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    我懂了。 根据测试、问题似乎已在应用程序的 iOS 版本中本地化。 您能否在 iOS 端共享您正在使用的 SimpleLink Connect 应用程序的特定版本?

    此致、

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan

    SimpleLinkConnect 版本为1.3.3

    iOS 版本为17.1.2。

    此致、

    真崎市

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Masaki、

    感谢您的评分 我已提交此错误、因此移动软件团队会尽快解决此问题。 对于给您带来的不便、我深表歉意。 我期望,一旦错误被修复,那么 iOS 设备的行为将与 Android 设备现在的行为相同。

    此致、

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    大家好、Jan

    我懂了。 我希望它能够得到修复并正常工作。

    感谢您的配合。

    此致、

    真崎市