If you look on the back of old, old test equipment, you’ll find a weird-looking connector that’s either labeled IEEE-488, GPIB, or HP-IB. It’s a very old interface designed by HP for their test equipment, and it was licensed to other manufacturers for everything from power supplies to logic analyzers. Hewlett-Packard also made computers and workstations once upon a time, and it’s no surprise this interface also made it into these boxes. They even had external hard drives that operated over the HP-IB interface.
[Chris] has a few of these old computers, and wanted to see if he could emulate one of these HP-IB hard drives. There is a project to emulate these hard drives, but the electrical connection is a bit tricky; you need an IEEE-488 card, and those really aren’t made anymore.
Nevertheless, [Chris] found an old ISA IEEE-488 last year, and installed it in the PC system he’s using for all his retro explorations. After getting the card and cable to fit in the case of his PC, [Chris] connected a real HP-IB disk to his modern computer running HPDrive, made an image, and connected an old HP 150 computer. The image was read by the HP 150, and [Chris] had a vintage computer running off an emulated drive.
Good idea. Except for the fact that GPIB (who’s much the same as the HP-IB one.) are available as USB devices or were from NI. And of course what HP’s test and measurement division evolved into. (Or were last time I looked.)
I spend most of each day programming GPIB equipment. Brand-new Keithley and Keysight multimeters have GPIB connectors on the back, and NI still makes PCI and PCIe GPIB cards (for staggering amounts of money.) Plus there are gobs of usb-gpib adapters, both DIY and commercial, from NI’s $600 offerings through Prologix’s $99 unit down into the $40 range on ebay. It’s a very old standard — circa 1965 — but it’s still going strong and virtually all high-end test equipment still offers it as an option.
One day I’ll post (and maybe write up for hackaday) the software I wrote that makes a PC with a Prologix GPIB-USB attached act like a Prologix GPIB-Ethernet :)
The Commodore PET computers used the IEEE-448 for their peripheral interconnect. Eventually they made a custom variant for their serial bus which was lower cost to manufacture. The serial interface as used by the 1541 floppy disk drive, for instance, was this variety.
Worse programming experience ever. Writing drivers or C64 HPIB floppies. Also slowest drives I ever used with the exception of DEC little cartridge tape drives (1 hour boot).
Try loading from floppy on c64.
The TRS-80 Color computer loaded faster off of Casette Tapes than the C64 did off of it’s floppy drive.
Yeah, it was slow. The serial bus was hooked up to three bits of the general purpose parallel port of the interface IC (CIA) which meant it had to be software controlled, essentially bit-banged. The CIA did have a serial port and internal shift registers but that was hooked up to the user port edge connector, not the serial bus. Why Commodore decided to do it this way is anyone’s guess. They did fix it on the C128 which hooked the hardware serial pin to the IEC bus and thus had much faster serial bus speeds.
HP-IB protocol was usable as a computer network, and also to connect those old HP plotters. My dad had an HP85 and later a HP8086 and a HPUX (linux) machine. All where capable to communicate and share disks and plotters thru the HPIB network since the cables had 4 connectors : male+female at each end. This allowed to connect multiple cables on every device and chain them. Very user friendly concept. No switch needed. The trouble was the price. HP was so incredibly compared to other solutions.
Yep, even sparkfun has a reasonably expensive Prologix GPIB usb dongle https://www.sparkfun.com/products/549
Unfortunately, that dongle can only seem to interface with one or two devices and not a bus, as they didn’t properly design the thing with line drivers…
I think you all missed the point. What he did was to emulate a CS-80 disk drive. That isn’t just an adapter.
Doc
Actually partner. I didn’t. I was commenting that our author thinks that this standard is an oldie but a goodie and largely being ignored. It isn’t. Its a favorite of a lot of instrumentation companies, and incidentally mine.
I’ll be more to the point. Brian doesn’t know what the hell he’s talking about because he is a tech blogger that doesn’t have any real background in tech. He WRITES for hack-a-day…. He isn’t down here in the trenches with people who do any kind of real work or knows what kind of standards are around or not, because he doesn’t know shit about the subject matter. It would be like me telling him how to write. I’m not a writer, so I’ll just keep my mouth shut.
This site is for entertainment, take the information contained within as such. Unless it’s from one of the real technicians or engineers (i.e. have degrees in the field and have worked in the real industry) who sometimes contribute.
GP-IB or HP-IB is still very much alive, it’s still an option for most new test equipment and it is still used daily.
We don’t use cheap Chinese scopes with USB out here in the real world. For more reasons than one…
I really don’t like gpib and I get Ethernet where possible but like stated above there not hard to find gpib to USB, gpib to Ethernet, pci even pcie but there pointlessly expensive
Can you trigger and synchronize a bunch of stuff over Ethernet, though? :P
With the proper software, yes.
I call BS.
Seriously, let’s think about the retry delays…
let’s think about why TCP/IP vs. ICMP(?)/IP exists…
OK, I’m probably forgetting acronyms, here, but there’s a reason various protocols exist, and the fact-is, there’s basically *zero* guarantee that a packet will arrive *as-sent/expected*. If yahgonna use that… over *any* ethethet-standard… for a *trigger*… you’re *CRAZY*.
You’re assuming the only way to send data over ethernet is via tcp/ip. That’s a dangerous assumption considering there are many protocols that use ethernet. Further, if you set up a dedicated network you can send and receive raw ethernet frames, allowing fast and synchronized data transfers. Faster than GPIB can do, and with shorter response times given GPIB’s holdoff requirements. Synchronization becomes moot anyway, once you get a multitasking operating environment involved. ;)
Over the Internet, maybe. If you’re losing packets on your LAN, something needs fixing.
jbevren and Greenaum; good points. Probably one of those cases where I know just enough to get myself in trouble.
Does anyone else think that stackable usb plugs might be an interesting way to go?
…yeah… gpib/hp-ib… I never did understand the ethernet-based methods… This is, essentially, like taking the amazing-bit-banging-absolute-timing-nature of the parallel-port, and shoving it across something like USB… It doesn’t work. There’s a reason all those parallel-port methods don’t work across a USB->parallel adapter… and here, we’re not talking about a single port, but an entire *BUS*.
Props to this developer for doing what they did.
And… yes… at least as-of 2004ish, GPIB still existed in some pretty sophisticated test-equipment; PCI GPIB adapters were nowhere near affordable for the hobbiest, nor even for the college-researcher.
Props, seriously, for pulling this off.
It’s always funny when GPIB comes up on HAD it’s declared “old old old” and “obsolete”. It’s nowhere near obsolete, especially not in high-end/ low-cost installations (and yes, those exist – they’re often made up from 2nd hand gear) and many semi-professional or professional labs with no deeep funding.
Hear hear. One can do a lot with a 20-year-old beige box with “HP” on the front, combined with some good software. My entire bench is wired together via GPIB routed to an old HP 2050A GPIB-Ethernet bridge. I can control everything with a PC or tablet, heck, even my phone, using Python for automation. Much of that old gear can be found for pennies on the dollar now.
HPIB/GPIB has a predictable latency and data transfer rate. It is a proven technology for use in experimental and industrial work that must be reliable (or at least predictable when it fails). USB of any kind is a *kludge* at the best of times and prone to unpredictable failures. Ethernet is not much better unless you pay $$$ for the appropriate gear and take the time to implement it appropriately. Case in point: Would you want to control a dangerous high voltage test rig in an industrial setting with a cheap USB serial dongle or the run of the mill, chipset of the week based ethernet controller?
It is best to use the appropriate tool for the job….