Skip to main content
Topic: GPIB 2 USB (Read 42410 times) previous topic - next topic


I got me some counter with GPIB interface and would like to connect it to computer but refuse to pay hundreds of $$ for GPIB 2 USB adapter hence decided to make my own...

I found few projects
 - Pic-Plot2 (FT232 + PIC16F628, slow 38400 communication with computer)
 - USB - GPIB (IEEE 488.2, HPIB) adapter using PIC18F2550 (written in sdcc with vasco open source usb support)
 - USB based GPIB Controller (from what I read it's ftdi based but no additional info, I failed to locate sources, schematic..)

Anyone have any experience with this, anyone has "tested/proven" schematic?
The pic-plot2 seems slow, the 18f2550 one is written in sdcc and I have lousy experience with it, very buggy, third one I failed to even find sources ...


Reply #2
The SDCC project has this link
The standard connector is the Amphenol or Cinch Series 57 MICRORIBBON or AMP CHAMP type. For special interconnect applications, an adapter cable with non-standard cable and/or connectors is used.

Here are some pictures, prices might suck (wouldn't know) ... le/browse/


Reply #3
It's a 24 position Centronics micro-ribbon connector.  Both digikey and mouser stock
them, check under interconnects, centronics and select 24 positions.  Depending on
what you're doing, it may be cheaper to ebay a cable and chop it.

I have a prologix gpib-usb 4.2 (old version).  Internally, it's an AVR atmega164p and
a ftdi ft245rl.  The software upgrade package has a HEX file and avrdude so it's
pretty clear what's going on inside.  The AVR connects directly to the GPIB, no buffers
or drivers.

There is no hacker demand for these interfaces so they tend to be quite pricey.  I got
mine used simply because I couldn't find a reasonable open-source solution.  Even the
PCI cards are going for $125 or so on flebay.  Labs that can afford NI stuff are willing
to pay $350 for an interface so it really drives the prices up.

The fun begins once you try to get devices talking.  Most things that speak GPIB were
pretty old school microprocessor based test equipment that didn't have room for error messages.


Reply #4
Arhi, I have a bit of old HP gear, some of which uses HPIB (GPIB), but I've been told by a number of people that some of the cheaper interfaces (eg. softmark) won't work with the older gear for some reason, so if you have older HP gear, keep that in mind. I was told somebody had a good one, I think it was Olimex, but it might have been the Prologix, but I recall it was about $200 US or more at the time.

I saw an open source one (the second link you posted 'USB - GPIB) some time ago, but I haven't built it yet, as it was relatively low priority for me.


Reply #5
I was going to make one, in fact I asked here a year or two ago to see what the interest would be, and I vividly recall Ian saying what is GPIB. At that point I shelved the project.

Eridani's layout was created to do GPIB. I was simply going to attach a Centronics ribbon cable to 0.1" double row daughter board and write some bit banging firmware.

I estimated the raw part cost for GPIB was < 20 USD. The Centronics connector I got from digikey and I think it was about 4-6 dollars in quantity 1.

I still might create a GPIB but it is far down the list as I feel there is no market and I have no GPIB instruments at the moment. There are two IEEE specs to implement though the physical layer one is more what you have to worry about hardware wise.

I suspect you can do a very good job of GPIB with FT2232H if you write a MPSSE driver for it.

~ 100 dollars will get you a GPIB if you don't want to build one and do all the coding.


Reply #6
@Brian - I'd be interested in what one you can get for $100, that would actually do the job for the old HP gear. I know for instance the Softmark one won't work for HP gear. I do plan on getting one at some point and the general plan was probably to build one, but as I said earlier, it was pretty low priority for me.  If somebody came up with a working project I'd be interested and I do have a piece of HP gear I could try it out on.


Reply #7
I am not vouching for this one in any way... ... 3cc3269c1f

If you can use a PCI one you can get them for 40 dollars used.

Given I don't think I would sell any I'd probably just buy one given the price point. The issue with selling GPIB I decided was that those who really need them (IE measurement labs) don't consider 300 dollars a lot of money that is why the prices are high, because time is more valuable than 200 extra dollars once, so I don't think there is a market for anything more than what already is out there.

Would be happy to design hardware for it but I have no time to write the software right now.


Reply #8
Thanks Brian, nice find.  Good price for a made up unit - anybody on the forum has had any experience with this one?

The Prologix unit that Jim suggested was recommended to me some years back on another forum also.  @Jim - that software upgrade, would that be the whole hex file - ie. could a similar design have that SW loaded and work or is there some underlying SW that would need to be in place first? Just thinking along the lines of perhaps making a unit for experimenters.


Reply #9
If you do get one Sleepwalker, let us know how you like it, I might get one also. I would say the fact is is cloning an Agilent USB ID means there is some threat they could go away. Though USB implementers forum has relatively few teeth I'd say.


Reply #10
As far as I can tell, the prologix 4.2 unit uses the atmel avr109/butterfly boot
loader through the ftdi usb/serial bridge.  The pc board also has a standard
(unpopulated) ISP (2x3).  So I'd assume that the device could be trivially
cloned in much the same way as the Saleae Logic or the USBee has been cloned
by chinese ebay sellers.  You'd still be stuck with the prologix software as-is
since it's not open source.  I suppose that there might be some sort of serial
number in the eeprom that might prevent the software running on a cloned
device, but I have no idea.

The real issue is what you want on the PC end of the interface.  Prologix gives you
a serial port interface with a command set you use to talk to the GPIB device.
Any program on a PC that wants to talk on the GPIB bus must use that prologix
protocol, which is unique to the prologix device.  That is its fatal flaw.

That's why that chinese device on ebay implements the Agilent 82357B protocol
on the USB side of the device.  It makes it useful for existing programs that actually
use gpib devices.  That protocol is also supported by the linux-gpib package.

GPIB isn't very complicated at the hardware level.  I have a listener (an HP 59306A
relay actuator) that is implemented with just 74xx TTL logic; no microcontroller.
It's that final interface that's exposed to the client on the PC that's hard.

If I were going to start from scratch, I'd just build a shield with a GPIB connector for
either an arduino/borduino/teensy or atmega32u4-breakout and go from there.  Reading
a value from a multimeter should be easy.  (famous last words.  as we say in the software
world it's just a SMOP, Simple Matter Of Programming!).


Reply #11
Thanks for the info Jim. In my case I have a HP5006 Signature analyser at work and had been interested in sending the signatures to a PC for storage and also for comparison later on. There is no PC software for this unit, so I figured I might write a program to connect to the Virtual Comm port, send the required commands (via whatever interface) to get the HP to respond with the data and then capture the data and do whatever else I wanted to do. Doing this part on the PC is no problem for me if using a VCP, my problem will be more sorting out exactly what I would send to the HP and get back, though from what little I've seen, it probably wouldn't be too hard for this application.
If the Prologix protocol was fairly straightforward, then it sounds as if this wouldn't be too much of an issue.

Because this has just been a very low priority thing, I haven't gone into it much. It's really only that this subject was raised on the forum here that it raised my interest a little. That being the case I'd tend to lean more towards building something (building hardware is no issue for me), as the budget is essentially non-existent - hence my interest in whether it would be practical to clone the Prologix or make something very close.

I haven't done anything with Arduino or Teensy and wouldn't really know where to start (I do have some PIC gear though). Prior to reading this thread I had considered that one day I'd whip up the open-source PIC USB - GPIB unit (#2 in the links Arhi posted) and see how that went, but he indicates it's pretty lousy and buggy.

Thanks for your comments (and to others here who have contributed), it's an interesting topic and it would be good if it leads to some useful info for the DP community.


Reply #12
I've personally only ever used Agilent USB-GPIB or PCI cards (mainly because that's what I started with and began building libraries for test equipment around those drivers).  Like you said above, dropping 500 bucks on a converter is peanuts to most companies/labs doing this kind of stuff.

An old co-worked did purchase a GPIB-USB converter from Sparkfun (I think) and had good success with it - seems to be the Prologix mentioned above.  The interface worked well for the simple stuff he was doing at home - mainly just automating an arbitrary waveform generator.


Reply #13
Yeah, I've heard lots of good things about the Prologix. For some reason I was thinking they were a lot more expensive (maybe I was thinking of another brand), but they are actually pretty reasonably priced.


Reply #14
It's always tempting to roll your own "because you can" - but at the end of the day you've gotta ask yourself what you're trying to accomplish.  If it's something for "work" then the answers change significantly than something for your "hobby" (for a lot of people here these areas overlap quite a bit!).

Ahri does this stuff for fun (keep in mind this is the same guy that designed an alternative soldering iron driver:)).  So, this falls into the hobby realm for him.  So it might make sense to roll a $20-30 GPIB-USB converter - just "because you can" and to provide an OS alternative to the rest of the community.

Unfortunately, all of my interaction with GPIB has been work-only - I bang out some code to perform the automation I need and then move on to the "real" project.