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.

[参考译文] TUSB4041I:某些 PC 无法识别设备、除非通过另一个集线器连接

Guru**** 2391695 points
Other Parts Discussed in Thread: TUSB4041I

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/950341/tusb4041i-device-not-recognized-by-some-pcs-unless-connected-via-another-hub

器件型号:TUSB4041I

大家好、

我有一款采用 TUSB4041I 芯片的产品、最近出现了一些问题。 我将尝试以简洁的方式描述症状。

-该产品是在去年设计和制造的,大约有20套。 每个单元都在开始工作。

-运行几个月后,我们有4台设备停止被某些 USB 主机识别。 当某个单元停止与特定主机一起工作时、我们尚未看到它开始再次工作。

-如果通过外部 USB 2.0集线器(主机供电)连接了坏设备,则即使与不能直接工作的主机连接也能正常工作。

我们尝试了不同的电缆。

我们始终使用具有 Ubuntu 的计算机、并查看 dmesg 报告。 如果我们的装置停止工作(所有装置最初都可以工作)、则连接设备后、dmesg 将保持完全安静、就像未连接 USB 的数据线一样。

复位引脚连接到时间常数约为20ms 的 RC 电路。 在器件未被识别后手动下拉 RESET 引脚不起作用。 此外、在不断开 USB 线的情况下进行电源循环也没有帮助。

在进行一些故障排除后、我注意到时钟振荡器在系统未被识别时运行异常、因此我尝试在那里解决它。 随附的示波器屏幕截图之一显示了时钟上的奇怪行为、而另一个屏幕截图显示了同一器件通过 USB 集线器连接到同一主机时运行良好的时钟。 信号在晶体的一个引脚上测量。 请注意不同的时间刻度。

使用的晶体是 ABM3B-24.000MHZ-10-1-U-T 我尝试了以下步骤以查看是否可以使其正常工作:

-卸下18p 盖

-将电容器放回、移除1M 电阻器

-放回1M、添加一个与 XO 引脚串联的1k 电阻器

在执行这些步骤后、器件通过外部集线器正常工作、但未能正常工作(即所采取的步骤完全无效、也不会使其变得更糟)。

后来、我看到其他人在 TUSB4041卡在挂起模式时遇到问题、在该模式下时钟可能会关闭。 这是怎么回事? 关断时、时钟是否看起来如此奇怪?

我还了解到、焊接芯片散热焊盘在某种程度上至关重要。 我们有一个根据数据表创建的 PCB 封装、但我们不知道我们的装配体使用的厚度模板。 我们也无法轻松访问 X 射线。 焊料问题是否纯粹是热问题? 只要有合理数量的焊料和实心连接、我就无法看到散热垫上的焊料质量如何影响信号完整性。 在我们的应用中、芯片额外连接到顶部的散热器上、这应改善散热。 上面有 TUSB4041的 PCB 位于被动冷却的外壳内、外壳内的温度可达50-60摄氏度、 但是、即使芯片在高温下运行、我也不会期望芯片像这样受到永久损坏(我希望芯片在过热时停止工作、但器件会由于连接断开而关闭并冷却、因此不会出现温度过高的情况)。

总之:我们的所有设备最初都可以正常工作、然后在一段时间后、某些设备永久停止被某些 PC 识别、同时仍能与其他 PC 正常工作或通过集线器连接。

奇怪的是,一切最初都是正常的,只有在运行了几周或几个月后才停止。

我已经查看了以下主题:

https://e2e.ti.com/support/interface/f/138/t/730153?TUSB4041I-How-to-check-behavior-

https://e2e.ti.com/support/interface/f/138/t/548848#pi239031350=2&pi320995=2

https://e2e.ti.com/support/interface/f/138/t/631770?TUSB4041I-TUSB4041-stacked-and-SMBus-communication-issue

我现在的计划是尝试使用振荡器而不是晶体、或者甚至只使用不同制造商生产的晶体、但最好了解这个问题。 我感谢您提供有关该做什么的任何提示。 我们的客户的运营处于暂停状态、正在等待我们找到可靠的解决方案。 换用另一个 PCB 并不是一个好主意、因为新的 PCB 可以随时停止以相同的方式工作。

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

    我有更新。 我参加了两个板、一个按预期工作、另一个有所述问题。 我在它们之间交换了 TUSB4041芯片。 芯片问题,即 芯片损坏

    现在问题是、什么会对芯片造成如此奇怪的损坏? 我们在所有 USB 端口上都有 ESD 保护、在最终产品中、端口很少以任何方式断开连接。 什么可能导致芯片仅停止与某些主机配合使用?

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

    您好、Karol、

    该时钟看起来非常奇怪、通常损坏的端口无法连接、我们看不到对振荡器电路的任何影响。

    VBUS 是否有可能与系统中的 DP/DM 线路短路?

    请接受我的朋友申请、我们可能需要您发送 FA 器件。

    此致、

    JMMN

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

    JMMN、您好!

    感谢您的回复。 我们使用自定义布线、因此始终存在导致短路的错误风险、但一旦组装系统、发生此类短路的风险就很低。 包含 TUSB4041和工业 PC 的 PCB 封装在一起。

    我现在想到的一个问题是、如果 USB 引脚按错误的顺序配对、端口是否会损坏。 在我们使用的 PC 中、没有标准 USB 插座、而是有 IDC 连接器、因此所有引脚的长度都相等、数据线(或其中之一)可能会在器件通电之前匹配。 标准 USB-A 连接器被设计成机械地避免这种情况。

    我注意到、但我不确定的另一件事是、TUSB4041会缓慢降低性能。 我用于测试的电路板在几个月前就开始出现问题、直到现在、我已将问题存放在我的抽屉中。 如果我记错了、当问题首次出现时、工业 PC 无法识别电路板、但使用的是我的笔记本电脑。 今天、它也不适用于笔记本电脑、除非我通过外部 USB 集线器连接它。

    作为现场设备的权变措施、我计划尝试连接有源 USB 2.0扩展电缆。 我不确定它是否会像外部 USB 集线器那样使器件连接。 我将在下周试一下。

    此致、

    Karol

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

    您好、Karol、

    我希望 ESD 损坏的器件只会发生硬故障、而不会降低性能。  散热焊盘和接地之间的焊料连接是否有任何下降的可能性?   由于 VBUS 不是直接连接到集线器、只能通过分压器网络、因此引脚匹配顺序不是主要问题。

    现在、我再次查看您的原理图、我看到了一些我建议更改的内容。  移除 GRSZ 上的上拉电阻、该引脚上有一个内部上拉电阻(~22K)、添加一个额外的上拉电阻器将缩短预期的复位时间。  我还建议移除 SDA/SCL 上的上拉电阻。  如果集线器看到安装了空白 EEPROM、则会进入编程模式、这种情况不应仅发生在 SDA/SCL 上的上拉电阻器上、但如果未与内部下拉电阻器连接、则肯定不会发生。

    您是否有机会将其中一个故障板连接到运行 Microsoft 的系统、并在故障期间发送 usbview.exe 或 USB 设备树查看器的屏幕截图、以便我可以查看报告了什么内容?

    谢谢、

    JMMN

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

    JMMN、您好!

    接地焊盘上的焊料降级机制是什么? 我们如何在不使用 X 射线的情况下检查它?

    我将板连接到 Windows 10笔记本电脑、并根据您的请求运行 usbview:

    -工作板报告4端口 USB 集线器。 在该特定 PCB 上、还有一个 FTDI 芯片硬连接到集线器、因此其中一个端口报告了这一点。

    -不起作用的电路板根本不会显示在 usbview 中,连接它不会引起任何问题。

    -通过附加 Logitech 集线器连接的不工作的主板显示为正常。 在该芯片上没有 FTDI 芯片、因此所有端口都是空的。

    下面是工作板芯片的说明:

    外部集线器:USB#VID_0451和 PID_8142#MSFT20AF070089708A#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
    集线器电源:自供电
    端口数:4.
    电源开关:成组
    复合设备:否
    过流保护:全局

    器件描述符:
    BcdUSB:0x0210
    bDeviceClass:0x09
    bDeviceSubClass:0x00
    b 设备协议:0x02
    bMaxPacketSize0:0x40 (64)
    idVendor:0x0451 (德州仪器(TI))
    IDProduct:0x8142
    bcdDevice:0x0100
    制造商:0x00
    iProduct:0x00
    iSerialNumber:0x01
    0x0409:"AF070089708A"
    b 数字配置:0x01

    连接状态:设备连接
    当前配置值:0x01
    器件总线速度:高
    器件地址:0x08
    打开管道:1.

    端点描述符:
    b 结束地址:0x81
    传输类型:中断
    wMaxPacketSize:0x0001 (1)
    b 间隔:0x0C

    配置描述符:
    wTotalLength:0x0029
    b 数字接口:0x01
    b ConfigurationValue:0x01
    iConfiguration:0x00
    bmAttributes:0xE0 (总线供电自供电远程唤醒)
    MaxPower:0x00 (0mA)

    接口描述符:
    b 接口编号:0x00
    b AlternateSetting:0x00
    b 数字结束点:0x01
    b 接口类:0x09 (集线器)
    b 接口子类:0x00
    b 接口协议:0x01
    iInterface:0x00

    端点描述符:
    b 结束地址:0x81
    传输类型:中断
    wMaxPacketSize:0x0001 (1)
    b 间隔:0x0C

    接口描述符:
    b 接口编号:0x00
    b AlternateSetting:0x01
    b 数字结束点:0x01
    b 接口类:0x09 (集线器)
    b 接口子类:0x00
    b 接口协议:0x02
    iInterface:0x00

    端点描述符:
    b 结束地址:0x81
    传输类型:中断
    wMaxPacketSize:0x0001 (1)
    b 间隔:0x0C

    下面是通过 Logitech 集线器连接的不工作的主板芯片的说明:

    外部集线器:USB#VID_0451和 PID_8142#MSFT20470A0869DE36#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
    集线器电源:自供电
    端口数:4.
    电源开关:成组
    复合设备:否
    过流保护:全局

    器件描述符:
    BcdUSB:0x0210
    bDeviceClass:0x09
    bDeviceSubClass:0x00
    b 设备协议:0x02
    bMaxPacketSize0:0x40 (64)
    idVendor:0x0451 (德州仪器(TI))
    IDProduct:0x8142
    bcdDevice:0x0100
    制造商:0x00
    iProduct:0x00
    iSerialNumber:0x01
    0x0409:"470A0869DE36"
    b 数字配置:0x01

    连接状态:设备连接
    当前配置值:0x01
    器件总线速度:高
    器件地址:0x0B
    打开管道:1.

    端点描述符:
    b 结束地址:0x81
    传输类型:中断
    wMaxPacketSize:0x0001 (1)
    b 间隔:0x0C

    配置描述符:
    wTotalLength:0x0029
    b 数字接口:0x01
    b ConfigurationValue:0x01
    iConfiguration:0x00
    bmAttributes:0xE0 (总线供电自供电远程唤醒)
    MaxPower:0x00 (0mA)

    接口描述符:
    b 接口编号:0x00
    b AlternateSetting:0x00
    b 数字结束点:0x01
    b 接口类:0x09 (集线器)
    b 接口子类:0x00
    b 接口协议:0x01
    iInterface:0x00

    端点描述符:
    b 结束地址:0x81
    传输类型:中断
    wMaxPacketSize:0x0001 (1)
    b 间隔:0x0C

    接口描述符:
    b 接口编号:0x00
    b AlternateSetting:0x01
    b 数字结束点:0x01
    b 接口类:0x09 (集线器)
    b 接口子类:0x00
    b 接口协议:0x02
    iInterface:0x00

    端点描述符:
    b 结束地址:0x81
    传输类型:中断
    wMaxPacketSize:0x0001 (1)
    b 间隔:0x0C

    工作设备:

    未直接连接工作设备:


    未通过 Logitech HUB 连接工作设备:


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

    那么、故障单元都在另一个集线器后面工作吗?  还是至少测试过的测试结果?   

    您能否在故障电路板上检查 VBUS、3.3V 和1.1V?

    到目前为止、故障率是多少?   

    此致、

    JMMN