The Museum of HP Calculators

HP Forum Archive 07

[ Return to Index | Top of Index ]

HP-IL/RS-232 Interface 82164A - IDEAS? What it is & what it can be used for? Value?
Message #1 Posted by doug on 25 Nov 2001, 9:01 p.m.

Someone mentioned one of these to me. Anyone have one that have successfully connected to a PC. Over simplified. Can you type a program (HP71B) and send to HP71B then return program to PC to update? Connection to PC? Ah, You guys know. Is it a very expensive device normally? doug

Re: HP-IL/RS-232 Interface 82164A - IDEAS? What it is & what it can be used for? Value?
Message #2 Posted by the phantom on 26 Nov 2001, 12:21 a.m.,
in response to message #1 by doug

As a way of pointing out what you can get by searching around the archives of this very forum, I'll show you the first few posts beginning May 30 of this year, regarding the unit (participants: Alex, Mike T, Tony D)

------------------------- I want to use the 82164A RS232C interface to connect my 41CX to my PC and up/download programs. The idea is to edit them on the PC and then Download into the 41.

I am interested if any one knows if there is software (both ends) and/or other useful instructions on how to do this.

Alex ------------------------- Yes, it's possible. I've done it, using an HP41CV, and I see no reason why a CX wouldn't work. You need an Extended I/O ROM in the 41 -- the necessary functions are not in the HPIL Development (DEVIL) or XIL ROMs as far as I know. The Extended I/O ROM has 2 functions OUTP and INP that will transfer a program in hexadecimal format (using printable ASCII characters) to any HPIL device, such as the 82164. I don't know what OS you're running on the PC, but the software I've written for the PC end runs under linux. You can get it (as C source) from the hpcc web site, it's part of the LIF utilities for linux distribution. It's released under the GPL, so you're welcome to try porting it to other operating systems (the 2 programs in question won't be that hard to port). These programs turn the HP41 hex transfer into a binary program file (essentially the bytes that would be stored in user memory for that program), but there's also a program in the distribution to produce a printable listing of an HP41 binary program. I've not written the reverse of that program (a 'user code compiler') because I've never needed it, but I am told that my binary format is the same as the .raw format used by MS-DOS HP41 tools, so you might try that program. Alternatively, if you want to try writing your own software, then my C source contains a description of the HP41 hex format, something that's missed out of the user manuals

Tony Duell ----------------------- Hi Tony-

For your instructions on this site, did you make the "signal adapter" external to the 82164, or did you open it up, remove the jumper block, and make the connections there?

I use WindowsME (though I LIKE linux). Isn't it true that I ought to be able to use a terminal emulation program that has text capture to get the transfer if the inp and outp commands send PRINTABLE ASCII?

Have you ever tried transferring files with just a simple 3-wire cable and software handshake (XON,XOFF)?

I'll try finding a BASIC compiler (I wonder if there's a GNU one out there), and compile your inp41 and outp41 programs and try them on WindowsME.

Thanks for your help!

-Mike Tjebben -------------------------------

To answer your questions in order : I made an external adapter for the 82164. I used one of those little boxes that take a DB connector at each end (the sort of thing that's used for null-modem adapters, etc). The jumper plug inside the 82164 is left in the DTE position. I find the only sane way to use the 82164 is to leave that jumper in the DTE position and make a cable up for each application I have for the interface. It's easier than having to open up the unit, set the jumper and find a cable with the right connectors. INP and OUTP do, indeed, just use printable ASCII characters. 0-9 and A-F only. They never send CR or LF, for example. And INP will complain (and abort the transfer) if you put spaces, or CRs or LFs or anything else in the data stream. This is one thing I don't like about these functions. I have never tried to use a terminal emulator to do the transfer, but it should work. I have also never tried to use a 3 wire cable and software handshaking. I use the same hardware to transfer files to/from the HP71, and that machine sends 'binary', not printable ascii, so I can't use software handshaking there. But for the HP41 it should work if the 82164 is configured for it. And I am not sure what you want a BASIC compiler for. I wrote the PC (linux) programs in C, and GNU C will, indeed, compile them. You will have to fiddle the I/O side for other OSes, of course.

Tony Duell ----------------------------

See? Getting neat info is often just a matter of searching the archives... lots of cool stuff is here. I think the answers to your other questions are around too, if you'll dig in.

Re: HP-IL/RS-232 Interface 82164A - IDEAS? What it is & what it can be used for? Value?
Message #3 Posted by Tony Duell (UK) on 26 Nov 2001, 5:26 p.m.,
in response to message #1 by doug

It's what it says it is. An interface between an HPIL loop and an RS232 port. You have to have a controller (like a calculator) on the HPIL side -- you can't use it to (say) link an HPIL printer to an RS232 port. But of course you can put the 82164, a calculator, and a printer on the same loop and program the calculator to read data from the RS232 interface and print it. Yes, I've linked it to a PC. I use hardware handshaking which involves a specially wired cable (the 82164's handshake is just plain _odd_). And I've used it to transfer HP71 programs, and text files, and ... between an HP71B and a PC. There are 2 basic ways to do this. The first is to use COPY on the HP71, which sends the file (any file) to/from the RS232 port in binary, and which supplies/expects a 32 byte LIF directory entry on the start of the data. This is what I normally do. The other is to use HP's 'Program Development Link' software (which I think came on a mini cassette tape or disk for the HP71) and which transferes text between the HP71 and the PC. You then use TRANSFORM on the HP71 to turn a text file into a BASIC program or whatever. If you're interested in my software and you don't mind C source code for linux, then it's available (GPLed) from

Re: HP-IL/RS-232 Interface 82164A - IDEAS? What it is & what it can be used for? Value?
Message #4 Posted by Pavel Korensky on 26 Nov 2001, 8:48 p.m.,
in response to message #1 by doug

For example, you can use it for connecting your HP-IL peripherals to Ethernet LAN. Just add a small box with one microcontroller and piece of software. Was there, did it.

Re: HP-IL/RS-232 Interface 82164A - IDEAS? What it is & what it can be used for? Value?
Message #5 Posted by Bill Smith on 28 Nov 2001, 11:20 a.m.,
in response to message #4 by Pavel Korensky

i have tried to follow the HP-IL/RS-232 threads since acquiring one about a year ago, but this is the first I've heard of the ethernet interface.

if the info has already been posted, please let me know. otherwise, would you consider posting the details such that a duffer like me could replicate one?

[ Return to Index | Top of Index ]

Go back to the main exhibit hall