0
\$\begingroup\$

I am trying to hook up my Jackson Labs' LC_XO GPS disciplined oscillator (GPSDO) to my computer motherboard COM/serial port so I can talk to it and for it to send back NMEA messages. Basically, I am trying to connect a serial TTL CMOS device to a computer motherboard RS232 10-pin IDC header.

The LC_XO uses +3.3V serial TTL communication interface. Therefore, to connect it to a COM/serial port on a modern computer motherboard, I need to convert the serial TTL voltages from the LC_XO to computer RS232 compatible voltage levels, correct?

Attached is a wiring diagram using two MAX3232 (from SparkFun) that I am using to convert the PPS, RX, and TX coming from the LX_CO into RS232 voltage levels.

The issue that I am having is that using an oscilloscope, the voltage levels coming out of the MAX3232 are not -12V to +12V, but -3V to +3V which I believe is too weak and get lost in the background noise of the RS232 port voltage levels, correct ? Don't modern COM ports expect -12 to +12V and anything weaker than that get lost in the noise?

The LC_XO is able to stream NMEA messages and I can see those using Putty (115200, 8N1), but I cannot send any commands to the LC_XO.

Any suggestions on what I am doing wrong?

I also tried swapping the TX/RX connectors, but that didn't help (I lost the NMEA message stream.)

The attached PNG has the specs for the LC_XO.

enter image description here

Here is the spec sheet for LC_XO:

LC_XO spec sheet

UPDATE: Sep 30, 2021:

As Peter Bennett suggested below, I rewired the "TXD --> LX_CO ser_in" channel and here is my final configuation. As DoxyLover suggested, I also added common Grounds. I am getting NMEA messages so I will leave it at that...still cannot send any commands though...I occasionally get a "Command Error" if I send the command a bunch of times using Putty, 115200, 8N1, Local Line Editing and Local Echo set to Forced On. Thank you all for assistance!

enter image description here

enter image description here

\$\endgroup\$

3 Answers 3

1
\$\begingroup\$

It appears that you have the MAX3232 T2 converter channel connected backwards.

The computer TXD (an output) should connect to T2IN, and T2OUT should connect to the LC_XO ser_input.

\$\endgroup\$
1
\$\begingroup\$

There is one more thing not addressed in the other two answers. Your schematic shows no connection to the motherboard connector's ground pin. To use MAX3232 properly, you must connect the MAX3232 ground pin to both of the LC_X0 and motherboard's ground pins. This is the reference for the transmits and receives,

Without this connection, you're tying to reference the transmit and receive to each other which just doesn't work.

\$\endgroup\$
0
\$\begingroup\$

the voltage levels coming out of the MAX3232 are not -12V to +12V...but -3V to +3V ...which I believe are too weak and get lost in the background noise of the RS232 port voltage levels...correct ? Don't modern COM ports expect -12 to +12V and anything weaker than that get lost in the 'noise' ?

Not quite correct. A valid RS232 signal level at the receiver is anywhere between -15V and -3V (mark) and anywhere between +3V and +15V (space), it's the values between -3V and +3V that are "no-go", per standard. But reality is even more forgiving than that; if you look at the specs for a chip like the MAX3232 itself, it will actually register anything above +2.4V as space, and anything below +0.8V (yes, that's positive) as mark. With modern technology, it's simply far easier to do it that way.

Now Peter Bennett is correct... you've got one of your channels wired up backwards, and that's your problem (and not the voltage levels; if that was the issue you wouldn't be seeing the NMEA messages), but I thought I would make the correction — and point out a corollary:

You probably could get by with only one, single channel, MAX232 (or half of a MAX3232), between the PC's TXD and the GPSDO's RX (to drop the voltage level to something that won't blow up the GPSDO), and connect the other two signals directly. If your wires are short (I certainly hope they are for this application) and your motherboard's serial chip has similar specs to the MAX232, then the 0V/+3.3V levels will work just fine, and you'll have maybe half a microsecond less delay and tens of ns less jitter on your PPS input; the MAX232 isn't quite a time-nut device.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you all for the comments. OK, so I re-wired the computer TXD to LC_XO serial input as mentioned. Also made sure I have all Grounds connections common. Here is the current wiring setup: i.imgur.com/wt3Z0Z1.png BUT, I am still not able to send any commands. I am receiving NMEA message. Sometimes if I hit <ENTER> key I get a "command error". I am using Putty with a baud rate fo 115200, 8N1, and the Terminal Local Echo and Local Line Editing set to "Force On" i.imgur.com/G46fD9n.png i.imgur.com/MQjufZX.png \$\endgroup\$ Sep 28, 2021 at 12:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.