Tektronix Technical Forums are maintained by community involvement. Feel free to post questions or respond to questions by other members. Should you require a time-sensitive answer, please contact your local Tektronix support center here.

RTS input on Keithley 6221 ignored

Post Reply
chrissa
Posts: 5
Joined: September 3rd, 2012, 10:26 am
Country: South Africa

RTS input on Keithley 6221 ignored

Post by chrissa » June 13th, 2013, 8:13 am

Hello

I emailed this question to on the 7th of June to this email address ([email protected]) I had no response. Maybe I should have posted this on the forum from the beginning. Here we go...
__________________________________

Look at the attached - in the pdf file.

1. I have enabled HW flow control on the PC. It works well. When the CTS line to the PC is opened* with switch sw2 the PC stops transmitting on its TX pin.

2. HW Flow control in the other direction is however a problem. When switch sw1 is opened** the Keithley 6221 does not stop transmitting on its TX pin. Note that at this point the PC is transmitting to the Keithley querying its status; this is the only way that I can get the Keithley to send something to the PC so that I can test the hardware flow control in this direction. I have done this test with FLOW-CONTROL = NONE and XON-XOFF. I don’t expect XON-XOFF enabled to have any influence on RTS and CTS functionality since this is a SW flow control scheme.


* (node 3 change from 6V tp 0V when sw2 is opened)
** (node 2 change from 9V to 0V or -5V depending on what is connected to switch sw 1 as shown in the schematic)

Why do the Keithley 6221 keep on transmitting when it's RTS line is interrupted?
This means that HW flow control is not implemented on the 6221.

Please help
Attachments
Keithley 6221 not responding to RTS input.pdf
(93.95 KiB) Downloaded 1484 times

Mark W
Keithley Applications
Keithley Applications
Posts: 14
Joined: July 9th, 2012, 5:52 am
Country: United States

Re: RTS input on Keithley 6221 ignored

Post by Mark W » June 13th, 2013, 8:28 am

For HW flow control, RTS pin on one end of the cable needs to be connected to CTS on the other end of the cable. When RTS stays asserted at the receiver it means:keep sending data to me. If RTS is negated it means: stop sending me data. When the receiver is ready for more input, it asserts RTS requesting the other side to resume sending. For DTE type equipment, the RTS pin sends the flow control signal to the CTS pin on the other end of the cable.

Mark

chrissa
Posts: 5
Joined: September 3rd, 2012, 10:26 am
Country: South Africa

Re: RTS input on Keithley 6221 ignored

Post by chrissa » June 13th, 2013, 10:33 am

Hello Mark
Thank you for quick response. I have discussed the serial port definition in the Keithley 6221 document with Dale C in the past. Keithley do not stick to the official RS232 standard if that standard actually ever existed. I base my interpretation of the standard on the sources found in the attached rs232.bmp.

Two problems with your first statement
For HW flow control, RTS pin on one end of the cable needs to be connected to CTS on the other end of the cable.
Keithley say I must use a 1 to 1 cable i.e. non-null-modem to connect the instrument to a PC. If I do as you instruct "connect the RTS on the one end of the cable to the CTS on the other end of the cable" I will have to use a cross over or null-modem cable which Keithley say should not be used. And they are right because RTS on a PC is output and CTS on Keithley is an output. The connection for HW flow control that you are referring to is applicable between two DTE devices.

TO ALL PEOPLE THAT CAN HELP WITH THIS PROBLEM
I dont want to write much more about this topic because to much explaining just muddle the topic. Please look carefully at the attached hand drawn circuit diagram and keep in mind that keithley do not stick to the RS232 naming standard which is not necessarily a train smash as long as you know which pins are outputs and which pins are input for the data and flow control pins. Very easy to measure. The arrows on the diagram indicate which pins are outputs and which are inputs. Now if the HW flow control of two devices are connected output to input there is nothing more in terms of connection that you can do to make things work. So forget about the pin labels and look at the circuit.

When I open switch 2 the PC stop transmitting. Thats correct.
When I open switch 1 the ONLY hardware flow control input of the keithley is negated so it should not transmit any data, and it does when I request its device ID with *IDN?

WHY?!!!

Note that I know of no other way to cause the 6221 to transmit data other than transmitting a request to it to do so such as *IDN? Dont know if this overrride HW flow control.
Attachments
RS232 Standard summary.pdf
Just extra info about RS232
(28.71 KiB) Downloaded 1440 times
Keithley 6221 not responding to RTS input.pdf
THIS IS THE HAND DRAWN SCHEMATIC OF THE CIRCUIT
(93.95 KiB) Downloaded 1511 times

Norbert W
Keithley Applications
Keithley Applications
Posts: 227
Joined: October 21st, 2010, 7:18 am
Country: Germany

Re: RTS input on Keithley 6221 ignored

Post by Norbert W » June 28th, 2013, 3:53 am

Dear Christo,

if I understand correctly your central question is:
-----
Why do the Keithley 6221 keep on transmitting when it's RTS line is interrupted?
This means that HW flow control is not implemented on the 6221.
-----
In my understanding of RTS it means Request to Send and is
in control of DTE equipment (PC) in half duplex usage.
This said it is an information from the PC to your 6221 that it has
some command(s) for it.

In your *IDN? example:
The 6221 then would signal when ready by CTS.
The next step would be *IDN? sent from the PC to the 6221.
The 6221 would then send its identity string back – regardless
of any RTS setting.

In a nutshell: RTS is an information signaling that the PC has
commands for the 6221 (waiting for CTS before it really starts
to send them), it’s not intended to stop data being
sent from the 6221.

Best regards
Norbert

chrissa
Posts: 5
Joined: September 3rd, 2012, 10:26 am
Country: South Africa

Re: RTS input on Keithley 6221 ignored

Post by chrissa » July 1st, 2013, 2:38 am

Hello Norbert

Thank you for the response.
In a nutshell: RTS is an information signaling that the PC has commands for the 6221 (waiting for CTS before it really starts to send them), it’s not intended to stop data being sent from the 6221.
I fully understand this comment and I am willing to accept that flow control between the PC and 6221 should be very reliable because I realize that the 6221 only transmit data when requested by the PC; so the PC have a very good mechanism to prevent its receive buffers to overflow. The purpose of flow control is to avoid your receive buffers from overflowing.

But one thing still bugs me. What about the situation where the PC have send a command to the 6221. The 6221 now responds with data but the PC receive buffer is to small for the data or it cannot empty its receive buffer quick enough before it send the next command to the 6221. Preventing the PC from sending a new command (which might cause the 6221 to send more data) when its receive buffer is full might not always be easy or desirable. It will be much better to handle this on a HW level by preventing the 6221 from transmitting data.

As you have admitted yourself RTS does not stop transmitting data from the 6221. It only signals that the PC have data. It is clear that there might be rare cases where it is desired to signal the 6221 to stop transmitting.
How would data transmission from the 6221 that is already in progress be interrupted if needed?

Post Reply

Return to “Other Keithley Instrument Products”

Who is online

Users browsing this forum: No registered users and 2 guests