I have a ADUM3160 between a USB-B connector and a Microchip PIC32MX270 processor. This is a USB UAC stereo Audio DAC capable of 24/96 and operating in the asynchronous configuration.
In the async protocol a feedback pipe is established to make sure the device and the host remain in tune and the device does not over or under run samples. The benefit of this protocol is that you can use local low jitter oscillators that are fixed and request from the host more or less samples so the local device buffer stays full.
When the PIC32MX270 gets an IN request for the 3 byte feedback request the controller sends out the data, but it looks like zeros on the host end and now that of course eventually kills the product. I have it connected to a USB3 port via a USB-C to USB3 converter if that's of any condition.
I receive data correctly and that all looks great, but when I try and send data to the host my Total Phase USB protocol analyzer says the host is receiving zeros instead of the correct protocol response.
Is it possible the drive characteristics into the 24 ohm resistors? I will check enumeration as that must be working.
Thanks for the reply...
Sorry but stupid me in trying to figure out something else I accidently disabled the data going out the ISO stream.
It's fixed and working fine now.
9/10 problems with the ADuM3160 are related to how the power supplies at set up.
The part does not interpret data other than looking for single ended 0's, it mostly listens and repeats. So I would suggest reviewing the power scheme you have on each side of the isolation, and then try the protocol analyzer on each side of the part as well.
I would actually start with a scope and see if you can watch the traffic going back and forth on each side of the ADuM3160.
If that all looks good, please send a schematic of your circuit, and I will look it over.
Glad to hear that you are moving forward.
Good luck with your design, and let me know if there is anything else I can help with.