> If you just want to use [rts/cts] for flow control there shouldn't > be any problems... Assuming YOUR idea of "flow control" matches the USB vendor's idea of "flow control." I wouldn't expect "standard" half-duplex flow control (ie RTS/CTS as defined in the rs232 specifications, which is quite different from how it's generally used these days) to work through any USB serial adaptor, or even the windows serial APIs, for example. > I can set RTS to tell when a complete data was sent and > cts when complete data is received > Is that what you meant? That's unusual even by the bent standards of todays usage. Modern usage: CTS (input) will be "true" when the other side has room for you to transmit additional data. RTS (output) is set "true" when you have room to receive data. Usually handled by hardware to acheive FIFO-level flow control. Traditional (half duplex) usage: RTS (output) is set "true" when there is data to transmit. CTS (input) will be "true" when the modem has successfully switched direction and you can transmit. RTS is set "false" when data transmission is done. DTR, DSR, CD, and RING would normally be involved only at "call setup time" for both modern and traditional usage: Traditional: The modem detects the phone ringing and blips RING. the computer notices and asserts DTR, which causes the phone to answer. The modem trains and asserts CD and/or DSR, and the computer responds by starting a session. To end call, computer drops DTR or modem drops CD/DSR (and computer responds by dropping DTR.) DTR is off in idle. (I don't recall the distinction between CD and DSR.) Modern: Modem detects phone ringing, answers phone, and trains up all by itself, then asserts DSR or CD, which the computer notices and starts a session. Session is ended by computer dropping DTR or modem dropping DSR/CD. DTR is ON in idle; typically the modem will not answer calls unless DTR is ON. (backward compatibility is achieved by blipping RING during ring regardless, at which time the computer can assert DTR, which allows the modem to auto-answer.) You can confuse yourself by trying to think of voltage levels instead of logical states; there are a couple places where voltage inversions occur. Thus the ambiguity of "assert" and "true" in the above... If you're going to fiddle with rs232, you should build or buy yourself a dual state (two colors of LED per lead) rs232 breakout or monitor box. Alas, db9 is the modern standard for rs232 connectors, and db9 monitors seem rather uncommon; I have a cute double-sided EAGLE PCB that works pretty well, if anyone is interested... BillW -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist