is a PCI-to-Parallel port interface chip produced by WCH (Jiangsu Qinheng Co., Ltd.)
. It is commonly used in expansion cards to provide a standard IEEE 1284 parallel port (LPT) on modern motherboards that lack legacy ports. 1. Driver Overview
The CH351Q requires specific drivers to translate PCI bus signals into standard parallel port communication. Without the driver, the hardware will appear as an "Unknown PCI Device" or "PCI Parallel Port" with an error code in Device Manager. Official Source : The driver is provided by WCH (Qinheng Microelectronics) Supported Systems
: Windows 11/10/8.1/8/7/Vista/XP (32/64-bit) and Linux (usually via the parport_pc or specific WCH kernel modules). 2. Installation Guide (Windows) : Obtain the CH35XDRV.EXE CH35XDRV.ZIP package from the official WCH download page Run Installer
: Execute the installer. It will pre-install the drivers into the Windows Driver Store. Physical Install
: Power off your PC, insert the CH351Q card into an available PCI slot, and reboot. Verification Right-click Device Manager Ports (COM & LPT) You should see WCH PCI Parallel Port (LPT1) or similar. 3. Configuring Port Addresses
Unlike legacy motherboard ports (which usually live at address
), PCI cards like the CH351Q are assigned dynamic I/O addresses by the BIOS/OS. Finding the Address : In Device Manager, right-click the port > Properties . Look for the D000 - D007 Legacy Software Issues
: If you are using old CNC software or DOS-based programs that require fixed addresses (
), you may need to use a "Virtual LPT" remapper, as PCI cards generally cannot be forced to these specific legacy addresses in Windows. 4. Technical Specifications : WCH CH351Q. : 32-bit PCI bus. ch351q parallel port driver
: IEEE 1284 compatible (supports SPP, PS2, EPP, and ECP modes). : Data transfer rates up to 1.5 Mbytes/sec. 5. Troubleshooting Common Issues Yellow Exclamation Mark
: This usually indicates a driver signature issue on 64-bit Windows. Ensure you are using the latest version from WCH which includes a valid digital signature. Port Not Found
: Ensure the card is seated firmly. Try a different PCI slot if the "New Hardware Found" wizard doesn't trigger. Linux Usage
: Most modern Linux kernels (5.x+) support the CH35X series natively. If not recognized, you may need the ch35x_linux
driver source from the WCH website to compile a custom module. legacy address remapper for this card?
The CH351Q is a high-performance PCI interface chip manufactured by WCH (Nanjing Qinheng Microelectronics). It is primarily used in expansion cards to add high-speed Parallel (LPT) and Serial (UART) ports to modern computers that lack built-in legacy headers. 🛠️ Key Technical Specifications
The CH351Q is designed for versatility in industrial and legacy computing environments. Interface: Standard 32-bit PCI bus (version 2.1).
Modes: Supports SPP, PS/2, EPP, and ECP IEEE 1284 parallel port modes.
Dual Function: Can support two serial ports or one parallel port depending on the specific hardware configuration. Voltage: Operates on a 3.3V or 5V power supply. 📥 Driver Installation Guide is a PCI-to-Parallel port interface chip produced by
To ensure your hardware is recognized correctly, you need the official CH35XDRV package.
Download: Get the CH35XDRV.ZIP from the WCH official download page. OS Support: The driver is compatible with: Windows: XP, 7, 8, 10, and Windows 11 (32/64-bit).
Linux: Drivers are typically included in modern kernels, but a specific Linux driver source is available for older distributions. DOS: Supports legacy industrial software.
Installation: Run SETUP.EXE within the extracted folder. Windows should automatically detect the "PCI Parallel Port" or "PCI Serial Port" after a reboot. ⚠️ Common Troubleshooting Tips
If your device is not functioning after installation, check the following:
Port Mapping: The driver may assign a non-standard I/O address (e.g., something other than 0x378). You can find the assigned address in Device Manager -> Ports (COM & LPT) -> Properties -> Resources.
IRQ Conflicts: In older systems, ensure the PCI slot isn't sharing an IRQ with a critical component like a GPU or network card.
Bios Settings: If using an older motherboard, ensure the PCI bus is enabled and "Plug and Play OS" is set to "Yes."
Hardware Variants: The CH351 chip comes in different versions (CH351Q_S for serial, CH351Q_P for parallel). Ensure your expansion card matches the driver variant you are using. Reference Documents Timing accuracy: Bit-level timing may not match native
Datasheet: For hardware engineers, the CH351DS2 PDF provides pinout diagrams and electrical characteristics. Comparison: If you
If you are having trouble getting a specific device to work, I can help you find the exact I/O address or guide you through manual driver assignment. What is the operating system and device you are trying to connect?
Despite its utility, the CH351Q has inherent limitations:
If you are using the CH351Q for CNC (like Mach3, EMC/LinuxCNC) or a logic analyzer, latency is critical.
If you’ve ever bought a generic PCI parallel port card online, you know the struggle of the "Yellow Exclamation Mark."
The official WCH drivers are notoriously barebones. They are often unsigned (causing headaches in Windows 10/11 Secure Boot environments) or worse, they install the device under a generic "IEEE 1284 Controller" class, which prevents legacy software from seeing it.
The "interesting" part of the CH351Q write-up is the cat-and-mouse game between the silicon manufacturer and OS updates:
inf file to match the specific Vendor ID (VID) and Device ID (DID) of the card, effectively hacking the driver to recognize the hardware.If you’re reading this, you probably have a niche need: an old printer, a CNC controller, an EPROM programmer, or a piece of industrial machinery that only speaks via the parallel port. Your modern PC doesn’t have one, so you bought a PCIe card based on the CH351Q chip.
You plugged it in, Windows installed "something," but your software (like Mach3, WinLPT, or a DOS app) still says "LPT port not found." Frustrating, right? I've been there. Let's fix it.