# RS-232 switching

I have a modem connected to a server through RS232. The server is constantly sending data to the modem, whether the modem is connected or not.

When I try to connect to the modem with another modem the handshaking fails because the server is sending data that gets in the way.

I am looking for a way of stopping the communication between the server and the modem until the modem's DCD line is asserted.

What kind of device or component could be used to design a small passive (no power supply) circuit that could perform this operation?

As far as I can tell it is only the TX line that needs to be interrupted while the modem is off-line.

• @Handshaking I'm not sure this can be solved with hardware alone. I'm assuming your modem can auto answer and enters data mode once a connection is established. Why isn't the software on the server waiting for the modem to be ready before sending data? Also, are you certain the modem can't be configured to ignore this data itself (ie, always be in data mode)? A hardware solution to your problem might be as simple as an AND gate between the modem DCD, server TX to the RX on the modem. – snoopen Oct 27 '11 at 1:04
• @snoopen Can't change the software on the server's side. There is no parameter to change. I was looking for different modem configuration with no results. Maybe solution is there, but I didn't find it. A hardware solution is the best, so I decided to share the problem with community :-). Optotriac may be the solution, I'm looking for your experience in finding good result. Thanks. – Handshaking Oct 27 '11 at 8:09
• Tested with optotriac MOC 3041. DCD on input (12V, 1,5mA), Tx on load. It switches on when DCD goes high. When DCD goes low it still hangs ON. Even it is with zero crossing circuit build in, it don't work as I expected. Did I miss something? – Handshaking Oct 27 '11 at 20:45
• Can you update your question with a schematic of the circuit as you have it at the moment? It's a bit difficult to imagine how you have things hooked up at the moment. – snoopen Oct 31 '11 at 22:46
• @handshaking Please list the solution you are trying as an answer rather than a comment so we can talk about that answer seperate from the question. Even if you don't quite have it working yet. – mjh2007 Nov 1 '11 at 18:48

Perhaps the conceptually simplest approach to disconnect the TX line from the modem is with a phototransistor optoisolator:

            +-------------+
|             |
DCD----R1-+-|-+      |/---|----TX of server
D | LED >> |    |
GND-------+-|-+      |\---|--+-RX of modem (often confusingly labeled "TX")
|             |  |
+-------------+  +--R2--pulled LO (idle)


There's a huge number of such devices available that would be more than adequate. A brief inspection of the selection charts at my favorite suppliers seems to indicate that the Isocom H11AA4X, Isocom TLP521-4, Avago 4N35-000E, Lite-On LTV-816, etc. all seem adequate.

There are many devices that may sound like what you want, but they won't work for your application:

• optotriac or optoSCR won't work for you: these are designed to work with AC circuits, turning on when commanded to and then turning off at a later AC zero-crossing at the output. Many people try to use them in DC circuits, where they turn on just fine, but it is difficult to get them to turn off, so those people usually end up switching from SCRs to transistors.
• RS232 optoisolators do something completely different.

The design could also be software control using Rx Tx (X-ON / X-OFF data). But assuming it is Hardware controlled.... find an RS232 interceptor with dip switches for each signal for easy of disabling each connected pin and LED indication of each signal state. Then you can use open circuit for low (-v) and a pullup R or jumper to V+ available from DSR or something that is always on. Also Modems modulate and demodulate analog signals.. I think you mean switch SERIAL RS232 port while the shared modem port is connected?