MCCI Model 3411 Windows Driver & Test Tools

MCCI Model 3411 Users guide, Windows Drivers & Test Tools

USB 3.2 Gen2 · Type-C Loopback Test Device
Model3411 - Blue Enclosure

MCCI® Model 3411 "Merganser"

Saturate any USB-C host, hub, or USB4®/Thunderbolt™ fabric at up to 8 Gbps bidirectional — measure throughput, verify data integrity, and run USB-IF compliance from one rugged board. No custom firmware. No real peripheral required.

10 Gbps Gen2 signaling 8 Gbps bidirectional 4 device modes OLED live status
● In stock SKU 123002552 Firmware v2.6.0 Updated March 2026 · KB-3411-PORTAL

Getting Started, Drivers & Test Tools. Everything you need to set up, run, and troubleshoot the Model 3411 — from first power-up to USB-IF compliance testing. Ref: Engineering Reports 950001616 Rev O · 950001629 Rev B.

1. What is the Model 3411 and Who Is It For?

The MCCI® Model 3411 "Merganser" is a professional-grade USB test device that plugs into any USB-C host port and runs at the full speed of the bus — from Full Speed (12 Mbps) all the way up to SuperSpeed Plus Gen2 (10 Gbps). It loops back whatever data the host sends, letting you measure throughput, verify data integrity, and validate USB host behavior without needing custom firmware or a real peripheral.

If any of these describe you, this device is built for your workflow:

Host Stack / xHCI Developer

Validating your USB host stack or xHCI controller IP? Use Loopback mode for throughput regression and Compliance mode for USB-IF certification with XHCICV.

→ Modes 0 & 1

System / Hub Integrator

Benchmarking USB-C port throughput on a new motherboard, hub design, or USB4/Thunderbolt fabric? The 3411 saturates the bus to expose bottlenecks.

→ Modes 1 & 2

Manufacturing / QA Engineer

Building a production test station? USBIOTEST is a scriptable CLI tool that runs on Linux and Windows — no GUI needed. Serial-number-based device selection supports multi-device fixtures.

→ USBIOTEST + Mode 1 or 2

Storage Stack Developer

Testing UAS/UASP vs BOT performance? UASP mode presents a 750 MB RAM disk for benchmarking with CrystalDiskMark or fio — no real storage media needed.

→ Mode 3 (UASP)

Silicon / IP Vendor

Bringing up a new xHCI IP block? The 3411 is SuperMUTT-compatible in Compliance mode, and the MCCI USB host stack was used by multiple vendors to certify xHCI silicon at the USB-IF PIL.

→ Mode 0 + XHCICV/xHSETT

Evaluating / Considering Purchase

Researching USB test devices? Scroll down for specs, modes, and capabilities. Purchase directly from the MCCI store. See the datasheet for full specifications.

PCB Front: Micro-B control port (top) · OLED display (center) · MA2085 processor · USB-C data port (bottom)

PCB Back: Serial number label (center, format: 00-02-CC-xx-xx-xx) · FTDI FT2232H chip (top) · Micro-B connector (bottom)

How a test runs — signal path through the 3411

Control PCShell / test host
Micro-BControl port
FT2232HUSB ↔ UART / JTAG
MA2085Movidius VPU
(test engine)
USB-CData port
Host Under TestDUT
Control path (commands & status) On-board test engine Data path under test

1.1 Key Specifications

8 Gbps
Bidirectional Bulk (Gen2)
1 GBps sustained
4 Gbps
Bidirectional Bulk (Gen1)
500 MBps sustained
320 Mbps
Unidirectional (High Speed)
40 MBps sustained
96K Isoch
High-BW Isochronous (Gen2)
48K at Gen1
ComponentDetail
Processor800 MHz Intel Movidius MA2085 VPU
RAM1 GiB LPDDR4
Flash16 MiB (firmware storage)
EEPROM4 KiB (settings & mode persistence)
Data PortUSB-C — USB 3.2 Gen2 / Gen1 / HS / FS
Control PortMicro-B — FTDI FT2232H (serial console + JTAG)
Display128×64 OLED (SSD1306B) — real-time status
SensorsAccelerometer, thermal, power
FirmwareMCCI USB DataPump, RTEMS-based, field-upgradable via DFU
EnclosureRugged polycarbonate plastic

2. Your First 5 Minutes

Quickstart: Confirm Your 3411 Is Working

This gets you from unboxing to a confirmed working test in under 5 minutes.

Step 1 — Power up via Micro-B. Connect the included Micro-B cable from the Model 3411 to your PC. The OLED display will show the MCCI logo, then the status screen.

Step 2 — Check the serial console. Open a terminal (Tera Term on Windows, minicom on Linux) at 115200/8N1 on the assigned COM port. Type:

SHLL [/] # getdevicemode Current device mode is loopback ← if this says "compliance", run: setdevicemode 1

Step 3 — Connect USB-C. Plug the included Gen2 USB-C cable from the 3411's USB-C port to the host system you want to test. The OLED will update to show the connection speed (e.g., G2(G2) for Gen2).

Step 4 — Run your first test.

# Linux: sudo ./usbiotest -i 0/0/1/0 -o 0/0/1/1 -N 100 -T benchmark -b 1048576 -F 100 040e:f645 # Windows: .\usbiotest.exe -i 0/0/1/0 -o 0/0/1/1 -N 100 -T benchmark -b 1048576 -F 100 040e:f645

Step 5 — Read the result. You should see throughput numbers like:

WRITE: 104.9 Mbytes 0.4 sec (0 ms overhead): 245.4 Mbytes/sec 1.963 Gbits/sec READ: 104.9 Mbytes 0.4 sec (0 ms overhead): 241.7 Mbytes/sec 1.934 Gbits/sec TOTAL: 209.7 Mbytes 0.4 sec (0 ms overhead): 483.3 Mbytes/sec 3.867 Gbits/sec

If you see throughput numbers — your 3411 is working. Read on to learn about the different modes, tools, and advanced testing options.

Don't have USBIOTEST yet? Download mcci_usbiotest-v2.0.0.zip from the attachments at the bottom of this page. Extract and navigate to the bin directory. On Linux, first run install.sh from the rules.d folder.

3. What's in the Box

The standard kit from the MCCI store includes:

  • Model 3411 board in polycarbonate enclosure
  • 1m USB-C to USB-C cable — Gen2 rated (use this for data testing)
  • 3-foot USB-A to Micro-B cable — for the control/power port
Bulk pack note: Accessories may differ if purchased in bulk or as part of a larger equipment set.

4. Powering & Control Port Setup

4.1 Power Options

The Model 3411 can be powered three ways:

  1. USB-C port — from the host system under test
  2. Micro-B port — from a control computer (takes priority over USB-C)
  3. USB charger on Micro-B — 5V/0.5A, regulated 4.5–5.25V, ≤100 mV ripple
Best practice for testing: Power via Micro-B so the device doesn't depend on the host's power supply. This is especially important when testing hosts that may have marginal VBUS.

4.2 Control Port (Serial Console)

The Micro-B port presents a composite USB device via an FTDI FT2232H chip: one function is a serial console (COM port), the other is JTAG (not used in normal operation). The control port is identified by VID 0x0403, PID 0x6010, product string MCCI Model 3411 Control.

Host driver: Install FTDI VCP drivers from ftdichip.com/drivers/vcp-drivers.

PlatformTerminal ToolConnection Example
WindowsTera TermSelect COM port → Serial → 115200
macOSscreenscreen /dev/tty.usbserial-FTxyz 115200
LinuxminicomMay need udev rules or sudo

Settings: 115200 baud · 8-bit · No parity · 1 stop bit · No local echo

4.3 OLED Display

The 128×64 OLED provides real-time feedback without needing a serial connection. The photos below show the display fields with numbered callouts.

Status screen: Fields ①–⑩ shown during normal operation (mLOOP mode, Gen1 connected)

Loopback active: Field ⑪ appears during a running loopback test (LOOP mode, Gen2, showing rx/tx byte counts)

OLED Field Reference

① Model
"3411"
② Serial Number
6-char hex (00XXXX)
③ Device Mode
LOOP / COMP / mLOOP / UASP
④ Firmware Ver.
vX.Y.Z
⑤ Voltage
Supply voltage (V)
⑥ Temperature
Device temp (°C)
⑦ Speed XX(YY)
XX=current, YY=max. G1/G2/FS/HS. E.g., G1(G2) = connected at Gen1 on Gen2-capable device — check cable.
⑧ Device Address
USB address from host (hex)
⑨ Link State
U0–U3 (SS) or L1–L2 (HS). 'r' = remote wakeup.
⑩ Device State
"Configured" = USB-C active, ready for operation. "Attached" = Micro-B powered only, no USB-C host connected.
⑪ Loopback Counters
LB(AA:BB) rx XX tx YY — AA=interface, BB=alt setting, XX=bytes received, YY=bytes transmitted. Live during active loopback test.
Reading the OLED during problems: If the device fails to enumerate, the OLED will show "Attached" (not "Configured") and the speed field will be blank. This confirms the USB-C link did not come up — check your cable, port, or host controller. If you see G1(G2), your device supports Gen2 but the host/cable only negotiated Gen1.

5. Which Mode Should I Use?

The Model 3411 has four firmware personalities. Modes are switched via setdevicemode on the serial console and stored in EEPROM (persists across power cycles).

5.1 Decision Tree

Your GoalModeCommand
Run USB-IF XHCICV/USB4CV certification tests0 — Compliancesetdevicemode 0
xHCI HS electrical test with xHSETT0 — Compliance (+ setvidpid)setdevicemode 0
Measure max throughput on a host port/hub/fabric1 — Loopbacksetdevicemode 1
Verify data integrity through a USB path1 — Loopback (integrity test)setdevicemode 1
Test isochronous or interrupt transfer types1 — Loopbacksetdevicemode 1
Stress-test concurrent bulk streams through a hub2 — Multi-Bulksetdevicemode 2
Benchmark UAS/UASP storage protocol performance3 — UASPsetdevicemode 3
Compare UASP vs BOT throughput3 — UASPsetdevicemode 3

5.2 Mode Details

Model 3411 Device Mode Map

Mode 0 — Compliance

xHCI compliance test device. SuperMUTT-compatible. Use with XHCICV, xHSETT, USB4CV, or Microsoft MUTT test tools. No MCCI driver needed.

VID: 040E · PID: F644
setdevicemode 0

Mode 1 — Loopback

Bulk, interrupt, isochronous loopback. Optimized for max bandwidth. OUT→IN data loopback across all transfer types. Test with USBIOTEST or USBIOEx.

VID: 040E · PID: F645
setdevicemode 1

Mode 2 — Multi-Bulk

3 interfaces, each with independent bulk IN/OUT streams. For concurrent multi-stream stress testing.

VID: 040E · PID: 020C
setdevicemode 2

Mode 3 — UASP

USB Attached SCSI Protocol. Presents 750 MB RAM disk. Enumerates as "USB Attached SCSI (UAS) Mass Storage Device." Test with CrystalDiskMark or fio.

VID: 040E · PID: 020D
setdevicemode 3

Switching Modes

SHLL [/] # getdevicemode Current device mode is compliance SHLL [/] # setdevicemode 1 Setting loopback device mode # Disconnect and reconnect the USB-C cable after switching. # The mode is stored in EEPROM — it persists across power cycles.

6. Which Tool Should I Use?

USBIOTESTUSBIOEx
TypeCommand-line (CLI)Windows GUI
PlatformsLinux (x86_64, AARCH64) · Windows (i386, x64)Windows only
Requires MCCI 3411 Driver?No — works directly via OS USB stackYes — requires driver install
Best ForThroughput benchmarks, scripted tests, headless/CI environments, Linux workflowsInteractive exploration, visual descriptor browsing, vendor command testing
Loopback Test✔ benchmark, integrity, view✔ Benchmark, Data Integrity, Data View
Vendor Commands✔ via Control Test with vendor request file
Modes SupportedLoopback (PID F645) · Multi-Bulk (PID 020C)Loopback · Multi-Bulk (with driver installed)
Downloadmcci_usbiotest-v2.0.0.zipusbioex-V5_19c.zip
Quick decision: On Linux? → USBIOTEST. Need a GUI? → USBIOEx. Need automation? → USBIOTEST. Need to send vendor commands interactively? → USBIOEx. Both tools can test Loopback and Multi-Bulk modes.

7. Downloads

All files are available as attachments at the bottom of this page.

Available Downloads

USBIOTEST v2.0.0

CLI test tool. Linux x86_64 + AARCH64 + Windows i386/x64. No driver needed.

mcci_usbiotest-v2.0.0.zip (3 MB)

USBIOEx v5.19c

Windows GUI test tool. Requires MCCI 3411 Driver.

usbioex-V5_19c.zip (238 KB)

MCCI 3411 Driver

Windows driver for USBIOEx. Checked + Free variants.

MCCI-3411-driver-V5_38_17_1-release.zip (324 KB)

DFU Firmware Installer v2.6.0

Windows, Linux, macOS packages.

model3411-compliance-dfu-installer-v260-*.zip

Vendor Request File

For USBIOEx vendor command testing.

model3411-vendor-request.txt (3 KB)

User's Manual (PDF)

Complete reference: 950001616 Rev O.

950001616o_Model-3411-Users-Guide.pdf

8. USBIOTEST — Command-Line Test Tool

8.1 Setup

Linux

  1. Extract mcci_usbiotest-v2.0.0.zip
  2. Install udev rules: cd rules.d && sudo ./install.sh
  3. Navigate to bin/ — choose Release (no debug logs) or Debug (verbose logging)
  4. Connect Model 3411 via USB-C
  5. If you see "Couldn't open device": run with sudo or verify udev rules are installed

Windows

  1. Extract mcci_usbiotest-v2.0.0.zip
  2. Choose i386 (32-bit) or x64 (64-bit), then Debug or Release
  3. Open Command Prompt → navigate to bin\
  4. Connect Model 3411 via USB-C

8.2 Command Syntax

usbiotest [options] <deviceId> # Full form: ./usbiotest -i <IN_PIPE> -o <OUT_PIPE> -N <COUNT> -T <TESTTYPE> \ -m <MODE> -b <BUFFERSIZE> -v -F <FREQ> -t <TIMEOUT> <VID>:<PID>

Options

OptionDescription
-i <pipe>IN endpoint pipe (c/i/a/p notation). -i - resets.
-o <pipe>OUT endpoint pipe. -o - resets.
-N <n>Number of iterations. 0 = indefinite.
-T <type>benchmark · integrity · view
-m <mode>normal · random · sweep
-b <bytes>Buffer size. Must match device buffer — see Section 8.5.
-vVerbose. Lists all pipes when run without test options.
-F <freq>Report every N iterations. 0 disables display.
-t <ms>Timeout in milliseconds.
-I <n>Max isoch packets per transfer. -I 0 = default.
-zEnable Zero Length Packet.
-D <mask>Debug mask. 0x10 = dump trace at end. 0xffffffff = all.
-hPrint full help.

Test Types

TypeWhat It DoesSpeedWhen to Use
benchmarkMeasures raw throughput, no data validationFastestMaximum speed measurement, throughput regression
integrityValidates received data byte-by-byte against expected valuesSlowerVerify data correctness after a path (hub, cable, fabric)
viewDisplays received data in hexSlowestDebugging data corruption — inspect actual bytes

Test Variations

VariationOptionsDevice Behavior
LoopbackBoth -o and -iDevice loops OUT data back on IN
Write-onlyOnly -oData sink test (device consumes data)
Read-onlyOnly -iData source test (device generates data matching what -o would send)

8.3 Understanding Pipes (c/i/a/p)

Pipes are addressed as C/I/A/P: Configuration / Interface / Alternate Setting / Pipe index. Run usbiotest -v <VID>:<PID> to list all pipes on your device.

Loopback Mode Pipe Map (v2.0.0+) — What to Use for Each Test

What You're TestingPipe INPipe OUTTypeMaxPacketSizeNotes
Bulk throughput (primary)0/0/1/00/0/1/1Bulk1024Main benchmark path
Interrupt (small packet)0/0/2/00/0/2/1Interrupt64Low-bandwidth periodic
Interrupt (large packet)0/0/3/00/0/3/1Interrupt16384High-bandwidth periodic
Isochronous (low BW)0/0/4/00/0/4/1Isoch512Interval=8
Isochronous 48K (high BW)0/0/5/00/0/5/1Isoch49152Interval=1
Isochronous 96K (max BW)0/0/6/00/0/6/1Isoch98304Interval=1 · Driver limitation — see note
Bulk write-only (sink)0/0/7/0Bulk OUT1024OUT-only, no loopback
Bulk read-only (source)0/0/8/0Bulk IN1024IN-only, no loopback
Firmware version note: Pipe addresses changed between v1.25.0 and v2.0.0. In v1.25.0 and below, the primary bulk pair is 0/0/0/0 + 0/0/0/1. Always run usbiotest -v <VID>:<PID> to confirm your device's actual pipe layout. Check firmware version with appversion on the serial console.

8.4 Target Device Selection (Multiple Devices)

SyntaxWhat It SelectsWhen to Use
040e:f645First matching deviceSingle device on host
040e:f645/1Second device (0-indexed)Multiple same-VID/PID devices
040e:f645::0002CC003355Match by serial numberManufacturing fixtures, stable identification
040e:f645:2000Match VID + PID + revisionMixed firmware versions
040e:f645:2000:0002CC003355Match VID + PID + revision + serialMost specific selection

Finding identifiers:

# Linux — list devices and find serial/revision: lsusb -v -d 040e:f645 | grep -E "iSerial|bcdDevice" # Serial console: SHLL [/] # getserialnum Device serial number is 0002CC003355 # Windows — Device Manager → Properties → Details → Hardware Ids (revision) or Device Instance Path (instance number)

8.5 Buffer Sizes — Getting This Right

Critical: The -b buffer size must be an integral multiple of the device's internal buffer. Mismatched sizes cause stale data on the IN pipe, apparent device hangs, or incomplete transfers. USBIOTEST does not reset the device or drain queues at startup.
Pipe TypeFormulaExample
BulkMaxPacketSize × MaxPacketSize1024 × 1024 = 1,048,576
IsochronousMaxPacketSize × (8 ÷ Interval) × 2049152 × (8÷1) × 20 = 7,864,320

Verify device-side buffer sizes with the serial console:

SHLL [/] # getbuffersize Bulk endpoint buffer size 100000 Interrupt endpoint buffer size 4000 Isochronous endpoint buffer size 180000
Pipe (IN/OUT)TypeMaxPktIntervalBuffer -b-N-FExpected Throughput
0/0/1/0 · 0/0/1/1Bulk10241048576100010002 GBps, 16 Gbps
0/0/4/0 · 0/0/4/1Isoch5128102401001001.0 MBps, 8.2 Mbps
0/0/5/0 · 0/0/5/1Isoch 48K4915217864320100100786 MBps, 6.3 Gbps
0/0/6/0 · 0/0/6/1Isoch 96K98304115728640100100Driver limitation
Known limitations: (1) 96K isochronous loopback is limited by a host-side driver issue — will be addressed in a future update. (2) High-speed isochronous loopback tests do not work on some Intel processors.

Interpreting Your Results

USBIOTEST reports WRITE (OUT) and READ (IN) throughput separately, plus a TOTAL. Here's how to read them:

What You SeeWhat It Means
TOTAL matches expected (e.g., ~16 Gbps for Gen2 bulk)Your host and path are performing optimally
TOTAL is roughly half expectedLikely a unidirectional bottleneck — check if WRITE and READ are balanced
Gen2 device but throughput matches Gen1 levelsCheck the OLED — if it shows G1(G2), the link trained at Gen1. Try a different cable or port.
Throughput degrades over timePossible thermal throttling on the host xHCI controller. Check host system thermals.
Integrity test reports errorsData corruption on the path. Try a different cable, port, or hub. Check for EMI sources.

8.7 Multi-Bulk Loopback Settings (Mode 2, PID 020C, v2.0.0+)

Pipe (IN/OUT)InterfaceBuffer -bExpected Throughput
0/0/1/0 · 0/0/1/1010485762 GBps, 16 Gbps
0/1/1/0 · 0/1/1/1110485762 GBps, 16 Gbps
0/2/1/0 · 0/2/1/1210485762 GBps, 16 Gbps
# Multi-bulk test (note the PID is 020C, not F645) sudo ./usbiotest -i 0/0/1/0 -o 0/0/1/1 -N 1000 -T benchmark -b 1048576 -F 1000 040e:020c

8.8 Tracing & Diagnostics

USBIOTEST has a built-in "flight recorder" trace subsystem for diagnosing hangs or unusual behavior:

  • During a test: Press Ctrl+\ (sends SIGQUIT) to dump the current trace buffer. Useful when the device appears hung.
  • After a test: Set -D 0x10 (bit 4 of debug mask) to dump the trace buffer at the end of the run.

9. USBIOEx — Windows GUI Test Tool

USBIOEx is a Windows GUI for interactive testing. It requires the MCCI 3411 driver.

9.1 Installing the Driver

  1. Download MCCI-3411-driver-V5_38_17_1-release.zip. The package has checked (debug logs) and free (no debug logs) versions — use free for normal testing.
  2. Ensure the 3411 is in Loopback or Multi-Bulk mode. Connect via USB-C.
  3. Device Manager → find "Model 3411 USB Loopback Device" under Universal Serial Bus devices.
  4. Right-click → Update driverBrowse my computerLet me pick from a list.
  5. Click Have Disk…Browse → select 3411gen.inf from the extracted driver folder → OK.
  6. Select "MCCI USB Model 3411 in Loopback Mode" → Next → Close.
The driver is digitally signed. No test signing mode required.

9.2 Running a Loopback Test

  1. Launch USBIOEx → Test → Open Device…
  2. Test → Run Loopback Test…
  3. Configure: Test Type, Input/Output Pipe (c/i/a/p), Buffer Sizes, Loop Mode, Iterations
  4. Click OK → results display in the main window

Use the recommended settings from Section 8.6 (same pipe addresses and buffer sizes apply).

9.3 Vendor Commands

  1. Place model3411-vendor-request.txt in the USBIOEx application directory
  2. Test → Run Control Test… → Browse → load the vendor request file
  3. Select a command (e.g., GET_DEVICE_SERIAL_NUMBER, SET_DEVICE_MODE_LOOPBACK) → Send

10. Compliance Mode (Mode 0)

In Compliance mode, the 3411 is SuperMUTT-compatible and works with USB-IF test tools. No MCCI driver is needed — the USB-IF/Microsoft tools use their own drivers.

Supported Test Tools

ToolPurposeDownload
XHCICVxHCI host controller compliance verificationusb.org/compliancetools
xHSETTUSB SuperSpeed electrical testusb.org/compliancetools
USB4CVUSB4 compliance (Chapter 9 tests)usb.org/compliancetools
Microsoft MUTTMicrosoft USB Test Tool suiteMicrosoft Docs

Direct Run Mode (v2.0.0+, Bootloader v1.1.0+)

Bypasses bootloader enumeration, directly launching the compliance app:

SHLL [/] # dfu # halt before compliance mode starts SHLL [/] # run 1 # enable direct run (bypass bootloader) enable direct run mode # Disconnect and reconnect to activate

xHSETT Setup

Set VID/PID for xHSETT using the serial console. Use VID 0x1a0a and a PID from this table:

PIDTest ModeDescription
0x0101TEST_SE0_NAKSE0 state continuously
0x0102TEST_JJ state (D+ high, D− low)
0x0103TEST_KK state (D+ low, D− high)
0x0104TEST_PACKETStandard test packets for eye diagram
0x0107SINGLE_STEP_GET_DEV_DESC15s SOFs then GetDescriptor(Device)
0x0106SUSPEND / RESUME / RESET15s SOFs then suspend, resume, or reset
SHLL [/] # setvidpid 0x1a0a 0x0101 Setting vid=1a0a pid=0101

11. UASP Mode (Mode 3)

Presents a 750 MB RAM disk over USB Attached SCSI Protocol. Enumerates as "USB Attached SCSI (UAS) Mass Storage Device."

CrystalDiskMark (Windows)

Download CrystalDiskMark → Test size: 512 MiB → Profile: Peak Performance → Queue Depth: 64 → Click "All".

fio (Linux)

# Random R/W benchmark fio --name=rand-rw --filename=/mnt/usb/testfile --size=1G \ --rw=randrw --bs=4k --ioengine=libaio --numjobs=4 \ --runtime=30 --time_based --group_reporting # Latency test fio --name=latency --filename=/mnt/usb/testfile --size=1G \ --rw=randrw --bs=4k --iodepth=32 --ioengine=libaio \ --numjobs=4 --runtime=30 --time_based --group_reporting

12. Firmware Update (DFU)

DFU requires firmware v1.24.3+. Older units must be sent to MCCI for update. Contact support.

The DFU process has 3 stages, each requiring a cable disconnect/reconnect:

  1. Download model3411-compliance-dfu-installer-v260-<OS>.zip
  2. Connect 3411 via Type-C. On Linux, also connect Micro-B.
  3. Run: model3411-compliance-dfu-installer
  4. Stage 1: Bootloader app downloads → "Please disconnect and reconnect" → unplug/replug Type-C within 10 seconds
  5. Stage 2: Bootloader firmware downloads → unplug/replug again within 10 seconds
  6. Stage 3: Production firmware downloads → unplug/replug one final time
  7. Verify: appversion on serial console
If you miss the timing: If the device isn't reconnected within the 10-second window, the installer exits. Restart the process from Step 3.

13. Shell Command Quick Reference

CommandDescription
getdevicemodeCurrent mode (compliance / loopback / multi-bulk / uasp)
setdevicemode <0|1|2|3>0=Compliance, 1=Loopback, 2=Multi-bulk, 3=UASP
getdevicespeedCurrent USB speed
setdevicespeed <spd> <disc> <conn>0=nochange 1=FS 2=HS 3=Gen1 4=Gen2 + delays in sec
getbuffersizeShow buffer sizes (bulk / interrupt / isochronous)
setbuffersize <0|1|2> <hex>Set buffer: 0=bulk 1=interrupt 2=isochronous
appversionFirmware version strings
getserialnumDevice serial number
controlssc <0|1>Disable/enable Spread Spectrum Clocking
setvidpid <vid> <pid>Override VID/PID (for xHSETT)
dfuHalt at bootloader
run <0|1>Disable/enable direct run mode
help allList all commands

14. Troubleshooting

! Common Mistakes — Check These First
  1. Changing mode without a power cycle. A new mode only takes effect after you disconnect and reconnect the USB-C cable. Confirm with getdevicemode.
  2. Using a non-certified USB cable. Many USB-C cables are Gen1-only or charge-only. Use the Gen2-rated cable supplied with the 3411.
  3. Testing through a hub. Always connect the 3411 directly to a host port. Hubs cap the link speed and distort throughput results.
  4. Wrong driver installed. Each mode binds to a specific PID/driver (see Section 9.1). A mode/driver mismatch shows as “Unknown Device.”
  5. Compliance mode selected accidentally. Mode 0 enumerates as a SuperMUTT, not a loopback device, so USBIOTEST can’t open it. Switch back with setdevicemode.
Device shows "Unknown Device" or yellow bang in Device Manager

Wrong mode: The MCCI 3411 driver only matches PIDs F645 (Loopback) and 020C (Multi-Bulk). Compliance (F644) and UASP (020D) use different drivers. Check with getdevicemode.

Driver not installed: The driver is not auto-installed — follow Section 9.1 to manually install via 3411gen.inf.

USBIOTEST: "Couldn't open device" on Linux

Permissions: Run sudo ./usbiotest ... or install udev rules: cd rules.d && sudo ./install.sh

Stale data, device hangs, or incomplete transfers during loopback

Buffer mismatch: The -b value must be an integral multiple of the device's internal buffer. See Section 8.5 for formulas. Verify with getbuffersize.

Interrupted previous test: USBIOTEST does not reset queues on startup. Stale data from an interrupted test can cause the next test to read old data. Disconnect and reconnect USB-C to clear device state.

Device enumerates at Gen1 instead of Gen2

OLED check: If it shows G1(G2), the device supports Gen2 but the link negotiated Gen1 — the problem is the cable, port, or host.

Cable: Many USB-C cables are Gen1-only. Use the cable included with the 3411 (rated for Gen2).

Port: Verify the host port supports Gen2. Thunderbolt 3/4 and USB4 ports always do.

Force speed: setdevicespeed 4 1 1 forces Gen2 with 1-second connect/disconnect delays.

USBIOTEST shows wrong pipes or "can't find pipe for (null)"

Firmware version: Pipe addresses changed between v1.25.0 and v2.0.0. Run usbiotest -v <VID>:<PID> to see your device's actual layout. Check firmware with appversion.

Wrong PID: Multi-bulk uses 040e:020c, not 040e:f645. Match the PID to the device mode.

High-speed isochronous test fails or hangs

Known platform issue: HS isochronous loopback does not work on some Intel processors. Try an AMD system or a different Intel platform.

DFU firmware update fails or times out

Timing: You must disconnect and reconnect the Type-C cable within the 10-second window after each stage. If you miss it, the installer exits — restart from the beginning.

Linux: Both Micro-B and Type-C must be connected during bootloader download.

Old firmware: DFU requires v1.24.3+. Older units must be sent to MCCI for update.

15. Filing a Support Ticket — What to Include

? When Should I Open a Support Ticket?

You’ve worked through the troubleshooting steps above but still hit one of these. Open a ticket if:

  1. The device does not enumerate — no entry appears in Device Manager / lsusb on any port or cable.
  2. The driver installs but a test cannot start — correct mode and driver, yet USBIOTEST/USBIOEx fails to open the device.
  3. Throughput is below 50% of the expected value — confirmed Gen2 link, direct connection, correct buffer sizes.
  4. A firmware update fails — DFU repeatedly times out or the unit won’t boot afterward.
Have the checklist below ready, then email [email protected].

When contacting [email protected] or opening a portal ticket, please include all of the following to help us diagnose your issue quickly:

Support Ticket Checklist

  1. Serial number — from the OLED, or getserialnum, or the label on the underside (format: 00-02-CC-xx-xx-xx)
  2. Firmware version — from appversion output (all 3 lines)
  3. Current device mode — from getdevicemode
  4. Connection speed — from getdevicespeed or OLED display
  5. Buffer sizes — from getbuffersize
  6. OLED display contents — a photo or description of all fields
  7. Host system details — OS, xHCI controller (Intel/AMD/ASMedia), USB port type
  8. The exact USBIOTEST command you ran and its full output
  9. Steps to reproduce the problem

16. Firmware Version History

VersionKey Changes
v2.6.0UASP mode. Direct run mode (bootloader bypass). Additional isoch endpoints. Lost/corrupt packet identification.
v2.0.0Vendor control commands. getserialnum. Changed pipe ordering (breaking change from v1.x).
v1.25.0OLED display with device/operational info.
v1.24.3Multi-bulk loopback. DFU update support.
v1.24.0appversion shell command.
v1.23.0SSC control.
v1.22.0GetDeviceVersion. Endpoint order change in loopback.
v1.20.0Unified compliance+loopback app. Mode switching. EEPROM. Isoch+bulk loopback.
v1.12.0OLED driver. Device test application.
v1.10.0EEPROM. OLED logo. Sensors.
v1.06.0Initial loopback application.

Have a USB test challenge?

MCCI has built and licensed USB host and device stacks for over 20 years. Talk to our engineers about the Model 3411, custom firmware variants, or volume & manufacturing-fixture pricing.

17. Additional Resources

ResourceLink
Datasheet971001060c_Model-3411-Gen2-Loopback-Datasheet.pdf
Product Home Pagemcci.com/usb/dev-tools/model-3411
Purchasestore.mcci.com/products/model-3411
MCCI USB DataPumpmcci.com/usb/software-stacks/datapump
FTDI VCP Driversftdichip.com/drivers
USB-IF Compliance Toolsusb.org/compliancetools
MCCI Support Portalportal.mcci.com

MCCI®, TrueTask®, MCCI USB DataPump® are registered trademarks of MCCI Corporation. USB4®, USB-C®, USB Type-C® are registered trademarks of USB Implementers Forum, Inc. All other trademarks are property of their respective owners. Copyright © 2026 MCCI Corporation. Engineering Reports 950001616 Rev O, 950001629 Rev B.

    • Related Articles

    • MCCI Model 3421 Users Guide

      The MCCI® Model 3421 is a USB-to-HDMI converter device that runs with Basic Display Protocol (BDP) developed based on the USB/VESA joint specification. The MCCI Model 3421 has a USB micro-B port for control, a Type C port & a Micro HDMI port to act ...
    • MCCI Model 4922 Test Controller Kit

      The MCCI Model 4922 Test Controller Kit is a computer-controlled programmable test adapter that allows fully hands-off control of Texas Instruments evaluation modules ("EVMs") for the Sitara AM243x, AM64xx, and AM62xx chips. Instead of changing ...
    • MCCI Cricket UI Software and Documentation

      MCCI Cricket UI Overview MCCI® has created a versatile and easy-to-use MCCI Cricket UI that works across different platforms and devices. It allows you to control various MCCI products such as the Model 3142 USB4™ Model 3141 USB4™ Switch, Model 3201 ...
    • Model 3142 USB4™ Switch Documentation and Downloads

      Overview The MCCI® Model 3142 USB4 Switch is a computer-controlled programmable 2:1 switch, connecting two USB Type-C® receptacles to a single Type-C plug. It is compatible with USB4 hosts and devices at signaling rates up to 80 gigabits/second, as ...
    • Model 3141 USB4™ Switch Documentation and Downloads

      Overview The MCCI® Model 3141 USB4™ Switch is a computer-controlled programmable 2:1 switch, connecting two USB Type-C® receptacles to a single Type-C plug. It is compatible with USB4 hosts and devices, as well as other protocols such as Thunderbolt™ ...