hesse@watserv1.waterloo.edu (BJ Cameron - DCS) (01/17/91)
I think there is a serious problem with the way AIX controls (or should I say does not control) the flow of data on serial ports other than COM1. I am using a PS2 model 80. In addition, the system has a two-port serial board and an eight-port ARTIC card. Why all the serial ports? This is supposed to be a print server. Some of the printers will be using XON/XOFF flow control and others will be using hardware flow control. Using the DEVICES command, I set up com1 as /dev/tty0. I set DVAM to 1, PRO to DC and IXP to FALSE. The DVAM of 1 says to wait until all three signals (DC DSR and CTS) are present before sending any file. Without this the data gets sent even if there isn't a cable attached, not a desirable option when people are paying for output. The PRO set to DC tells AIX to use hardware flow control. As an aside, the other setting is DTR and the manual says that this is the usual setting. The manual does not say what DTR stands for but goes on to explain that "the DC (Direct Control) value allows attachment of devices that use hardwired flow control, such as certain serial printers and plotters." This is followed by the NOTE: "While hard-wired flow control is sometimes referred to as DTR pacing the PRO keyword must be set to DC to support this function." Wow! Makes you wonder what their DTR option stands for? Using a break-out box I can control the state of CD CTS and DSR. When I send a job to the printer, and if the signals CD CTS and DSR are not present, nothing prints; this is expected. If I only make one or two of the signal available nothing prints; again this is expected. If, when I finally make all three signals available the print file starts to print. If I then remove the CTS signal the flow of data stops; when the signal is restored the printing starts again. This is the way hardware flow control should work. I then set up /dev/ttyc0 on the artic card exactly the same, move the same cable from the tty0 port to the ttyc0 port and try to control the output in the same fashion that I described above. It does not work. When I send a job to the printer, and if the signals CD CTS and DSR are not present, nothing prints; this is expected. However, what is different is that when I apply only CD and DSR the file starts to print; it does not wait for the CTS signal. Once the job starts printing the flow cannot be stopped with CTS. When replacing the printer with an ascii terminal, I can control the flow of data via XON/XOFF flow control, yet this should not be the case since the IXP is set to FALSE, which (in my understanding) means don't use XON/XOFF. The results are exactly the same on the two-port serial card. The question is, does anyone on the net use a serial port other than the motherboard COM1 to drive a printer, and if so, do hardware flow control work for you? Thanks... Bri