The most common problem with RS232 is needing to switch Tx and Rx. Tx of the sender needs to go to Rx of the receiver. Some cables have Rx and Tx internally swapped, some do not. Murphy's law says you always have the wrong one.
Other possible problems are the handshake signals. RTS must be asserted, sometimes requiring an extra jumper on the interface even if you are using only a 2-wire cable.
I have seen some examples where several of the DB9 pins are linked in the cable end, (6 to 1 and 4, etc.). Which I think fakes out the handshakes. I may try that. It seems like there is no buffer on the RS232 data logger end. It just spits out 16 characters every 2 seconds, and whatever reads them on the receiving end has to be ready for them. Serial2.available() doesn’t work at all. It is never available. Something shows up on the Arduino end, since the RS232 to TTL level shifter lights up the Tx out LED. I think maybe the data logger feeds out End Word characters nonstop until a New Word begins(?). I will see if the manufacturer of the data logger has some better documentation. The manual has the bare minimum of information.
See page 15 if interested: http://www.reedinstruments.com…/manual/sd-947-manual.pdf