Printer Interface

Schematics of a Printer Adaptor

Dr. Andrew Smith


If you have a Comms Link for your Psion II and an old-style dot-matrix printer with a Centronix (parallel) input, this system will allow you to link the two together.

You may use use all of the Psion's printer functions like the LPRINT command, list OPL programs etc. The system can also be used as a parallel output port if you use LPRINT CHR$(n%) in OPL (where n% is the byte to be output).

Fully Engineered Interface

The circuit is rather complex, but I was lucky to find a board with most of the parts on it already in my junk box, so it was easy for me to complete the system.


Fig 1. Fully Engineered version of the Serial-to-Parallel Printer Interface.


Fig 1 is the fully engineered version. This uses a LT1081 RS232 interface chip which gives a full-specification RS232 signal on the RTS output. An alternative to the LT1081 is, of course, the MAX232, which has the same pin-out.

RTS is derived from the paper out and busy signals of the printer. This means that if the printer runs out of paper or goes off line, or is switched off, the Psion will know about it, and stop sending data until you correct the error.

The strobe signal for the printer is produced by a 74LS121 monostable. I am not certain what the general requirement for this signal is in a Centronix system, but the handbook for my printer specifies 1.5ms +/-500ns. The circuit meets this specification.

If your Comms Link has a 25-pin D connector on it (mine has a handy 9-pin one), the GND, RXD and RTS connections should be made to pins 7, 3 and 4 respectively, as shown in Fig 2 below. These pins correspond to the GND, TXD, and CTS signals from the Psion.

Simplified Interface

I have included a variation on the basic design which give some simpler options.


Fig 2. Simplified Interface.


Fig 2 illustrates an alternative technique for returning an active RTS without the LT1081. In this system the RTS signal is 0/5v instead of +/-10v, but this works ok with the Psion.

It also shows an alternative and simpler way of clocking the 6402 UART using a 555 timer. The required clock frequency is 153,600 Hz +/-5%. A 555 is stable enough for this if good quality components are used, but you will have to set the frequency correctly initially. If you have a frequency counter or an accurately calibrated oscilloscope there should be no problem.

I tried this circuit with the components shown (5% resistors and a 2% polystyrene capacitor), and the system worked with all settings of the preset, although the printed text on my Seikosha SP-2400 changed to italics at the highest frequency setting, indicating a timing error.



The information contained in this document is presented in good faith. The system described here has been tried on my own equipment, and operates successfully. However, this information is released on the condition that any one who uses it does so entirely at their own risk and on the understanding that they alone must be responsible for any loss or damage which may result.


Dr Andrew Smith 2-2003