>Tjaart, regarding your schematic: >> It converts +-12V (on the PC side) to -+5V (note the >> inversion) on the micro side. >Doesn't it convert +-12v to 0v-5v, unless RTS goes negative in which case >the PIC sees -12v? Ya, I think that is what he meant. >Could you tie the ground connection to pin 4 instead of pin 5 to get the >legal voltage swing for transmitting to the PC? (I mean if you adjusted the >R values, set the control lines correctly at the PC end and go through >diodes just in case). If pin 4 is RTS it will normally be at +12 when RTS is off (RS232 levels are reversed) But... IDEA: TD which is Pin 2 on a peripheral DB9 or Host DB25 connector (pin 3 on a host DB9 connector or peripheral DB25) will typically rest at -12 as driven by the external device. My Fluke 77/AN reads about -10 on pin 3 of the DB9 connected to my PC. Some people (Tom Engdahl at http://www.hut.fi/Misc/Electronics/circuits/rspower.html ) have suggested using this fact to derive -12 for TX power. This makes sense as we normally are not RXing as we TX. How about adding a diode, resistor and big fat cap to provide a more or less steady source of -12v to drive pin 3 below zero when the NPN is biased off? Scenix did this on a demo modem board http://www.geocities.com/SiliconValley/Lab/3544/scenix/sx_modem_demo.pdf (circuit on last page), NationalsÊapp note for a mouse actually skipped the cap and Engdahl did something similar in a line buffer circuit http://www.hut.fi/Misc/Electronics/circuits/rsbuffer.html but he was using an external power source for extra juice so the amplifier type would have to be changed from emitter follower to a voltage gain amp. They did not use RTS as a source of +12 volts, connecting the transistor to +Vcc (local +5 volts) instead. My thinking is that if RTS isn't at +12, the peripheral shouldn't be sending anyway. In fact, if I bias this correctly, setting up the TX pin as an input would allow the peripheral to read the RTS status without needing another IO pin. Here is my circuit. http://www.geocities.com/SiliconValley/Lab/3544/io/serial/ttl-rs232.gif What do you think? The only thing my circuit is doing differently is that it uses a cap to filter and store the -12 from TD (which they did in the scenix modem) and it uses +12 volts from RTS instead of the +5 from the local supply. I increased the biasing resistor (R4 on the attached circuit) to compensate for the increase from +5 to +10. Is ok? No? The part count is 1 transistor, 2 diodes, 4 resistors and a cap and it (should, well... may) provide +/-12 to +/-5 (must invert in software) conversion and converts +/-5 to +/-12 (or a little less). Less board space and 1/10 the cost of a MAX232 or MAX233. Can't wait to hear back from others and try it myself. Fun stuff huh? James Newton, webmaster http://get.to/techref jamesnewton@geocities.com 1-619-652-0593 phone