From: travcoe21 on
Greetings --

Can anyone tell me all of the settings one needs to apply to a serial
port from a Command Prompt window (via the MODE command) in order to
talk to an HP7580 plotter?

With my old W98SE box, all I had to do was open an MS-DOS prompt, type

MODE COMn: 1200,n,8,1,p
copy %1 COMn:

.. . . and the plotter would be off and running, with the CPU copying
HPGL plot file %1 to the COMn: port. But with my new XP box I have yet
to successfully do this.

I have tried both a Prolific USB-serial converter and a SIIG PCI
plug-in serial port. With the converter the plotter writes readable
text, but the lines are all garbage. With the plug-in card, I can't
seem to talk to the plotter at all, either from a Command Prompt or
from Windows as an installed printer.

I know that both ports are working, because I have successfully
communicated with another serial device over both. The cable
connecting the CPU to the plotter hasn't changed since the days of the
W98SE box, other than getting rid of a share switch. I do notice, when
I type HELP MODE, that there seem to be many more options for serial
port operation under XP than there are under W98SE, which is what is
prompting my question.

FWIW, I'm using the WinLine HPGL driver to create plot files, both on
the old box and the new. The old box had 2 serial ports on the
motherboard.

TIA for any help anyone can give!

Jeff Travis

From: Paul on
In article <1149866718.907059.47430(a)h76g2000cwa.googlegroups.com>,
"travcoe21" <JeffTravis(a)greenbelt.com> wrote:

> Greetings --
>
> Can anyone tell me all of the settings one needs to apply to a serial
> port from a Command Prompt window (via the MODE command) in order to
> talk to an HP7580 plotter?
>
> With my old W98SE box, all I had to do was open an MS-DOS prompt, type
>
> MODE COMn: 1200,n,8,1,p
> copy %1 COMn:
>
> . . . and the plotter would be off and running, with the CPU copying
> HPGL plot file %1 to the COMn: port. But with my new XP box I have yet
> to successfully do this.
>
> I have tried both a Prolific USB-serial converter and a SIIG PCI
> plug-in serial port. With the converter the plotter writes readable
> text, but the lines are all garbage. With the plug-in card, I can't
> seem to talk to the plotter at all, either from a Command Prompt or
> from Windows as an installed printer.
>
> I know that both ports are working, because I have successfully
> communicated with another serial device over both. The cable
> connecting the CPU to the plotter hasn't changed since the days of the
> W98SE box, other than getting rid of a share switch. I do notice, when
> I type HELP MODE, that there seem to be many more options for serial
> port operation under XP than there are under W98SE, which is what is
> prompting my question.
>
> FWIW, I'm using the WinLine HPGL driver to create plot files, both on
> the old box and the new. The old box had 2 serial ports on the
> motherboard.
>
> TIA for any help anyone can give!
>
> Jeff Travis

Possible issues:

1) 8 bit versus 7 bit transparency
2) Flow control method

I think you have (1) covered, by your mode choice of "8".

It is harder to tell about flow control. There are a couple of
methods, like X-ON/X-OFF or hardware flow control (RTS/CTS on the
cable interface.) You would think the hardware flow control would
be enough to allow the printer, to tell the computer to stop for
a moment when necessary.

It could be that the plotter simply cannot be guaranteed to "eat"
data at 1200 baud (i.e. if flow control is not working for some
reason). For example, try the experiment at 300 baud and
see what happens. (Make sure the plotter is set to 300 baud
before you try.)

To debug serial problems, you can plug the output of one serial
port, into another serial port. Use a null modem cable or adapter
plug, which will connect TX-RX and RX-TX on the two serial
interfaces (plus do the right things with the flow control
signals). If you set up a Hyperterm on one COM port, then use
your "copy %1 COMn:", you should see the data show up on the
Hyperterm screen. There is presumably a way to redirect the
output to a file, and then you can compare the source file,
and the file that comes back on the other serial port (I used
to do this years ago, but no longer remember the DOS command.)

http://www.radioshack.com/product/index.jsp?productId=2103637&cp=&origkw=null+modem&kw=null+modem&parentPage=search

In this USBM100 manual, there appears to be a menu item for
flow control. See page 7 here. Perhaps selecting hardware
flow control will fix it.

http://www.ibizcorp.com/downloads/USBM100%20Install.pdf

Paul
From: travcoe21 on
Hi, Paul --

Thanks for this thoughtful response. There are some interleaved
replies.

Jeff

Paul wrote:
> In article <1149866718.907059.47430(a)h76g2000cwa.googlegroups.com>,
> "travcoe21" <JeffTravis(a)greenbelt.com> wrote:
>
> > Greetings --
> >
> > Can anyone tell me all of the settings one needs to apply to a serial
> > port from a Command Prompt window (via the MODE command) in order to
> > talk to an HP7580 plotter?
> >
> > With my old W98SE box, all I had to do was open an MS-DOS prompt, type
> >
> > MODE COMn: 1200,n,8,1,p
> > copy %1 COMn:
> >
> > . . . and the plotter would be off and running, with the CPU copying
> > HPGL plot file %1 to the COMn: port. But with my new XP box I have yet
> > to successfully do this.
> >
> > I have tried both a Prolific USB-serial converter and a SIIG PCI
> > plug-in serial port. With the converter the plotter writes readable
> > text, but the lines are all garbage. With the plug-in card, I can't
> > seem to talk to the plotter at all, either from a Command Prompt or
> > from Windows as an installed printer.
> >
> > I know that both ports are working, because I have successfully
> > communicated with another serial device over both. The cable
> > connecting the CPU to the plotter hasn't changed since the days of the
> > W98SE box, other than getting rid of a share switch. I do notice, when
> > I type HELP MODE, that there seem to be many more options for serial
> > port operation under XP than there are under W98SE, which is what is
> > prompting my question.
> >
> > FWIW, I'm using the WinLine HPGL driver to create plot files, both on
> > the old box and the new. The old box had 2 serial ports on the
> > motherboard.
> >
> > TIA for any help anyone can give!
> >
> > Jeff Travis
>
> Possible issues:
>
> 1) 8 bit versus 7 bit transparency
> 2) Flow control method
>
> I think you have (1) covered, by your mode choice of "8".

That's correct. n,8,1 always worked in the past.

> It is harder to tell about flow control. There are a couple of
> methods, like X-ON/X-OFF or hardware flow control (RTS/CTS on the
> cable interface.) You would think the hardware flow control would
> be enough to allow the printer, to tell the computer to stop for
> a moment when necessary.

Right, everything I've seen says that you need to use hardware
handshaking for the plotter. But as I mentioned, there seem to be more
options for hardware handshaking than previously. To wit:

C:\HELP MODE

returns . . .

Serial port: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]
[to=on|off]
[xon=on|off] [odsr=on|off]
[octs=on|off]
[dtr=on|off|hs]
[rts=on|off|hs|tg]
[idsr=on|off]

> It could be that the plotter simply cannot be guaranteed to "eat"
> data at 1200 baud (i.e. if flow control is not working for some
> reason). For example, try the experiment at 300 baud and
> see what happens. (Make sure the plotter is set to 300 baud
> before you try.)

It definitely can't eat data at 1200 baud. That's what the ",p" is for
in the MODE command that used to work -- "infinite retry on timeout".
Using 600 baud would typically result in the plotter stopping to wait
for more data, so it seemed like 1200 baud was the way to keep the
pipeline full.

> To debug serial problems, you can plug the output of one serial
> port, into another serial port. Use a null modem cable or adapter
> plug, which will connect TX-RX and RX-TX on the two serial
> interfaces (plus do the right things with the flow control
> signals). If you set up a Hyperterm on one COM port, then use
> your "copy %1 COMn:", you should see the data show up on the
> Hyperterm screen. There is presumably a way to redirect the
> output to a file, and then you can compare the source file,
> and the file that comes back on the other serial port (I used
> to do this years ago, but no longer remember the DOS command.)

This is an excellent idea, I will try it. Thanks!

> http://www.radioshack.com/product/index.jsp?productId=2103637&cp=&origkw=null+modem&kw=null+modem&parentPage=search
>
> In this USBM100 manual, there appears to be a menu item for
> flow control. See page 7 here. Perhaps selecting hardware
> flow control will fix it.
>
> http://www.ibizcorp.com/downloads/USBM100%20Install.pdf

I get the same sort of display in the Command Prompt after issuing a
MODE command, regardless of whether I use the USB adapter or the
plug-in:

Status for device COM2:
-----------------------
Baud: 1200
Parity: None
Data Bits: 8
Stop Bits: 1
Timeout: OFF
XON/XOFF: OFF
CTS handshaking: ON
DSR handshaking: ON
DSR sensitivity: OFF
DTR circuit: HANDSHAKE
RTS circuit: HANDSHAKE

This appears to have hardware handshaking enabled, yet I get absolutely
no response from the plotter, and then DOS come back after a bit with a
message about "The handle is invalid."

> Paul

From: Paul on
In article <1149900572.594100.296320(a)j55g2000cwa.googlegroups.com>,
"travcoe21" <JeffTravis(a)greenbelt.com> wrote:

> Hi, Paul --
>
> Thanks for this thoughtful response. There are some interleaved
> replies.
>
> Jeff
>
> Paul wrote:
> > In article <1149866718.907059.47430(a)h76g2000cwa.googlegroups.com>,
> > "travcoe21" <JeffTravis(a)greenbelt.com> wrote:
> >
> > > Greetings --
> > >
> > > Can anyone tell me all of the settings one needs to apply to a serial
> > > port from a Command Prompt window (via the MODE command) in order to
> > > talk to an HP7580 plotter?
> > >
> > > With my old W98SE box, all I had to do was open an MS-DOS prompt, type
> > >
> > > MODE COMn: 1200,n,8,1,p
> > > copy %1 COMn:
> > >
> > > . . . and the plotter would be off and running, with the CPU copying
> > > HPGL plot file %1 to the COMn: port. But with my new XP box I have yet
> > > to successfully do this.
> > >
> > > I have tried both a Prolific USB-serial converter and a SIIG PCI
> > > plug-in serial port. With the converter the plotter writes readable
> > > text, but the lines are all garbage. With the plug-in card, I can't
> > > seem to talk to the plotter at all, either from a Command Prompt or
> > > from Windows as an installed printer.
> > >
> > > I know that both ports are working, because I have successfully
> > > communicated with another serial device over both. The cable
> > > connecting the CPU to the plotter hasn't changed since the days of the
> > > W98SE box, other than getting rid of a share switch. I do notice, when
> > > I type HELP MODE, that there seem to be many more options for serial
> > > port operation under XP than there are under W98SE, which is what is
> > > prompting my question.
> > >
> > > FWIW, I'm using the WinLine HPGL driver to create plot files, both on
> > > the old box and the new. The old box had 2 serial ports on the
> > > motherboard.
> > >
> > > TIA for any help anyone can give!
> > >
> > > Jeff Travis
> >
> > Possible issues:
> >
> > 1) 8 bit versus 7 bit transparency
> > 2) Flow control method
> >
> > I think you have (1) covered, by your mode choice of "8".
>
> That's correct. n,8,1 always worked in the past.
>
> > It is harder to tell about flow control. There are a couple of
> > methods, like X-ON/X-OFF or hardware flow control (RTS/CTS on the
> > cable interface.) You would think the hardware flow control would
> > be enough to allow the printer, to tell the computer to stop for
> > a moment when necessary.
>
> Right, everything I've seen says that you need to use hardware
> handshaking for the plotter. But as I mentioned, there seem to be more
> options for hardware handshaking than previously. To wit:
>
> C:\HELP MODE
>
> returns . . .
>
> Serial port: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]
> [to=on|off]
> [xon=on|off] [odsr=on|off]
> [octs=on|off]
> [dtr=on|off|hs]
> [rts=on|off|hs|tg]
> [idsr=on|off]
>
> > It could be that the plotter simply cannot be guaranteed to "eat"
> > data at 1200 baud (i.e. if flow control is not working for some
> > reason). For example, try the experiment at 300 baud and
> > see what happens. (Make sure the plotter is set to 300 baud
> > before you try.)
>
> It definitely can't eat data at 1200 baud. That's what the ",p" is for
> in the MODE command that used to work -- "infinite retry on timeout".
> Using 600 baud would typically result in the plotter stopping to wait
> for more data, so it seemed like 1200 baud was the way to keep the
> pipeline full.
>
> > To debug serial problems, you can plug the output of one serial
> > port, into another serial port. Use a null modem cable or adapter
> > plug, which will connect TX-RX and RX-TX on the two serial
> > interfaces (plus do the right things with the flow control
> > signals). If you set up a Hyperterm on one COM port, then use
> > your "copy %1 COMn:", you should see the data show up on the
> > Hyperterm screen. There is presumably a way to redirect the
> > output to a file, and then you can compare the source file,
> > and the file that comes back on the other serial port (I used
> > to do this years ago, but no longer remember the DOS command.)
>
> This is an excellent idea, I will try it. Thanks!
>
> >
http://www.radioshack.com/product/index.jsp?productId=2103637&cp=&origkw=null+modem&kw=null+modem&parentPage=search
> >
> > In this USBM100 manual, there appears to be a menu item for
> > flow control. See page 7 here. Perhaps selecting hardware
> > flow control will fix it.
> >
> > http://www.ibizcorp.com/downloads/USBM100%20Install.pdf
>
> I get the same sort of display in the Command Prompt after issuing a
> MODE command, regardless of whether I use the USB adapter or the
> plug-in:
>
> Status for device COM2:
> -----------------------
> Baud: 1200
> Parity: None
> Data Bits: 8
> Stop Bits: 1
> Timeout: OFF
> XON/XOFF: OFF
> CTS handshaking: ON
> DSR handshaking: ON
> DSR sensitivity: OFF
> DTR circuit: HANDSHAKE
> RTS circuit: HANDSHAKE
>
> This appears to have hardware handshaking enabled, yet I get absolutely
> no response from the plotter, and then DOS come back after a bit with a
> message about "The handle is invalid."
>
> > Paul

There is a page here with the options:

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/mode.mspx?mfr=true

and this page suggests:

http://cctr.umkc.edu/ftp/anon_ftp/info/KERMIT/KERMIT.BEWARE

"MODE COM1 RTS=HS OCTS=ON (for RTS/CTS hardware flow control)"

I wonder whether DSR handshaking should be on ?

At some point, I'd have to dig out a voltmeter, and measure
the values on the status lines. At one time, you could get
a LED readout which would show the value on the lines. The
value of the lines should also be available in software.

http://www.eas.asu.edu/~cse521/handouts/RS232_and_flow_control.pdf

This web page is the result of one person's attempts to
debug an RS232 problem.

http://home.att.net/~Tom.Horsley/p4c800e.html

Perhaps in all of that, you can discover what is jammed :-)
Debugging problems like this takes me a while, and part of
the problem is I don't do it often enough to learn anything.
I can tell you, I keep a bag of RS232 connectors of all
types, 25 pin, 9 pin, gender changers, null modem adapter,
and the like, so I can handle virtually any reasonable combo
of 9 and 25 pin devices. But I never invested in a LED
status indicator, and end up using a voltmeter for that.
At least the voltmeter can tell me the static state of the
signals, in cases where something is jammed. An analog meter
is sometimes better, as you can even see when a TX line
is transmitting, as the analog meter will "jump" a bit
for the characters.

Paul
From: travcoe21 on
Paul --

Many thanks for this gold mine of information!!

I'm intriigued by the MS description of the "to" option; it sounds like
the sense of it is the opposite of what I guessed. The option defaults
to off, and was off in the status display I posted earlier; but this
means that infinite time-out processing is off, not that the port can't
time out. That sounds very promising. Apparently the ",p" option
doesn't work anymore, but is not explicitly rejected by COMMAND.COM. I
will try this first, and then your null-modem technique.

The RS-232 "Theory of Operation" document also looks very good.
Between these and the plotter documentation (which I found on CD), I'm
hopeful that I can restore communication to the plotter.

Again, many thanks!

Jeff

Paul wrote:
> In article <1149900572.594100.296320(a)j55g2000cwa.googlegroups.com>,
> "travcoe21" <JeffTravis(a)greenbelt.com> wrote:
>
> > Hi, Paul --
> >
> > Thanks for this thoughtful response. There are some interleaved
> > replies.
> >
> > Jeff
> >
> > Paul wrote:
> > > In article <1149866718.907059.47430(a)h76g2000cwa.googlegroups.com>,
> > > "travcoe21" <JeffTravis(a)greenbelt.com> wrote:
> > >
> > > > Greetings --
> > > >
> > > > Can anyone tell me all of the settings one needs to apply to a serial
> > > > port from a Command Prompt window (via the MODE command) in order to
> > > > talk to an HP7580 plotter?
> > > >
> > > > With my old W98SE box, all I had to do was open an MS-DOS prompt, type
> > > >
> > > > MODE COMn: 1200,n,8,1,p
> > > > copy %1 COMn:
> > > >
> > > > . . . and the plotter would be off and running, with the CPU copying
> > > > HPGL plot file %1 to the COMn: port. But with my new XP box I have yet
> > > > to successfully do this.
> > > >
> > > > I have tried both a Prolific USB-serial converter and a SIIG PCI
> > > > plug-in serial port. With the converter the plotter writes readable
> > > > text, but the lines are all garbage. With the plug-in card, I can't
> > > > seem to talk to the plotter at all, either from a Command Prompt or
> > > > from Windows as an installed printer.
> > > >
> > > > I know that both ports are working, because I have successfully
> > > > communicated with another serial device over both. The cable
> > > > connecting the CPU to the plotter hasn't changed since the days of the
> > > > W98SE box, other than getting rid of a share switch. I do notice, when
> > > > I type HELP MODE, that there seem to be many more options for serial
> > > > port operation under XP than there are under W98SE, which is what is
> > > > prompting my question.
> > > >
> > > > FWIW, I'm using the WinLine HPGL driver to create plot files, both on
> > > > the old box and the new. The old box had 2 serial ports on the
> > > > motherboard.
> > > >
> > > > TIA for any help anyone can give!
> > > >
> > > > Jeff Travis
> > >
> > > Possible issues:
> > >
> > > 1) 8 bit versus 7 bit transparency
> > > 2) Flow control method
> > >
> > > I think you have (1) covered, by your mode choice of "8".
> >
> > That's correct. n,8,1 always worked in the past.
> >
> > > It is harder to tell about flow control. There are a couple of
> > > methods, like X-ON/X-OFF or hardware flow control (RTS/CTS on the
> > > cable interface.) You would think the hardware flow control would
> > > be enough to allow the printer, to tell the computer to stop for
> > > a moment when necessary.
> >
> > Right, everything I've seen says that you need to use hardware
> > handshaking for the plotter. But as I mentioned, there seem to be more
> > options for hardware handshaking than previously. To wit:
> >
> > C:\HELP MODE
> >
> > returns . . .
> >
> > Serial port: MODE COMm[:] [BAUD=b] [PARITY=p] [DATA=d] [STOP=s]
> > [to=on|off]
> > [xon=on|off] [odsr=on|off]
> > [octs=on|off]
> > [dtr=on|off|hs]
> > [rts=on|off|hs|tg]
> > [idsr=on|off]
> >
> > > It could be that the plotter simply cannot be guaranteed to "eat"
> > > data at 1200 baud (i.e. if flow control is not working for some
> > > reason). For example, try the experiment at 300 baud and
> > > see what happens. (Make sure the plotter is set to 300 baud
> > > before you try.)
> >
> > It definitely can't eat data at 1200 baud. That's what the ",p" is for
> > in the MODE command that used to work -- "infinite retry on timeout".
> > Using 600 baud would typically result in the plotter stopping to wait
> > for more data, so it seemed like 1200 baud was the way to keep the
> > pipeline full.
> >
> > > To debug serial problems, you can plug the output of one serial
> > > port, into another serial port. Use a null modem cable or adapter
> > > plug, which will connect TX-RX and RX-TX on the two serial
> > > interfaces (plus do the right things with the flow control
> > > signals). If you set up a Hyperterm on one COM port, then use
> > > your "copy %1 COMn:", you should see the data show up on the
> > > Hyperterm screen. There is presumably a way to redirect the
> > > output to a file, and then you can compare the source file,
> > > and the file that comes back on the other serial port (I used
> > > to do this years ago, but no longer remember the DOS command.)
> >
> > This is an excellent idea, I will try it. Thanks!
> >
> > >
> http://www.radioshack.com/product/index.jsp?productId=2103637&cp=&origkw=null+modem&kw=null+modem&parentPage=search
> > >
> > > In this USBM100 manual, there appears to be a menu item for
> > > flow control. See page 7 here. Perhaps selecting hardware
> > > flow control will fix it.
> > >
> > > http://www.ibizcorp.com/downloads/USBM100%20Install.pdf
> >
> > I get the same sort of display in the Command Prompt after issuing a
> > MODE command, regardless of whether I use the USB adapter or the
> > plug-in:
> >
> > Status for device COM2:
> > -----------------------
> > Baud: 1200
> > Parity: None
> > Data Bits: 8
> > Stop Bits: 1
> > Timeout: OFF
> > XON/XOFF: OFF
> > CTS handshaking: ON
> > DSR handshaking: ON
> > DSR sensitivity: OFF
> > DTR circuit: HANDSHAKE
> > RTS circuit: HANDSHAKE
> >
> > This appears to have hardware handshaking enabled, yet I get absolutely
> > no response from the plotter, and then DOS come back after a bit with a
> > message about "The handle is invalid."
> >
> > > Paul
>
> There is a page here with the options:
>
> http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/mode.mspx?mfr=true
>
> and this page suggests:
>
> http://cctr.umkc.edu/ftp/anon_ftp/info/KERMIT/KERMIT.BEWARE
>
> "MODE COM1 RTS=HS OCTS=ON (for RTS/CTS hardware flow control)"
>
> I wonder whether DSR handshaking should be on ?
>
> At some point, I'd have to dig out a voltmeter, and measure
> the values on the status lines. At one time, you could get
> a LED readout which would show the value on the lines. The
> value of the lines should also be available in software.
>
> http://www.eas.asu.edu/~cse521/handouts/RS232_and_flow_control.pdf
>
> This web page is the result of one person's attempts to
> debug an RS232 problem.
>
> http://home.att.net/~Tom.Horsley/p4c800e.html
>
> Perhaps in all of that, you can discover what is jammed :-)
> Debugging problems like this takes me a while, and part of
> the problem is I don't do it often enough to learn anything.
> I can tell you, I keep a bag of RS232 connectors of all
> types, 25 pin, 9 pin, gender changers, null modem adapter,
> and the like, so I can handle virtually any reasonable combo
> of 9 and 25 pin devices. But I never invested in a LED
> status indicator, and end up using a voltmeter for that.
> At least the voltmeter can tell me the static state of the
> signals, in cases where something is jammed. An analog meter
> is sometimes better, as you can even see when a TX line
> is transmitting, as the analog meter will "jump" a bit
> for the characters.
>
> Paul