I'm working with an evaluation board to try to verify something for a PCB that was designed with the evaluation board as the template. I am unable to use UART to talk to the evaluation board and I think it is because the engineer who designed the PCB changed to voltage level on the UART input. When I put my SoC on our native board I can use the UART just fine - on the evaluation board I am getting nonsense characters out. Since the baudrate setting for uBoot is on the SoC it can't be a baudrate issue. I started studying the schematics and I need some help understanding this:
The first picture is the UART input for the evaluation board: (data sheet: https://www.ti.com/lit/ds/symlin...)
It seems as if the expected RS232 inputs should be 5V, which are then converted to 3v3 by the device. This confuses me a bit as the name of the device is " 3-V to 5.5-V Multichannel RS-232 Line Driver/Receive" - but in this case it seems like it is doing both?
Similarly - the output UART1_TxD_RS323 seems to be outputting 5V (line 9).
Meanwhile on our in-house design it looks like this: (datasheet https://www.onsemi.com/pdf/datas...)
So here it looks like the expected input already is at 3v3 and no conversion is done.
I have a TTL-RS232-3V3 cable that I am using to try to communicate with the device. Since it is working on the in-house design, I think the issue with the devboard is that the voltages are messed up. Is this correct? Could I just make quick-and-dirty fix and make a level converter circuit on a breadboard or is that risky? The last circuits class that I took was over 10 years ago at this point - I can't say I remember much of it. Can somebody point me in the right direction or draw a circuit for me?