hi,
now i have an analyzer connected - Ellysis USB 260.
What I can see is that there are lots of invalid packets even if I switch to FS. (Idea was: if i have si problems (trace impedance et al) this should not be as critical as HS)
Does anybody need this traces to see what happen?
thanks.
br,
mrtok
Software to view can be downloaded here: http://www.ellisys.com/products/download/visualusb.msi
porting USB Audio to xu208 / does not enumerate
-
- Member
- Posts: 11
- Joined: Fri Nov 11, 2016 8:30 am
You do not have the required permissions to view the files attached to this post.
-
- XCore Legend
- Posts: 1913
- Joined: Thu Jun 10, 2010 11:43 am
Can you also post similar logs from a working platform for comparison ?
Would like to view the logs for USB FS (at least) and HS modes from a working circuit board running the same IP.
Would like to view the logs for USB FS (at least) and HS modes from a working circuit board running the same IP.
-
- Experienced Member
- Posts: 66
- Joined: Fri Feb 05, 2010 12:34 pm
Hello Thomas
Did you verify that the chip has a good ground connection?
I.e. does the PCB comply to the recommendation in the Datasheet?:
12.4 Ground and Thermal Vias
Vias under the heat slug into the ground plane of the PCB are recommended for a low inductance ground connection and good thermal performance. Typical designs could use 16 vias in a 4 x 4 grid, equally spaced across the heat slug.
It would also be helpful to see this information for the simple USB Application (e.g. the HID example):
- output of xrun --dumpstate <your.xe fie>. This will dump the state of all cores and show if any of them is in an exception state.
- Report from the USB Analyser.
Best Regards, Thomas
Did you verify that the chip has a good ground connection?
I.e. does the PCB comply to the recommendation in the Datasheet?:
12.4 Ground and Thermal Vias
Vias under the heat slug into the ground plane of the PCB are recommended for a low inductance ground connection and good thermal performance. Typical designs could use 16 vias in a 4 x 4 grid, equally spaced across the heat slug.
It would also be helpful to see this information for the simple USB Application (e.g. the HID example):
- output of xrun --dumpstate <your.xe fie>. This will dump the state of all cores and show if any of them is in an exception state.
- Report from the USB Analyser.
Best Regards, Thomas
-
- Newbie
- Posts: 1
- Joined: Thu Jan 19, 2017 5:04 pm
You can also try for capturing usb data the next app:
USB Sniffer - http://www.virtual-serial-port.org/prod ... b-sniffer/
USB data logger - http://www.eltima.com/products/usb-data-logger/
USB Sniffer - http://www.virtual-serial-port.org/prod ... b-sniffer/
USB data logger - http://www.eltima.com/products/usb-data-logger/
-
- Junior Member
- Posts: 4
- Joined: Tue Oct 18, 2016 2:56 am
Have you had any positive results on this topic? We're trying to do the same over here and are jammed up with exactly the same problem - infinite reset loop. We're trying various USB analyzers and we're not seeing the device (since its descriptor is bad), but using "next connected usb device" functionality, we're able to see the device, which simply says it is "connected" and then is "surprise removed" when we stop the XMOS program. Any suggestions here would be appreciated.
Note, we also tried AN00184 and it did not work. For people digging around in the future, XMOS has said this is the correct USB PHY for the chip XU(F|)208-128-TQ64:
Note, we also tried AN00184 and it did not work. For people digging around in the future, XMOS has said this is the correct USB PHY for the chip XU(F|)208-128-TQ64:
Code: Select all
<Port Location="XS1_PORT_1H" Name="PORT_USB_TX_READYIN"/>
<Port Location="XS1_PORT_1J" Name="PORT_USB_CLK"/>
<Port Location="XS1_PORT_1K" Name="PORT_USB_TX_READYOUT"/>
<Port Location="XS1_PORT_1I" Name="PORT_USB_RX_READY"/>
<Port Location="XS1_PORT_1E" Name="PORT_USB_FLAG0"/>
<Port Location="XS1_PORT_1F" Name="PORT_USB_FLAG1"/>
<Port Location="XS1_PORT_1G" Name="PORT_USB_FLAG2"/>
<Port Location="XS1_PORT_8A" Name="PORT_USB_TXD"/>
<Port Location="XS1_PORT_8B" Name="PORT_USB_RXD"/>
-
- XCore Legend
- Posts: 1913
- Joined: Thu Jun 10, 2010 11:43 am
Thanks for your ad.You can also try for capturing usb data the next app:
USB Sniffer - http://www.virtual-serial-port.org/prod ... b-sniffer/
USB data logger - http://www.eltima.com/products/usb-data-logger/
XCoreXploits
On your custom PCB design or a XMOS kit ? If custom design, please post more details including the schematic for a review. The AN00184 does work, we recall testing this on the XCORE-200 board supplied by XMOS. Is your custom PCB 2L or 4L ? Are the USB traces impedance matched for 90 ohms ? Best to focus on AN00184 before moving forward. So many questions to ask but please share more details for a proper review.Note, we also tried AN00184 and it did not work.
If you halt the execution of the XMOS program then yes, the USB state machine will also halt and raise errors like you are observing. This entire solution is software based, including the USB transactions so if you halt the program, the USB engine will also stop operating."surprise removed" when we stop the XMOS program
-
- Junior Member
- Posts: 4
- Joined: Tue Oct 18, 2016 2:56 am
We found that the issue for us what that some protection diodes and resistors we put in jammed everything up. Once we removed the diodes and replaced the resistors with 0 ohm resistors, everything worked. General theme is that the XMOS audio system is EXTREMELY picky, and slight deviations in hardware or software can stop the whole thing from working. Further, we never got AN00184 working, but got audio working.
-
Verified
- XCore Legend
- Posts: 1156
- Joined: Thu May 27, 2010 10:08 am
What resistors did you add? (sounds like series resistors) Diodes to the rails shouldn't be a problem but changing the characteristic impedance of any transmission line can have dire effects.XCoreXploits wrote:We found that the issue for us what that some protection diodes and resistors we put in jammed everything up. Once we removed the diodes and replaced the resistors with 0 ohm resistors, everything worked. General theme is that the XMOS audio system is EXTREMELY picky, and slight deviations in hardware or software can stop the whole thing from working. Further, we never got AN00184 working, but got audio working.
Engineer at XMOS
-
- XCore Legend
- Posts: 1913
- Joined: Thu Jun 10, 2010 11:43 am
USB interface requires impedance matched traces and care must be taken in the PCB layout. We just completed a USB design (not XMOS based) which is working "out of the box" (stress testing for the past 48+ hours without errors in the lab) but we did invest a great deal of effort with the impedance matching of 90 ohms and requested our PCB shop to perform a test on the finished PCBs for the same criteria. The PCB impedance report is often +$10 for the formal documentation. Our design is 4 layers FR4. In addition to the USB connector, we have USB 2.0 HS EMI filters in series with the D+ and D- lines as well as ESD TVS diodes to supress any nasty ESD events.
Can you share more details on what you applied in your design that caused the failure to operate correctly ?
Can you share more details on what you applied in your design that caused the failure to operate correctly ?