GPIB (IEEE-488) to Centronics (IEEE-1284 SPP) Protocol Converter


The project has resumed. I have been able to test the converter in LO mode on a frequency counter operating in talk only mode, and transferred files through it to the printer in LO and normal addressed mode using a Prologix adapter to send from a PC. It looks good, but do not have access to a spectrum analyser to try a screen print. The incomplete code is NOT available.

A follow on project is a GPIB-USB converter. Two paths possible here, a Metalabs derived boad with native V-USB, or a 40 pin chip on veroboard with a FT245x USB interface. The latter is a little more expensive, will perform faster, and has no V-USB licencing issues.


This article describes a current project to implement a GPIB to Centronics protocol converter, for emulating a GPIB printer interface.

The application of particular interest in to allow screen printing from HP Spectrum Analysers to a low cost HP DeskJet printer, or any other printer supporting PCL.

The design in implemented in an Atmel AVR chip, an ATMega8535 which has four 8 bit ports providing enough capacity for data and control leads on both interfaces without multiplexing.

The prototype was based on a Lawicell prototype board for the Atmel ATMega8535, and contains the MCU, power supply regulator, and Kanda style In System Programming connector. The case houses the board, DB25F connector for the printer, a IEEE-488 connector for the GPIB bus, DC inlet jack, and the switches and LED.

Fig 1: Prototype


The menu is activated by holding the MENU key in while pressing and releasing the black Reset key, then releasing the MENU key. The LED will flash once per second indicating the menu option, and the Menu key is then pressed after the desired number of flashes. For second level menus, the Menu key is released again and pressed after the desired number of flashes.

A quick flashing LED indicates an error, typically an invalid option. Some menu functions indicate that they have completed by turning the LED on solid. Press reset to resume normal operation. To abort menu selection, just press reset.

  1. Print identification data
  2. Listen ONLY flag (0/1)
  3. Set GPIB address (1 - 7)
  4. Inititialise Centronics printer
  5. Print test pattern to output (printer)
  6. Hex dump mode flag (0/1)
  7. Set EEPROM to factory defaults

LO mode passes all non-command characters to the output.

Hex dump formats non-command characters to the output.






© Copyright: Owen Duffy 1995, 2021. All rights reserved. Disclaimer.