For the proper functioning of this website we recommend to turn on JavaScript.

How to use LPT interfaced Elnec programmers with LPT-portless computers?

Let me use, for the purpose of this application note, the part of communication with one of our customers:

My programmer is not found on my notebook.

There are some hints:
Due to parallel port driver isn't plug and play, operating system must be always started with notebook plugged in docking station or LPT port card inserted.
When operating system start for first time with card inserted, install drivers for your card, and restart computer. Now you (re)install PG4UW software.

Let me please know, if exist some simple USB/LPT converter, to be allowed to connect my SmartProg [LPT] programmer to the notebook without LPT port?


  1. There is necessary to make sense the "parallel interface" and the "LPT port" are two different terms. The parallel interface is a parallel group of the input/output signals. LPT port is a special group of signals designed for communication with the printer. More precise, the signals of the LPT port interface are designed for the easy implementation of the PC-printer communication protocol (Data, Strobe, Busy, ... signals). For the PC-printer communication purposes the standard software don't use direct access to the LPT port registers, but access of the specialized drivers.
  2. None of known programmers use LPT port as printer port, but always access direct access to the PC hardware (to the printer port registers). None of the available USB/LPT converters provide a printer port registers directly, they provide only entry point for "print character" procedures. Therefore all such convertors can work with the printers only, but not with programmers or any other equipments.
  3. There is possible to develop specialized USB/LPT convertor for one (family of) programmers. The problem is acceptable quality for the acceptable price. The explanation is complicated and cheap implementation of this task can not break the main barrier of the USB interface: the changing of the direction of the communication takes for USB 2.0 high-speed not less than 120us (1us for LPT port). The reason is, the classical "set address to memory, get data from memory" take 100 times longer than in the case of the LPT port connected programmer. From that reason is necessary to develop an provide specialized and more sophisticated USB/parallel port convertor, but it will be too expensive.

Conclusion: I know only one easy solution. LPT port card into the PCMCIA slot. We've tested the type SPP-100 from Quatech (now B&B Electronics).

If you have desktop PC, the solution is easy - LPT port card to PCI slot.

It is absolutely non-economical to buy USB-compatible programmer for that reason.

I'm very sorry, but point this words to the other target, not to us. Microsoft for example in the "personal PC specification" don't think about LPT port since 2002. And also the notebook PC manufacturers think the LPT port absence is a reason for the "upgrade" (it mean throw to waste) of the different LPT-port compatible equipments you have. Situation is currently not so hot, but to avoid a such problem it is recommended to take into consideration also presence of the LPT port at selected notebook.

Troubleshooting, or how to configure LPT port cards.
We hate the try & error working style, but here you have some hints what to try:

  • If LPT ports is integrated directly on motherboard, you probably can change LPT type in the motherboard BIOS. Try set slower LPT port type. The you need to reboot computer twice. Once for windows driver LPT port reinstallation, and second for our driver.
  • Check connection of the LPT port connector pin 25 to GND. Some PC (card) manufacturers do not connect this pin, but it is essential for communication with programmer.
  • Disable interrupts for LPT port in operating system. In the device manager open LPT port properties, tab "Port Settings", and select "Never use an interrupt". Then reboot computer.

If nothing from above works, then sorry, the problem might be local (PC configuration, BIOS, something magic, ...) and we're not able to help. And, please, don't beat us, we're not the one who decided to remove LPT/printer port interface form the PC world.

Few notes to the PCI/CARDBUS/PCMCIA LPT port cards.

  1. first of all, let me mention, Elnec programmers are compatible with IEEE1284 LPT ports and also with standard 5V LPT ports.
  2. lot of manufacturers of PCI/CARDBUS/PCMCIA LPT port cards ignore recommendations and standards. In intent to provide low-price products, provide also incompatible products. We can not be responsible for bad results in such cases. Therefore check description of the card for "IEEE1284 compatible" statement.

Few examples of incompatible cards:

Example #1.

  • Type: SU 2020, 2x parallel port CARDBUS, manufacturer SUNIX (or without mfr labeling), chip inside SUNIX SUN1888
  • Because CARDBUS standard use 3.3V supply voltage, this card provide only 3.3V signals, what is not according IEEE1284 (5V is needed). This card have also very weak pull-up resistors at open collector signals.
  • Result: this card is not suitable for communication with Elnec products. Card show instable communication with JetProg and BeeProg/BeeProg+ programmers, communication with SmartProg in EPP mode only.

Example #2.

  • Type: C-270, 1x parallel port PCMCIA PC Card, manufacturer STLab, chip inside MOSCHIP Nm9805CV
  • the MOSCHIP Nm9805CV chips have bug in the ECP mode. If direction of communication is changed, time to time the HostClk signal goes to L and issue communication error (ErrorCode: E5, E6 or E7). This card also have weak pull-up resistors.
  • Result: also this card is not suitable for communication with Elnec products. Card show instable communication with all Elnec programmers. It work only SPP mode with JetProg and BeeProg/BeeProg+ programmers, communication speed 50% of maximal.

Presov, September 2005, revised November 2019
Author: Elnec

Return to Application notes