2
\$\begingroup\$

I have designed a PCB that converts from PCIE to USB 3.0 using VL805 - Super Speed USB 3.0 Host Controller.

here you can find my OrCad Design.

My PCB works perfectly on Ubunto 20.10 and it has a keyboard and mouse freezing issue on Windows 10. the mouse and keyboard work intermittently (check video below).

it sounded like a firmware issue so I contacted VIA-LABS and the sent me several FW versions: FW013726, FW013600, and 00013701 but after flashing them the problem didn't go away.

here is a short video that I taken which explains the problem. the PCB is connected through a flex PCB to another SBC (An Industrial PC motherboard).

SBC Specs:

OS: Windows 10 (on NVME), Ubunto (on NVME)

Ram: 32 GB (also tried 48 GB)

CPU: Intel Coffee Lake Refresh Mobile

Note 1: VL80x FW Upgrade Tool is not needed for working on Ubunto.

Note 2: I came across a similar problem on the internet. some comments say that flashing the SPI back to 00013701 solved the problem. but in my case, that didn't help.

Note 3: Same problem also encountered with Windows 11.

Note 4: upgrading the ram to 48 GB didn't solve the problem.

Note 5: Vialabs suggested to turn of the power completely after upgrading firmware and then start the PC, but also that didn't help (with all FW versions).

Note 6: We didn't test the PCB on windows 7 since our SBC platform doesn't support this OS.

here is the device manager list: [![enter image description here][1]][1]

we can see that the host controller of VIA LABS appears without problem. the unknown USB device port is not related to VL805 (tried to disconnect the device and nothing changed. also, it has VID: 0000 and PID: 0001 which doesn't make sense)

Update:

Although the problem had been fixed. there is a still a speed difference in Reading or Writing to NVME using a USB 3.0 adapter (between Linux and windows) and this issue is being investigated. I will update once the contradiction is solved.

\$\endgroup\$
12
  • 2
    \$\begingroup\$ Sounds like a driver issue, best dealt with on a stack like superuser. The fact that it works fine on Ubuntu sort of takes it out of the EE.SE sweet spot. \$\endgroup\$ Jul 9, 2021 at 15:24
  • 2
    \$\begingroup\$ It's the sort of issue best taken up with the product maker, in fact, but their support looks nonexistant. \$\endgroup\$ Jul 9, 2021 at 15:24
  • 1
    \$\begingroup\$ @ScottSeidman Not necessarily a driver issue. It's possible that a particularity driver issue is only triggered by a PCB design problem. The OP said, "My next check will be is to try to connect VL805 - Super Speed USB 3.0 Host Controller evaluation board to our platform and see if we get the same problem." I think it's a good decision. If the EVB also fails, it's probably a driver issue, possibly related to power management. \$\endgroup\$ Jul 9, 2021 at 15:25
  • \$\begingroup\$ @ScottSeidman I Have a NDA with VIALABS and we have their support. but the response is too slow. in the last email they asked me to read the FW register values from Linux and from Windows after installing the last version of their FW. I'm not sure how this is going to help them, but I hope they find a solution. \$\endgroup\$ Jul 9, 2021 at 17:02
  • 1
    \$\begingroup\$ @Xhero39 - Hi, Thanks for the updates, including the last one which says the problem was fixed with an OS reinstall. As the problem is solved, that update really should be an answer instead. Self-answering is OK (actually its encouraged!), if you have solved the problem on your own. So could you please remove that last update from the question, put it into an answer, and then accept your answer, to effectively mark the topic as solved. Thanks. (Please reply in a comment below, if you have any questions about that.) \$\endgroup\$
    – SamGibson
    Jul 10, 2021 at 21:32

1 Answer 1

1
\$\begingroup\$

The problem had been fixed. I reinstalled a fresh copy of windows 10 and the device worked perfectly. apparently there was an issue with the OS. No change has been done on FW or HW level.

results of the Write and Read speed (Windows Vs Linux) using dd command:

Linux: enter image description here Windows: enter image description here

this is the writing\reading speed from external NVME that sits on M.2 to USB 3.0 adapter which is connected to my PCB. there is still a speed difference between the two OS's and I'm investigating it.

Although the reading the NVME shows a slower speed on Windows, other speed test using (USB 3.0 Tester from Passmark) a little bit higher speed:

enter image description here

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.