Ch351q Parallel Port Driver (LIMITED)
The CH351Q is a PCI Express to parallel interface bridge chip. It converts PCI Express bus signals into a standard IEEE 1284 parallel port. Unlike USB-to-parallel adapters (which often fail with hardware-dongles or real-mode DOS applications), the CH351Q creates a memory-mapped or I/O-mapped LPT port that appears to the operating system as a native PCI-based parallel port.
Key technical specifications:
The CH351Q is a specialized integrated circuit designed by Nanjing Qinheng Microelectronics to address a common yet challenging problem in the computer industry: interfacing legacy parallel port devices with modern computer systems. As parallel ports have largely disappeared from contemporary motherboards, the CH351Q provides a critical bridge, enabling continued use of printers, programmers, industrial controllers, and other parallel peripherals through more modern interfaces like USB or PCI Express.
MacOS dropped native parallel port support after 10.14 Mojave. However, the CH351Q can work with the open-source ParVMc kext (not recommended for production). Most users find better results using a USB-to-parallel adapter or running Windows via Boot Camp. ch351q parallel port driver
If you cannot get the CH351Q driver to function, consider these alternatives:
| Solution | Pros | Cons | |---------|------|------| | Native motherboard LPT header | Zero driver issues | Obsolete on new boards | | USB-to-parallel (e.g., IEEE-1284 compliant) | Easy plug-and-play | Fails with dongles & low-level I/O | | CH353L-based PCIe card | Similar driver package | Different INF may be needed | | Raspberry Pi with GPIO to parallel | Extremely flexible | Requires custom software |
However, for true hardware-level LPT emulation, the CH351Q remains the best balance of cost and compatibility—provided you have the correct driver installed. The CH351Q is a PCI Express to parallel
Despite its utility, the CH351Q has inherent limitations:
The CH351Q does work, but it’s not plug-and-play for legacy software. If you need true hardware-level 0x378 compatibility, your best bet is an older PC or a USB-to-parallel adapter (though those also have problems). But if you’ve already bought the card, the WCH driver plus a port redirector will usually get you going.
Pro tip: After installation, test with a simple command: mode lpt1: LPT? doesn't work anymore. Instead, download LPTTest or try toggling a pin with a Python script using pylpt or pyparallel. If the LED on a loopback plug lights up, you’ve won. If you cannot get the CH351Q driver to
Happy tinkering – and may your old hardware live to see another decade.
Have a different CH35x chip (CH352, CH353)? This driver works for those too. Drop a comment if you got it working on Windows 11 23H2.