Two arduinos with MAX3232 ports - can each communicate with PC but not eachother

Sender - Arduino Uno with an RS-232 shield with SIPEX SP3232EEA chip. (Female DB9)

Receiver - Arduino Uno with an RS-232 module RS-RS232-01 with a SIPEX 3232EE chip. (female DB9)

For the purposes of my testing, the Sender sends an ASCII string repeatedly. I can increase and decrease this number via buttons. The Receiver accumulates numeric digits until it receives a new line, then displays that value on an LCD. The Receiver also echos back what it receives.

If I connect the Sender via USB serial adapter (that is, not connecting to the USB port of the Arduino) and open the serial monitor, I can read the output exactly as intended. If I connect the Receiver to the PC in the same way, I can send and receive ASCII with no issues, and it displays values on the LCD and repeats data exactly as intended. I am very confident that there are no issues with the code.

If I swap the RS-232 shield onto the Receiver and the RS-232 module onto the Sender, each still works perfectly with the PC.

If I connect the RX/TX pins directly, it sort of works intermittently. I have to remove and replace the ground connection between the two devices to get the number to update when I change it. I don't know if this is relevant, but I thought I'd include it anyway. EDIT: Turns out there was a bug in the code when this test was performed. Everything now works normally when hooked up in this way.

What I need is for the Sender and Receiver to communicate when connected to each other. I connect them with a straight-through DB9 cable with male on both ends. The receiver receives nothing. I have tried swapping TX and RX on the module side in case that was the issue. It was not. I have used jumper leads to make the cable a null modem cable. That didn't do anything. There is no handshaking - just basic 9600 baud, 8 bit, 1 stop, no parity.

I got one of those $10 USB logic analyzers to sniff the data and was able to read the data coming out of the sender. No problem there. I can't read the data on the 5v side of the RS-232 module with the logic analyzer. My guess is that this is a limitation of the logic analyzer or my knowledge of how to use it, because it's not like it can't receive data with the RS-232 module, I get bi-directional communication between an Arduino and the PC.

I don't know what else to try. It's as if every configuration works except that one I need. Any ideas?

And this problem is now solved! It was the lack of a null modem cable that was the problem, and when I made my own null modem cable previously, it seems the leads were not secure enough to make a good connection.