Hello, we have some problems using the chip TUSB4041:
1.TUSB4041 chip's USB downlink port will occasionally have DP/DM crossover, with a probability of 50%. How can this happen?
2.The CPU fails to identify the TUSB4041 chip ID
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.
Hello, we have some problems using the chip TUSB4041:
1.TUSB4041 chip's USB downlink port will occasionally have DP/DM crossover, with a probability of 50%. How can this happen?
2.The CPU fails to identify the TUSB4041 chip ID
It can be seen from the schematic diagram that we did not connect EPROM or SMBUS/I2C host over SDA/SCL, but when we actually used it, we found that if the downstream end cannot be used, it can be used by crossing DP/DM. Caused by?
Hello,
Can you confirm my understanding?
What registers are you writing when crossing DP/DM?
Does this problem only occur on the upstream port?
Can the ARM be crossing DP/DM?
Regards,
JMMN
Hello,
1、EEPROM / SMBUS is indeed not connected;
2、The CPU always can find the hub,but 50% of the time on power up the hub downstream port occasionally DP/DM crossover;
3、Crossing DP/DM fixes the issue when the the hub downstream port DP/DM crossover;
4、I did not write any value to the register when the the hub downstream port DP/DM crossover;
5、This problem only occur on the downstream port;
6、The ARM's DP/DM has never crossed DP/DM.
Thank you for your reply!
I stripped the cable of the mouse and exposed the DP/DM. When the mouse couldn't be used, I connected the DP of the mouse to the hub downstream port DM, and the DM to the hub downstream port DP, and found that the mouse can be used.
Hi,
That is very strange, without changing the register setting of the hub, it is not possible for DP/DM to swap.
Are you able to see this behavior with anything other than that mouse?
Can you share a DP/DM scope capture?
Regards,
JMMN
There is a question about the above waveform, why does it enumerate twice when the USB host enumerates the TUSB4041?
Hi Tian,
So for reading back the registers, you can connect the hub as usual with SMBUSz set high and no EEPROM attached, then once the hub is active, you can use a SMBUS or I2C host to read back the registers at this address:
The waveforms you shared look correct. The 2nd reset is typically caused by the software. The host might enumerate a port, then do a soft reset to it which will cause a 2nd enumeration.
Regards,
JMMN