Audio Optimization Resources

USB Monitoring with WireShark

As developers know, the utility tool to debug and monitor USB Traffic hasn’t been available for quite a while. However, Apple has enabled capturing USB traffic, even for USB-C devices, via Wireshark. I guess you’d classify this as an unofficial release. In order for a capturing protocol to be included in Wireshark, it has to go through quite a rigorous review process. Until there’s official support, you can still get USB capturing going with Wireshark, by downloading the “nightly build” version, which is available here: https://www.wireshark.org/download/automated/osx/

Once you’ve downloaded and got Wireshark installed, it’s easy to capture USB traffic. But 1st you’ll need to open Terminal so you can Enable, or “Bring Up” the USB Interface, such that WireShark can see it as a Capture Device. In most cases, this interface is called XHC20.

So at the command prompt you’ll paste in: Sudo ifconfig XHC20 up.

Now, as you can see, Wireshark sees the XHC20 USB Interface, and can now capture its traffic. 

When you are done with your Capture Session, just return to Terminal and paste: Sudo ifconfig XHC20 down. This will bring the USB interface “down.”

Here’s an example of a USB Packet: 

I won’t get into all the usage of WireShark in this post. Chances are you’ve already got ideas!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s