Serial port (UART0) in Jumper 8

I am developing on Unmatched board, and previously microUSB can be used as serial port for debugging. Unfortunately, microUSB port was broken by accidently, then there is no way for debugging via serial port.

According to hifive-unmatched-schematics-v3.pdf, there exists UART0_RX and UART0_TX at Jumper 8, and UART0 in Jumper 8 is connected to FTDI FT2232. So I believed UART0 in jumper 8 can be used as HW serial port, in this case, I connected UART0_RX and UART0_TX to serial port to my development machine. However, characters received in remote development machine are chaos.

Has anyone tried UART0_RX and UART0_TX jumpers in jumper 8? Is there any hardware rework or software settings required to make they work?

Thanks.

Sorry to hear about the microUSB damage. It’s possible to develop a serial connection that bypasses the Unmatched microUSB port.

Please note that the UART signals on J8 are low voltage (1.8V). If you drive signals higher than 1.8V into the FU740 you can damage it. The receiver you connect to J8 may also need a level translator such that it can discern the 1.8V signaling from the FU740.

Using J8 UART with a host machine will typically involve two components:

  1. USB to RS-232 to TTL translator. Such as: https://www.mouser.com/ProductDetail/SparkFun/BOB-12731?qs=WyAARYrbSnbHMBc18Yr9rg%3D%3D
  2. Bidirectional level translator to convert 3.3V to 1.8V. Such as: https://www.mouser.com/ProductDetail/SparkFun/BOB-11771?qs=WyAARYrbSnbdm%2F0zn%2B5p2g%3D%3D

I haven’t tried these specific devices above, only describing the process. It also looks like the reference boards above may need soldering but there may be alternatives that don’t require soldering.

Note that permanent damage can occur if the UART signals are driven incorrectly - for example by higher voltage or with contention. They connect directly to the FU740-C000. There is also no specific ESD protection for signals on J8 so there’s a danger of damage by static electricity.

Thanks for your reply with some many details. :slight_smile:

I don’t know if there’s a specific reason to go for two components, but FWIW there are also direct USB-to-1.8v-TTL cables like the FTDI TTL-232RG-VREG1V8-WE. I’ve not used it with the Unmatched board so can’t confirm it works.

TI make a TRS3122E EIA/TIA-232 transceiver that supports 1.8V operation. I have been able to use it to wire the board’s UART1 externally to a DE-9 connector from J8 via the NulSom NS-TRS232-02 adapter which uses that chip (you may have to order it direct from the manufacturer in South Korea just as I did):

# w
 00:53:34 up 41 days, 11:21,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     ttySIF1   14Oct21  4.00s  1.83s  0.01s w
# 

For UART0 you’d have to make sure the FT2232HL does not drive the UART0_RX signal at the same time, and sadly I cannot see a way other than desoldering the onboard TXS0102DQER voltage-level translator or R341 or suchlike. It’s a pity there are no jumpers for UART0_RX and UART0_TX that would allow one to disconnect the FT2232HL or I’d have avoided a complicated and costly way to have a remote USB console arranged for my Unmatched.

NB the markings of the FT_UART_RX and FT_UART_TX signals appear swapped on the board’s schematics (Revision: 3).

R341 should prevent the electrical signal contention between the on-board FT2232HL/TXS0102DQER and the signal driven from J8. The resistance of R341 should allow the signal from J8 to override the signal from the on-board FT2232HL/TXS0102DQER because from J8 to FU740 there is no resistor in this path.

I’m not sure what “NB the markings” means. There is a crossover connection from TX of FT2232HL to RX of FU740.

NB, Note Well. Nota bene - Wikipedia
I believe @macro wants readers to take note of the error in the markings.

Right, I guess the FT2232HL is supposed to be a DTE in the usual application, so the markings are correct.