Post Reply 
HP 50g infrared transfer
05-21-2015, 07:12 AM
Post: #1
HP 50g infrared transfer
Just found some IrDA to serial converters and was trying to send data from my HP 50g to a terminal program. I tried "ABC" XMIT and have set the 50g to communicate over IR and 9600 baud. When I do a OPENIO the 50g starts so send a lot of "garbage" characters to the terminal program every 3 seconds or so. Is there a possibility to send characters over the IR interface? I have used the serial cable before and was working.

/Andreas
Find all posts by this user
Quote this message in a reply
05-25-2015, 06:16 AM (This post was last modified: 05-25-2015 06:17 AM by Graan.)
Post: #2
RE: HP 50g infrared transfer
Maybe its not possible to use the IR as a normal serial port? Any hints or suggestions?

/Andreas
Find all posts by this user
Quote this message in a reply
05-28-2015, 10:48 AM (This post was last modified: 05-28-2015 10:49 AM by Martin Hepperle.)
Post: #3
RE: HP 50g infrared transfer
Hi Andreas,

indeed the HP 50g can send data to its IR-port using the IrDA protocol.
In contrast to the simpler HP 48G SIR protocol IrDA starts with a negotiation phase where both partners exchange information about baud rate etc.
This is part of a "discovery process" where the devices periodically send a message like "hello, I am here, who is there?" out into the blue until someone responds and a connection is established.
This type of communication is what you might have seen.

So the first question is: is your IR adapter really IrDA compliant and does it possibly need some software on the PC side to reply to the discovery messages?
The second question would be: did you use the "correct" baud rate, bit size and parity settings?

My Setup is as follows.

PC Side
An older Fujitsu-Siemens laptop S6010 with Windows XP. The IrDA port is an integral part of this system and uses a small window on the back of the computer.
Additionally I have installed the driver IrCOMM2K which redirects IrDA to a virtual COM port.
I use a terminal program such as Teraterm or Hyperterm to view the data. The baud rate setting in the terminal program seem to have no effect as the sped is controlled by the IrDA driver. I found no need to limit the transfer speed in the IrDA port settings of device manager.

HP 50g Side
Flag -34 set (use a serial protocol), flag -33 set (use the IR port).
Joe Horn also notes on his web site that flag -127 should be clear (IrDA and not SIR), but the Advanced Users Guide just tells the exiting story "not used" about this flag. I have to investigate this a bit more.

Operation
The HP 50g has to very close (approx. 20-40mm) and should have good batteries as the IR draws more current than regular operation.
Sometime the devices seem to have problems to establish a connection.

Baud rate settings seems to play no role as the speed is negotiated betwen the devices. I can print the stack or large RPL programs using the HP50g's print commands. If course the translation flag in IOPAR should be set to e.g. 3 to avoid "funny" characters on the receiving end.
For example I use <<OPENIO 5 WAIT PRST CLOSEIO>> to print the stack.

I am not sure whether the OPENIO / CLOSEIO is needed, but is does not hurt and I thought it might be good to WAIT some time to establish the connection.
DELAY can be zero and a BAUD rate in IOPAR of 115200 is possible. The transfer goes in chunks at high speed only the discovery and initiation of the connection can take several seconds.

Conclusions:
In general the communication works, but is a bit finicky to set up (distance, initiation of connection).

Martin
Find all posts by this user
Quote this message in a reply
05-29-2015, 11:07 AM
Post: #4
RE: HP 50g infrared transfer
Thank you Martin for your valuable information.

The adapter is a ACTISYS IR ACT-IR-220L Plus IrDA to Serial adapter.
There is a sticker saying: "IrDA reference Product" so according to this it should be working with IrDA.

I have 2 of these and tried to transfer serial data between 2 computers (win7 and win XP) with a terminal program and it works fine.
When sending data between the 2 computers I do not see any "garbage" characters and I think it means the negotiation between the adapters works.

I tried different settings on my HP 50G and it does not matter what setting I use I always get the same "garbage" characters (negotiation) coming from the HP 50G at regular intervals.

So apparently the negotiation is not right as the adapter just send the negotiation characters through to the terminal program.

Seems also that the adapter can work either in RAW mode and IrDA mode. I was not successful to install a driver for Win XP. It installed but I did not see any device, but using the serial port I doubt a driver is necessary.

/Andreas
Find all posts by this user
Quote this message in a reply
05-29-2015, 04:36 PM (This post was last modified: 05-29-2015 04:37 PM by Martin Hepperle.)
Post: #5
RE: HP 50g infrared transfer
(05-29-2015 11:07 AM)Graan Wrote:  ...
The adapter is a ACTISYS IR ACT-IR-220L Plus IrDA to Serial adapter.
There is a sticker saying: "IrDA reference Product" so according to this it should be working with IrDA.
...

Looking through the specs of this adapter I would also expect it to work. The manufacturer seems to be a specialist in IrDA so I would also expect that they havwe implemented the standard accurately.
I also guess that you played with differenrt baud rates on the PC.
Often "garbage" visible in serial communications is due to wrong baud rate or byte size (7 vs. 8).
But according to your descirption I guess that the communication gets over the initialization step. I have no further ideas at the moment.

Also note that if you use the I/O menu dialogs, e.g. Print... and switch there to IR this will change the flags -33 and -34 as this command is intended to send its output to the 82240 IR printer (in RedEye not IrDA format).
So you have to use the command line resp. a << code object >> to set the flags and then call the appropriate print function like PRST.

Martin
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)