Microsoft USB Test Tool (MUTT) devices
The Microsoft USB Test Tool (MUTT) is collection of devices for testing interoperability of your USB hardware with the Microsoft USB driver stack. This section provides a brief overview of the different types of MUTT devices, the tests you can run by using the device, and suggests topologies for controller, hub, device, and BIOS/UEFI testing.
To communicate with MUTT devices, you need the MUTT software package. This package contains several test tools and drivers that let hardware test engineers test interoperability of their USB controller or hub with the Microsoft USB driver stack. The test tools validate USB host controller software, hardware (including firmware) and any USB hub that is installed between the host controller and the device.
- MUTT Pack
- SuperMUTT Pack
- DR MUTT
- MUTT ConnEx-C
- Based on the design of the CY3681 EZ-USB FX2 Development Kit (Cypress FX2).
- Compatible with FX2 capabilities, such as high speed and full speed transfers to bulk, isochronous, control, interrupt endpoints.
- Simulates traffic from USB 2.0 devices.
The MUTT Pack is a combination of a USB 2.0 hub and an FX2 device that controls the hub and acts as a downstream device.
- Based on the design on the Cypress Hub and Cypress FX2.
- Hub capabilities. This can operate as a multi-TT or single-TT high speed hub; simulates overcurrent.
- Exposes a downstream port that can be turned on or off.
- Simulates USB 2.0 hub behavior.
- Can operate in self-powered or bus-powered modes.
The MUTT Pack has two USB connectors. The standard B connector is used to plug the MUTT Pack in to the host system. The standard A connector is downstream of the embedded hub on the MUTT Pack, and can be used for additional device testing (discussed later in this document).
The MUTT Pack uses a small jumper (see Figure 3) to switch between self-powered and bus-powered modes. In bus-powered mode, the USB bus of the host system powers the MUTT Pack. In self-powered mode, the MUTT Pack is powered with an external 5V power adapter.
Use the following flow chart to determine how to power the MUTT Pack:
This image shows how to use the jumper for powering the MUTT Pack by the USB bus of the host system:
This image shows how to use the jumper for powering the MUTT pack with an external power adapter:
- Based on the design of FX3 EZ-USB FX3.
- Implements SuperSpeed features such as the bulk streams feature.
- Simulates USB 3.0 device traffic.
- Note: this device does not support operation at Full Speed at this time.
The SuperMUTT Pack is two devices in one. It is a USB 3.0 hub with a Cypress FX2 device downstream. The device controls the hub and also acts as a downstream device. The SuperMUTT Pack simulates USB 3.0 hub behaviors.
The DR MUTT acts like a SuperMutt when testing host mode of the device under test, but it can also switch to host mode to test the function mode of the device under test.
The MUTT Connection Exerciser for USB Type-C (MUTT ConnEx-C) is a custom shield that has a four-to-one switch to automate USB Type-C interoperability scenarios. The shield has been designed to work with Arduino as the microcontroller. For more information, see Test USB Type-C systems with MUTT ConnEx-C.