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.

[参考译文] MSP430F5510:BSL-Scripter 失败、[ERROR_MESSAGE]数据未完全传输! 重新刷写 HID 目标时、但仅在 Microsoft Surface Pro 上。 在其他计算机上工作正常。

Guru**** 2187225 points
Other Parts Discussed in Thread: MSP430F5510, MSP-FET
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/570008/msp430f5510-bsl-scripter-fails-with-error_message-data-is-not-completely-transmitted-when-re-flashing-a-hid-target-but-only-on-microsoft-surface-pro-works-fine-on-other-computers

器件型号:MSP430F5510
主题中讨论的其他器件: MSP-FET

我看到的问题是、BSL 脚本编写器在一台计算机上能够完美地重新刷写在 MSP430F5510上运行的 USB HID 目标、但在另一台计算机上无法正常运行。 有问题的计算机可以使用 BSL 脚本程序以基于 UART 的器件为目标、我可以使用 MSP430Flasher 重新刷写 JTAG 目标。 在这两种情况下都使用相同的目标硬件、并使用相同的 MSP-FET 器件。

下面提供了有关该工具在其工作情况和不工作情况下的输出的更多信息、以及我正在馈送 BSL-Scripter 的脚本的副本。 是否有人知道此问题的根源是什么、或者可以采取哪些步骤来缩小原因?

在故障情况下、BSL 脚本编写器的输出为:

--------------------------------------
BSL Scripter 3.2.0
用于 BSL 编程的 PC 软件
2017年1月25日13:40:51
--------------------------------------
输入文件脚本为:D:/flashFiles/ScriptFile.txt

////////////////////////////////////////////////////////////////////////////
//将 RAM USB BSL 写入器件
////////////////////////////////////////////////////////////////////////////
模式5xx USB
//提供错误的密码在内存中执行批量擦除
RX_PASSWORD badPass.txt
   阅读 txt 文件 :D:\flashFiles\badPass.txt
   [ERROR_MESSAGE]BSL 密码错误!
RX_PASSWORD defaultPass.txt
   阅读 txt 文件 :D:\flashFiles\defaultPass.txt
   BSL 密码正确!
延迟1000
   延迟1000 ms
RX_DATA_BLOCK_FAST RAM_BSL_USB.txt
   阅读 txt 文件 :D:\flashFiles\RAM_BSL_USB.txt
   写入3602字节所用时间:0.07877秒
   数据写入速度:44.66(kb/s)
SET_PC 0x2504
   [ERROR_MESSAGE]数据未完全传输!

在另一台计算机(新的 HP Spectre 笔记本电脑)上工作正常、我获得以下输出:

--------------------------------------
BSL Scripter 3.2.0
用于 BSL 编程的 PC 软件
2017年1月25日19:38:52
--------------------------------------
输入文件脚本为:E:/flashFiles/ScriptFile.txt

////////////////////////////////////////////////////////////////////////////
//将 RAM USB BSL 写入器件
////////////////////////////////////////////////////////////////////////////
模式5xx USB
//提供错误的密码在内存中执行批量擦除
RX_PASSWORD badPass.txt
   阅读 txt 文件 :E:\flashFiles\badPass.txt
   [ERROR_MESSAGE]BSL 密码错误!
RX_PASSWORD defaultPass.txt
   阅读 txt 文件 :E:\flashFiles\defaultPass.txt
   BSL 密码正确!
延迟1000
   延迟1000 ms
RX_DATA_BLOCK_FAST RAM_BSL_USB.txt
   阅读 txt 文件 :E:\flashFiles\RAM_BSL_USB.txt
   写入3602字节所需的时间:0.07904秒
   数据写入速度:44.5 (KB/s)
SET_PC 0x2504
延迟3000
   延迟3000ms
////////////////////////////////////////////////////////////////////////////
//启动 RAM USB BSL 应用程序以下载该应用程序
////////////////////////////////////////////////////////////////////////////
模式5xx USB
RX_PASSWORD .\defaultPass.txt
   阅读 txt 文件 :E:\flashFiles\defaultPass.txt
   BSL 密码正确!
RX_DATA_BLOCK .\Firmware.txt
   阅读 txt 文件 :E:\flashFiles\Firmware.txt
   写入35213字节的时间:2.29秒
   数据写入速度:15.02(kb/s)
延迟500
   延迟500ms
RX_DATA_BLOCK RESET.txt
   阅读 txt 文件 :E:\flashFiles\RESET.txt
   写入35218字节所用时间:0.009502秒
   数据写入速度:3620(kb/s)
SET_PC 0x2504

使用的脚本文件"i"m 为:


////////////////////////////////////////////////////////////////////////////
//将 RAM USB BSL 写入器件
////////////////////////////////////////////////////////////////////////////
模式5xx USB
//提供错误的密码在内存中执行批量擦除
RX_PASSWORD badPass.txt
RX_PASSWORD defaultPass.txt
延迟1000
RX_DATA_BLOCK_FAST RAM_BSL_USB.txt
SET_PC 0x2504
延迟3000
////////////////////////////////////////////////////////////////////////////
//启动 RAM USB BSL 应用程序以下载该应用程序
////////////////////////////////////////////////////////////////////////////
模式5xx USB
RX_PASSWORD .\defaultPass.txt
RX_DATA_BLOCK .\Firmware.txt
延迟500
RX_DATA_BLOCK RESET.txt
SET_PC 0x2504

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

    约书亚、您好!


    请提供更多信息、了解您使用的 PC 和操作系统是什么?

    我在 Win7、Win8和 Win10中尝试了测试、到目前为止一切都按预期工作。

    就在昨天,Scripter 的固定版本已上载到 Web 上:

    您能否尝试此版本并查看行为是否相同?

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

    Fatmawati

    我使用的系统运行的是 Windows 10 Pro 版本10.0.14393 Build 14393

    系统模型为"曲面书"

    它具有 Intel Core i5-6300U、具有8 GB RAM。

    BIOS 版本/日期 Microsoft Corporation 90.1380.768、2016年11月4日

    SMBIOS 版本3.0

    是否有任何其他有用的信息? 今天稍后我将尝试一些其他的 Windows PC、如果我发现另一个配置失败、我将告诉您。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我忘了说、我还尝试了昨天发布的 BSL-Flasher 的最新版本、没有什么不同。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    约书亚、您好!

    我将检查我旁边的 Windows 10版本。 如果您可以在其他机器中进行测试并查看兼容性、这将非常好。 这个问题是我无法在我的一侧重现的、因此调试您的一侧发生的情况有点困难。

    您将哪个 BSL 下载到您的器件? 最新的是00.08.09.39。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我实际上不确定我使用的是哪个 BSL 版本。 我将尝试最新版本、看看这是否会产生任何影响。 我找不到下载此最新 RAM BSL 的地方。 请您向正确的方向指出我吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    啊哈、找到了。 我将告诉您它是否会产生影响。 它在"正常工作"的计算机上仍然可以工作。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的、更多信息:
    从00.08.08.39切换到00.08.09.39 RAM BSL 没有任何区别。 但是、通过 USB 2.0集线器连接目标器件可实现该过程。

    因此、问题似乎与 Microsoft Surface 上的 USB3.0端口有关。 我使用的 HP Spectre 不会出现此问题、它也具有 USB 3.0端口。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    约书亚、您好!

    非常感谢您的调查。 我将向团队提供这些信息、并计划在我们的环境中对 USB3.0进行一些更新/测试。 现在知道我们大部分时间仍在使用 USB2.0。 我将告诉您更新。

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

    约书亚、您好!

    Fatmawati 把这个问题转交给我,我正在研究这个问题。  为了能够重新创建您的问题、您可以告诉我以下哪一种设置会产生 故障 和通过案例:

    1)故障场景:  您有 Microsoft Surface 与 Windows 10 Pro。  您是否将 USB 3.0集线器连接到 其3.0端口或2.0端口(如果有)?  

    2) 2)通过方案: Microsoft Surface 与 Windows 10 Pro。  您是否将 USB 2.0集线器连接到其2.0或2.0端口(如果有)?

    3) 3)通过方案: 您还拥有带 Windows 10 Pro 的 HP Spectre。  您是否将 USB 3.0集线器连接到其3.0端口或2.0端口(如果有)?

    在 Windows 10中、当主机认为端口未使用时、Microsoft 提供了许多 USB 端口选项来节省端口的电源。  您能否验证 HP Spectre 和 Microsoft Surface 的端口选项是否相同、因为 BSL Scripter 在 HP Spectre 上工作而不是在 Microsoft Surface 上工作(两者都具有 Windows 10)很有趣。  感谢您提出这个问题!

    此致、

    Arthi Bhat

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

    Arthi、


    很抱歉、回答很慢。 答案如下:

    如果您需要更多问题得到解答或希望我尝试一些问题、请告诉我。

    Josh

    >>Fatmawati 已将此问题转发给我,我正在对此进行调查。  为了能够重新创建您的问题、您可以告诉我以下哪一种设置会产生 故障 和通过案例:

    1>>1)故障场景:  您有 Microsoft Surface 与 Windows 10专业版。  您是否将 USB 3.0集线器连接到 其3.0端口或2.0端口(如果有)?  

    如果我连接到任何板载 USB 3.0端口、则会失败。 如果通过电源适配器转换器上的 USB 端口(也是3.0)连接、则也会失败。

    >>2)通过方案: Microsoft Surface with Windows 10 pro。  您是否将 USB 2.0集线器连接到其2.0或2.0端口(如果有)?

    我将 USB 2.0集线器连接到表面上的一个板载 USB 3.0端口、并将 MSP-FET 连接到 USB 2.0集线器上的其中一个端口、然后工作正常。

    >>3)通过方案: 您还拥有采用 Windows 10专业版的 HP Spectre。  您是否将 USB 3.0集线器连接到其3.0端口或2.0端口(如果有)?

    在这种情况下、我将 USB-FET 直接连接到 Spectre 笔记本电脑上的3.0端口之一、或者连接到扩展坞上的3.0端口之一、或者连接到键盘上的 USB 3.0端口之一。 所有这三种情况都可以正常工作。

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

    约书亚、您好!

    我不确定 Microsoft Surface Book USB 3.0端口的运行情况、因为在我的 Lenova 计算机上、我可以使用 BSL Scripter 下载固件。  您的 HP Spectre 也可以正常工作。   所有三台计算机(Spectre、Lenova 和 HP)都具有 Windows 10专业版。  因此、这让我相信、这个问题可能是 Surface Book 端口 问题。

    您可以尝试卸载并重新安装 USB 驱动程序、还  可以使用 HP 幽灵检查电源设置。  以下 链接告诉您如何设置 端口电源选项: (请参阅第2部分):

    windowsable.com/.../

    我对电源选项的想法是、在 BSL Scripter 内置的延迟期间、端口可能处于挂起或进入低功耗模式。

    最后、您是否有一种捕获 USB 日志的方法?  如果您这样做、这可能值得一看。

    此致、

    Arthi Bhat

      

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

    Arthi、

    我已经尝试通过您提供的信息禁用所有可能的 USB 电源管理功能、并且行为没有变化。 您是否有制作 USB 日志的建议方法? 这是您可以使用 Wireshark 还是类似工具执行的操作、还是需要 USB 协议分析器?

    Josh

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

    Josh、

    我简要地阅读了 Wireshark、看起来它可以捕获 USB 协议。  我不确定是否需要硬件来执行此操作。  我们使用 USB 协议分析器(硬件和软件)。  

    此致、

    Arthi

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

    约书亚、您好!


    Microsoft Surface 笔记本电脑中的 USB BSL 试用版是否有任何更新?

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

    唯一需要报告的是、关闭所有电源管理组件都没有效果、仍然是相同的故障。 我们还没有找到另一台出现此问题的 PC。

    此致、
    Josh