Skip to content

GPIB interface (Marconi 2955)

daturach edited this page Jun 4, 2019 · 40 revisions

Introduction

I was looking at a GPIB interface for my Marconi 2955 but couldn't find any. So, I decided to build one. I first looked at different schematics and they were all using the same drivers but Marconi, at that time, implemented the MC3448 which is nearly impossible to get these days. These have been replaced by SN75160b and SN75161b. The other main difference is the GPIB controller. I decided to go for the Intel 8291a. It was an easy decision because it appears I had one chip salvaged from another test equipment (not Marconi thought).

Hardware

A picture is worth a thousand words. Here is the [schematic](something here). Sorry, it's not "digital" but should be usable. The [wiring](something here) looks complex so don't try to follow the wires :-). As Monty Don from Gardeners' World would say: "this is a job for the weekend!"

A couple of pictures for the finished board inside its case.

There is an extra connector (2x10p, male) to connect a 16 channels logic analyzer. I did not use it. The interface worked right out of the box!

Software

Nothing to be done. The program is the original from Marconi.

Tests

You need to connect your interface to a GPIB controller. I built an AR488 based on the Arduino Uno. There are instructions on internet how to make one. It's a nice tool and it works. You open a serial communication with Putty or anything similar and you type the GPIB commands your equipment understands.

Here are a couple of examples for the 2955. First I set the address of the test equipment. In my case, I choose 2. In Putty:

++ver (This returns the Arduino sketch version)

++addr 2 (This addresses the 2955)

RX;RG;FR170.0MZ;DI100KZ;LV-30DM;SM;FR1KZ;LV3KZFM;MD1;AC;SN2 (This is the example of the Marconi manual

If your Marconi updates its screen with the above values, then you are OK to continue. To read the AF level and distorsion values:

RD6

++read (Read AF level)

RD7

++read (Read distorsion)

You have the possibility to display custom text on the screen. I played a bit for fun.

CS Clear the screen

WR4,2,? ? @@@ ? ? @@@

WR4,3,? ? ? ? ? ? ?

WR4,4,?@@@? @@@ ? ? ? ?

WR4,5,? ? ? ? ? ? ?

WR4,6,? ? @@@ @@@@ @@@@ @@@

WR4,15,? ? @@@ @@@ ? ? ?

WR4,16,? ? ? ? ? ? ? ? ?

WR4,17,? ? ? ? ? @@@ ? @@@ ?

WR4,18,? ? ? ? ? ? ? ? ? ? ?

WR4,19, @@@ @@@ ? ? @@@@ @@@ .

Bill of material

You will need some items that are pretty standard:

  • 2x10p female, pitch 2.54mm. to connect to the Marconi motherboard; Part Number 09185206813 from Harting
  • 2x10p male, 90°, pitch 2.54mm. to connect to the GPIB interface, Part Number 09185206323 from Harting
  • GPIB connector, 24 pins female, 90°; Part Number 112-024-213R001 from NorComp Inc.
  • Flat Ribbon cable
  • GPIB cable
  • Intel 8291A GPIB controller (difficult to source)
  • 74LS00 QUAD 2-INPUT NAND GATE
  • SN75160b Octal General-Purpose Interface Bus Transceiver
  • SN75161b Octal General-Purpose Interface Bus Transceiver
  • 74LS365 Buffers & Line Drivers
  • DIP switch 6pos., Part Number 206-6 from CTS Electrocomponents
  • Resistors 47k
  • Capacitor 4.7uF polarized

References:

GPIB stuff, excellent