This post explains what a USB device showing VID 0xFFFF and PID 0x1201 typically indicates, why it might be labeled “patched,” how to diagnose and recover the device, and precautions to avoid data loss or hardware damage. It assumes intermediate technical familiarity (using Device Manager / lsusb, drivers, firmware flashing tools).
ch341 kernel module usually claims any CH34x device, regardless of VID/PID.sudo modprobe ch341
echo "ffff 1201" | sudo tee /sys/bus/usb-serial/drivers/ch341/new_id
echo 'ACTION=="add", ATTRSidVendor=="ffff", ATTRSidProduct=="1201", RUN+="/sbin/modprobe ch341" RUN+="/bin/sh -c 'echo ffff 1201 > /sys/bus/usb-serial/drivers/ch341/new_id'"' | sudo tee /etc/udev/rules.d/99-ch341-patched.rules
A write/read loop was implemented to test the throughput of the patched firmware.
Write Operation:
unsigned char start_cmd[] = 0xAA, 0x01, 0x00, 0x00;
int transferred;
int r = libusb_bulk_transfer(handle, 0x02, start_cmd, 4, &transferred, 1000);
Read Operation:
unsigned char data[512];
r = libusb_bulk_transfer(handle, 0x81, data, 512, &transferred, 2000);
Results: Testing confirmed that the patched firmware correctly accepted the custom handshake. The device responded with a 512-byte data packet on the Bulk IN endpoint, validating the increased buffer size.
When users search for "VID FFFF PID 1201 patched," they are typically looking for a solution to a driver compatibility issue or firmware modification.
| ID Pair | Likely Chip | Driver Needed | Safe? |
|--------------------|-------------|---------------|-------|
| VID_FFFF PID_1201 | CH340 / CH341 | WCH CH34x driver | Yes, for hobby use |
Bottom line: This is a common "patched" clone chip. Install the correct CH340 driver, ignore the weird VID, and it will work fine for most Arduino/serial tasks. Just don't use it for safety-critical or high-security applications. usb device id vid ffff pid 1201 patched
Have you encountered this ID on a different chip? Let me know in the comments – I'll update the guide.
The USB device with VID FFFF and PID 1201 typically identifies a generic, often low-cost or "no-name" flash drive, frequently using a FirstChip controller. When these devices show up as "No Media" or fail to be recognized properly, it often indicates a firmware corruption or a "fake capacity" drive that has hit its actual physical limit. Identification of the Device
Vendor ID (VID): FFFF is often associated with Taiwan OEM or "obsolete" generic identifiers.
Product ID (PID): 1201 is standard for these mass storage devices.
Common Controller: Many devices with these IDs utilize FirstChip controllers (e.g., FC1178, FC1179). Troubleshooting & Recovery Guide
If your device is "patched" (firmware-repaired) or needs to be, follow these steps: 1. Confirm Hardware Visibility
Before attempting software fixes, ensure the system still sees the controller: USB Device ID: VID 0xFFFF / PID 0x1201
Windows: Open Device Manager and look for "USB Mass Storage Device" under Universal Serial Bus controllers.
Linux: Run lsusb to check if ID ffff:1201 appears. Use dmesg | grep -i usb to see if the kernel detects it as a SCSI disk (e.g., /dev/sdb). 2. Identify the Internal Controller
Since VID/PID can be generic, the most reliable way to find the correct repair tool is to identify the actual chip:
Software Method: Use utilities like ChipGenius or Flash Drive Information Extractor to pull deeper hardware details, specifically the "Controller" and "Flash ID".
Physical Method: Carefully open the USB casing to read the model number directly off the largest microchip. 3. Use Mass Production Tools (MPTools)
To "patch" or re-flash the firmware, you generally need the specific MPTool for your controller. For VID FFFF PID 1201, this is often FirstChip MpTools.
Find the Tool: Search repositories like FlashBoot.ru or USBDev.ru for the specific controller model you identified in Step 2. Common Fix Procedure: Run the tool (often requires Admin rights in Windows). The ch341 kernel module usually claims any CH34x
If the drive is detected but shows an error (e.g., "File Error"), use the "Clear + Factory Scan" or "Low Level Format" option.
Click Start. This process can take 30+ minutes as it scans for bad blocks.
Warning: Flashing firmware erases all data permanently. Recovery tools like Recuva will likely not work after this process. 4. Handling "No Media" Errors
USB Flash Drive Speed Tests - VID = ffff, PID = 1201 - NirSoft
Since "VID FFFF" is often a placeholder or test ID, and "patched" implies modification, I have drafted a technical white paper structured around the analysis, reverse engineering, and development of a driver for such a generic USB device.
White Paper
Title: Reverse Engineering and Driver Development for a Generic USB Device (VID: 0xFFFF, PID: 0x1201)
Abstract
This paper documents the process of identifying, analyzing, and developing a custom user-space driver for a generic USB device utilizing the test Vendor ID (VID) 0xFFFF and Product ID (PID) 0x1201. As devices with test IDs often lack commercially available drivers or documentation, this study outlines the methodology for extracting device descriptors, analyzing the patched firmware behavior, and establishing communication protocols via libusb. The paper concludes with a validation of the data transmission integrity between the host and the peripheral.
The fingerprint appears in three distinct scenarios: