# HG changeset patch # User Mychaela Falconia # Date 1576304664 0 # Node ID f7ed8c45a8ec11ae61ac84ca04e494be740d17f5 # Parent 1e76655a44bdadb156bb43e912382fab619fee30 DUART-cable article written diff -r 1e76655a44bd -r f7ed8c45a8ec DUART-cable --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/DUART-cable Sat Dec 14 06:24:24 2019 +0000 @@ -0,0 +1,95 @@ +The Calypso chip has two UARTs, called MODEM and IrDA in the chip docs. The +primary UART (MODEM) has 4 signals (TxD, RxD, RTS and CTS), whereas the other +UART (IrDA) has data leads only (TxD and RxD). TI's C-Sample and D-Sample +boards have also established a convention whereby Calypso GPIOs 2 and 3 have +been assigned as supplementary modem control signals for the primary MODEM UART, +with GPIO 2 being an output from Calypso signaling DCD to the host and with +GPIO 3 being an input to Calypso receiving DTR from the host. Note that DSR +and RI are still missing in this arrangement. + +In FreeCalypso we have further established our own convention: all FC hardware +products that bring out both Calypso UARTs do so by way of a single 10-pin (2x5) +2.54 mm header in a fixed pinout given below. This convention was started with +FCDEV3B, our first FC hw product, and is now being continued with MMTB1 and +other boards. Our standardized DUART header pinout is as follows: + +Header pin Calypso signal +1 GND +2 GND +3 TX_IRDA +4 TX_MODEM +5 RX_IRDA +6 RX_MODEM +7 GPIO2_DCD +8 RTS_MODEM +9 GPIO3_DTR +10 CTS_MODEM + +Pins 7 and 9 were originally left unused (they are unconnected on FCDEV3B), but +they have been assigned as DCD and DTR (from the host's perspective) starting +with MMTB1. Note that while DCD and DTR in the table above are named from the +host's perspective, all Calypso signals ending with _MODEM or _IRDA are from +the chip's perspective, i.e., the opposite. + +Our standard recommended practice for connecting to our two UARTs from a regular +PC or laptop is to use FT2232D breakout boards from the following vendor: + +http://pldkit.com/other/ft2232d-module + +FT2232D is a versatile USB-to-various-things adapter, but in its default +configuration which we use here it acts as a bridge from USB to two UARTs, +presenting both UARTs behind a single USB device. The breakout board made and +sold by PLDkit has two rows of header pins, featuring 15 pins on each side, and +the two sides of the board neatly correspond to the A and B sides of FT2232D. + +Our standard recommended method for connecting our two UARTs to a PLDkit FT2232D +board is to use a 10-wire ribbon cable that is custom-assembled as follows: + +* One end is terminated with a 10-pin female connector that mates with the DUART + header on our modem boards; + +* The other end is split into two parts as described below, and each split end + is terminated with a 15-pin female connector that mates with one side of the + FT2232D breakout board. + +The split between A and B sides on the FT2232D end is not symmetric, instead 7 +wires go to side A for the MODEM UART and 3 wires go to side B for the IrDA +UART. Assuming the standard color code, the 10-wire ribbon cable gets split +between violet and grey wires: brown to violet go to side A, grey to black go +to side B. After each wire has been stripped and fitted with a crimp-on female +terminal, FT2232D side A wires need to be inserted into the connector housing +as follows: + +Wire Pin position FT2232D signal UART signal (host perspective) +brown 2 ADBUS0 TxD +red 3 ADBUS1 RxD +orange 4 ADBUS2 RTS +yellow 5 ADBUS3 CTS +green 6 ADBUS4 DTR +blue 8 ADBUS6 DCD +violet 15 GND GND + +FT2232D side B wires need to be inserted into the other connector housing as +follows: + +Wire Pin position FT2232D signal UART signal (host perspective) +grey 2 BDBUS0 TxD +white 3 BDBUS1 RxD +black 15 GND GND + +The wires on the other end of the cable (also stripped and fitted with crimp-on +female terminals) need to be inserted into another connector housing that will +mate with the DUART connector on FreeCalypso modem boards; the pin assignment +is as follows: + +Pin position Calypso signal Wire +1 GND black +2 GND violet +3 TX_IRDA white +4 TX_MODEM red +5 RX_IRDA grey +6 RX_MODEM brown +7 GPIO2_DCD blue +8 RTS_MODEM yellow +9 GPIO3_DTR green +10 CTS_MODEM orange