Using the RS-232 HP/IL Interface


So I gathered the required equipment (HP/IP, Ext I/O, RS-232) and now I'm trying to get it to work. I have been able to OUTP a program from the 41 to the PC, but I have not been able to transmit it back to the 41 (INP) for a full round trip. I'm using Windows Terminal to receive, and the type command to send. I've found some Linux utilities, is there anything for Windows that automates the process? I can't be the only one to attempt this, or am I?



You're not the only one. I've attempted it with similar results. I was using HPVEE (a program that allows you to communicate with serial and HPIB ports).

I had similar results. I could upload a program easily. I could also download small programs, but I did not have success with larger programs. About that time I got an hpil/isa interface and an old 286 and am now using LINK+ for all my pc-hpcalculator comms.

I was thinking that the longer programs wouldn't transfer because the 82164's buffer fills up. The small programs don't fill the buffer so they go through. I think it may be just getting the settings right.

I am still interested in getting my 82164 to work though. You might try emailing Tony Duell (sp?). He programmed the linux versions. Please let me know if you learn anything new and I'll do the same.



...i am currently working on a program that faciliates data transfers between windows PCs and HP41s that are interconnected via rs232 - HP-IL interface. if you are interested in beta-testing, you might like to give it a try. just drop me a mail and i'll be sending the program to you. i would be very happy to know that at least someone (except me )has some fun in using it.
what you will need: 1)HP-41C, 2)X-IO module, 3)HP-IL-module, 4)82164A, PC with Windows 98 (that's the only O.S. that i have tested so far).

cheers, hans


I'd be happy to beta test it. What's your email address?



Please count me in as a beta tester too.

I have an 82164a, an hp41cx, and an extended i/o rom.




I, too, would love to be a beta-tester and would be willing to write comments or a review for you.



Well, I couldn't resist putting in a public plug for Hans Brueggermann's HPILCOM program!

He was kind enough to email it to me to try, and I LIKE it very much! It has a very professional graphical interface which includes a "browser" window from which one can see programs that reside in a particular directory on the PC which are selectable for downloading to the HP41. What is especially nice, though, is that one really controls all of the transfers both to and from the HP41 from the HP41 itself. The HPILCOM program, runnning on the PC, simply facilitates the transfers to and from the HP41 and allows monitoring the progress of the transfer with a progress bar and status "LED's".

To send a program to the PC, one types in the name of the program on the HP41 into the alpha register and executes OUTP.
That's it! The HPILCOM program receives the program, monitors the progress, displays the received program, and stores it to the PC.

To get a program from the PC, one first drags the program to a particular directory on the PC which can be viewed from the HPILCOM's "browser" window and then executes a small program on the HP41 called GETFL. GETFL prompts for the name of the program that is visible in the browser window and then gets it: the HPILCOM program does the "handshaking" with the GETFL program and sends it to the HP41 as initiated by the HP41 via the GETFL program.

He also has a routine built into the HPILCOM program that allows the HP41 to initiate getting the PC's time and date and transfering it to the HP41, from which another HP41 program that he provides will set the HP41's time and date to match! The programs on the HP41 are VERY short! You must have an EXTENDED I/O module, however, though it looks like he has done some experimenting with the CCD module. I'm not so familiar with that module, so I may have misunderstood if it could be used as well.

He also has built-in "hooks" to the HP41UC.exe program, from within HPILCOM, such that one can translate from RAW to DAT mode by checking "radio" buttons withing HPILCOM. Furthermore, he has "hooks" for future enhancements, including character translations that, I believe, will be done on-the-fly during transfers.

Finally, he has radio buttons to allow auto-commenting for alpha characters, XROM numbers, and no-label tags for HP41UC compatibility.

His program makes using the HP82164A to transfer programs to and from the HP41 as seemless as possible.

(running HPILCOM on Windows ME)




Hi Hans,

I, too, would appreciate of being a beta tester. I am happy to own all that stuff you listed, so, give me a try.

Kind regards,


Hi Hans,

I'd actually also like to try your program and will sure write you my experiences.

Best Regards from Switzerland


Yes, feel free to e-mail me about INP and OUTP and using the 82164 for HP41->PC communications. However, please realise that all I can tell you is how __I_ did things, and how the HP41/82164 works. I can't help with PC operating systems other than the (ancient) version of linux I run.
A few points, though. Firstly, the HP41's INP command is very 'picky' about what it receives. It will abort the transfer if it receives anything other than the right hex characters. This means no whitespace, no newlines, etc.
Secondly, the 82164 buffer is fairly small, so you must use some kind of handshaking. I prefer hardware handshaking, using the RTS/CTS (etc) lines -- using XON/XOFF _will_ cause problems if you ever want to transfer binary data (where these characters can occur naturally in the file). This won't be a problem with the HP41, it could well be a problem with the HP71 (I wanted to be able to use both machines).
Thirdly, the person who designed the 82164 never had to use one, and probably never used any other RS232 device. At least that's the only explanation I can give for the behaviour of the handshake lines. They are _crazy_. One pair is associated with the transmitter side, the other with the receiver. This means a normal null-modem cable will not work unless the serial port you're connecting to is equally crazy. Linux serial ports aren't!
Forthly, ignore that DTE/DCE jumper inside the 82164, it does strange things to some of the handshake lines. Keep it in the DTE position, and wire the right external cable. .
OK, how to get it working (at least the initial steps). (1) If your PC can use RTS/CTS for handshaking (as Linux does), make up the adaptor shown in my linux utils documentation. If not, then you'll have to read the 82164 manual and work out the right wiring
(2) Enable hardware handshaking on the PC port. (3) Run the SETRS program (from my linux program docs again) on the HP41 to enable hardware handshaking on the 82164 (and set some other parameters). (4) Use OUTP on the HP41 to send a reasonably-long program from the HP41 to the PC, and capture it in a file. Then run INP on the HP41 and send the same data back again. Don't go any further until you've got this working. If it doesn't work, then you need to put an RS232 tester, breakout box, or datacomms analyser between the PC and the adapter cable (this is the point where the handshake lines should be relatively sane!) and see what's going wrong.
(5) Either port my linux versions of INP41 and OUTP41 to your OS, or write your own versions (read the comments in my programs to get the data format, etc).


I have not tried Han's program yet, but I do have a round trip transfer of a large program working with just some basic tools!

I used a shareware app called slurp to read bytes from COM1 and save them to a file. I then send the bytes from the file using "type filename >COM1". I enabled XON using the mode command, and set baud to 9600, parity to none, data bits to 8, and stop bits to 1. I did not make any configuration changes to the HP-IL/RS-232. To make things easier I changed the jumper on the RS-232 from DTE to DCE.

As Tony pointed out, this works for a HP-41, since the byte stream is ascii. If you use a 71 (I don't have one) you will need to use hardware handshaking and the DCE setting will not work.

I hope to try Han's app tonight, but for now I'm just happy I found a way to send/receive using the 41!



I did not make any configuration changes to the HP-IL/RS-232. To make things easier I changed the jumper
on the RS-232 from DTE to DCE.

As Tony pointed out, this works for a HP-41, since the byte stream is ascii. If you use a 71 (I don't have one) you will need to use hardware handshaking and the DCE setting will not work.

I used Tony's Linux utilities with my 71. I switched the jumper in the 82164 contrary to what Tony says in his directions and I ran the setrs utility and transfered programs to/from my 71 to my PC no problems. Maybe I'm lucky I don't know but I didn't need a null modem adaptor.

You definitly need hardware flow control set as he points out the 82164 has a small buffer and will easily be overun if you don't have this set.

My $.02 FWIW.


The TYPE command puts in all sorts of formatting characters (line feeds, etc). Type the COPY /B file COM1... the /B says it is a binary file and not to mess with the contents. Some COPY commands have parameters that can control handshaking.


The type command doesn't add formatting characters, but it is only for printable (ascii) characters, and therefore will only work with the 41. I used it to output a 400 byte file to the 41 and it worked flawlessly. If there was a CR or LF added the checksum would have been invalid and the INP would have failed with a data error.


Possibly Related Threads...
Thread Author Replies Views Last Post
  How to move lexfiles from PC to 71 w/o HP-IL? Joe Horn 9 2,006 10-18-2013, 03:50 PM
Last Post: Christoph Giesselink
  HP48GX Interface to a PC John W Kercheval 7 1,523 09-29-2013, 10:53 AM
Last Post: John W Kercheval
  HP Prime "Symb" interface (bug?) Han 8 1,489 09-13-2013, 12:48 PM
Last Post: Chris Tvergard
  Hand Held Products RS232 to HP-IL aj04062 11 1,986 08-31-2013, 07:12 PM
Last Post: Paul Berger (Canada)
  HP IL over wifi ... (ILPer & go71b) Olivier De Smet 12 2,566 08-20-2013, 05:44 AM
Last Post: Olivier De Smet
  Virtual HP-IL Video Interface ILVideo the 2nd! Christoph Giesselink 3 978 08-15-2013, 06:49 PM
Last Post: Sylvain Cote
  HP 85 Serial Interface; INPUT Example? inaki 1 696 06-12-2013, 11:09 PM
Last Post: Paul Berger (Canada)
  Trouble with RS-232/HP-IL Interface (HP 82164A) Hans Holzach 9 1,850 01-08-2013, 01:52 AM
Last Post: Marcus von Cube, Germany
  Virtual HP-IL 40 col. video interface simulation Christoph Giesselink 10 1,935 08-19-2012, 06:46 PM
Last Post: Richard Wagoner
  Cursors on Video Interface HP82163 Christoph Giesselink 4 1,077 07-21-2012, 02:57 PM
Last Post: Sylvain Cote

Forum Jump: