USB 2.0 Single Step Transaction Debugger User’s Guide
Version 1.0
1.0 Overview
2.0 Application Requirements
3.0 Running the Program
4.0 Menus and Fields
4.1 Main Property Sheet
4.1.1. Device/Transfer Information
4.1.2 Data Buffer
4.1.3. History
4.1.4. Other Buttons
4.2 Config Setup Packets Property Sheet
4.2.1 Clear Feature
4.2.2 Get Configuration
4.2.3 Get Descriptor
4.2.4 Get Interface
4.2.5 Get Status
4.2.6 Set Address
4.2.7 Set Configuration
4.2.8 Set Descriptor
4.2.9 Set Feature
4.2.10 Set Interface
5.0 Example - Executing a Control Transfer Transaction Using SSTD
6.0 Troubleshooting
1.0 Overview Back to Top
The Universal Serial Bus 2.0 Single Step Transaction Debugger program (USB2SSTD.exe) enables USB 2.0 developers to interact with their prototype devices in a transaction-based manner. This application is a tool with which you can watch, debug, check and analyze device characteristics and compliance. The tool and this user guide provide all the information necessary to perform transaction-based interaction. The USB 2.0 Single Step Transaction Debugger is referred to as “SSTD” in this document.
2.0 Application Requirements Back to Top
2.1 Hardware
SSTD requires the installation of one high-speed host controller into the host computer system. (SSTD testing was performed with the NEC-based host controller available in the USB-IF Product Development Kit.) The computer system must meet the minimum configuration required by the Microsoft Windows* 2000 Professional operating system (133 MHz performance level or better processor, 64 MB RAM installed), with a processor speed of 300 MHz performance level or better and 128 MB RAM installed strongly recommended. One high-speed hub or other device must be connected to the high-speed host controller. SSTD has been tested only with high-speed devices. It is strongly recommended that the device under test is the only device connected to the high-speed USB 2.0 bus.
2.2 Operating System
Currently, SSTD can execute only on the Microsoft Windows 2000 operating system.
2.3 Other Software
The pre-release USB 2.0 stack available from Microsoft or included in the USB-IF Product Development Kit must be installed.
3.0 Running the Program Back to Top
There is no installation script for SSTD. The recommended way to install is to copy the program file from the installation medium or image and paste it to the desktop or any directory. If there is only one high-speed USB controller in the system, SSTD is ready to operate and displays the Main property sheet (see section 4.1). If you install two or more high-speed USB host controllers, a dialog box prompts you to select the host controller connected to the device under test. After selecting the appropriate host controller, the Main property sheet appears.
4.0 Menus and Fields Back to Top
Figure 4.1 shows SSTD’s Main property sheet:
Figure 4-1 Main property sheet
4.1.1. Device/Transfer Information Back to Top
Speed (choice field)Always set the speed field to High in this version of SSTD.
PID (choice field)This drop-down box contains three options:
· SETUP
· IN
· OUT
For all standard device requests, SSTD toggles the PID correctly. For bulk and isochronous transfers, you must set PID to IN or OUT, according to the desired transfer direction.
When the application starts, SETUP is displayed. This maintains the last-used PID. If a standard device request is selected from the “select Transaction dialog box,” it then resets to SETUP. For Bulk transfer (IN/OUT), you must set the properties manually.
Data Toggle (choice field)For all standard device requests, SSTD toggles the Data Toggle field correctly. For vendor and other types of requests, you must set this field to Data0 or Data1 (respectively), to use an even or odd data packet synchronization bit.
There are three types of requests:
· Standard device requests
· Class device requests as implemented by Microsoft
· Vendor device requests as implemented by IHVs
The default is Data0 at program startup.
Time Out (numeric field — decimal) You can specify the time SSTD waits for the indicated transaction to complete. The time entered is expressed in milliseconds. A value of zero (the default) indicates that you want to wait indefinitely for transaction completion.
Transfer Type (choice field)Most types of transfers are Asynchronous (default). For constant rate, “real-time” transfers, set the field to Isochronous.
Device Address (numeric field — decimal)You are responsible for entering the correct address here. If the device under test is the only device connected to the high-speed USB (highly recommended; see section 2.1), then the device address should be one (1). Please be sure to note that the device address appears as a DECIMAL number on the Main property sheet.
Endpoint Address (numeric field — decimal) The default value is zero (0) to indicate the default control pipe. To send requests to other endpoints in the device, type the desired endpoint number into this field.
Error Counter (choice field) This counter enables you to set the number of times the host controller should attempt to process the transaction before reporting an error. Valid values are zero (0), one (1), two (2) or the default three (3).
4.1.2 Data Buffer Back to...
MojaNatalia