Universal EXTension (UEXT) is a connector layout which includes power and three serial buses: Asynchronous, I2C, and SPI separately over 10 pins in a 2×5 layout. The connector layout was specified by Olimex Ltd and declared an open-project that is royalty-free in 2011, and was used in all their boards after 2004.[1]

UEXT
Type Digital electronics
Production history
Designer Olimex
Produced 2004
Audio signal None
Video signal None
Electrical
Signal 3.3 volt
Data
Protocol Serial: UART / I2C / SPI

Physical characteristics

edit

The UEXT connector consists of 10 pins, in a two row by five male pin configuration, with a plastic keyed-shrouded or box header (specifically BH10S). All pins have a spacing of 0.1 inch (2.54 mm).[1][2] The socket is mated with a 2×5 (10-pin) IDC female connector, and typically connected to a ribbon cable. The UEXT cable assembly is referred to as a 10-pin IDC Connector Ribbon Cable. These cables are readily available and cheap.[3]

Electrical characteristics

edit
 
UEXT pinout for IDC connector
(looking into connector on host board)

The UEXT connector presents power and three serial buses: Asynchronous, I2C, SPI.[1] All pins conform to 3.3 volt digital logic. The asynchronous serial bus requires additional level-shifting circuits and connectors to support RS-232, RS-422, RS-485, DMX512, or MIDI.

UEXT Connector
Pin Name I/O Logic Primary Use
1 3.3V S S +3.3 volt
2 GND S S Ground
3 TXD O PP Transmit Data for Async Serial bus
4 RXD I PP Receive Data for Async Serial bus
5 SCL O OD Clock for I2C bus
6 SDA I/O OD Bidirectional Serial Data for I2C bus
7 MISO I PP Serial Data In for SPI bus
8 MOSI O PP Serial Data Out for SPI bus
9 SCK O PP Clock for SPI bus
10 /SSEL O PP Chip Select for SPI bus

Notes:

  1. Direction is relative to host board.[1] I = Input, O = Output.
  2. S = Power Supply, PP = Push-Pull logic, OD = Open-Drain logic, all pins conform to 3.3 volt digital logic

Alternate pin uses

edit

The functionality of most microcontroller pins are multipurpose, thus allowing the engineer to redefine the purpose of the pin. It is fairly common that a pin will have a choice to be either a general purpose I/O or a peripheral.

If a microcontroller pin is connected to the UEXT connector and redefined to be something other than Asynchronous Serial Bus / I2C Bus / SPI Bus, then some thought should be given to the design before making the changes. To minimize the chance of damaging various UEXT boards or the microcontroller, redefined pins should continue to adhere to the direction of the data in this table or alternately redefined as an input. For a safe design, it is recommended that you don't redefine pins 4 or 7 to be outputs, and use pin 6 as an output with caution.

User concerns

edit
 
Olimex LPC-E2468, showing UEXT connector

If a person is concerned about damaging the data lines of the microcontroller, additional over-voltage protection diodes and/or separate drivers should be added between the microcontroller and UEXT connector. Additionally, a resettable fuse might be added between the host power and pin 1 to protect against over-current conditions. Open source UART dongles are available that are explicitly designed to be pin compatible with UEXT,[4] and may be used to interface a UEXT device directly with a computer over USB.

5 V warning

edit

Some boards might provide 5 V output on UEXT pins if they are configured for operation at 5V. For example, OLIMEXINO-328 and OLIMEXINO-32U4 have a 3.3 V/5 V PTH jumper that changes the power mode of the board. If the 3.3 V/5 V jumper is set to 5 V, this jumper also changes the voltage available at pin #1 of UEXT as well as the voltage levels of all data signals available there (UART, SPI, I2C). As the UEXT standard only defines 3.3 V, many UEXT modules may not be 5 V tolerant, and thus get damaged if the board has such jumper set to 5V. Users are advised to verify their boards are configured for 3.3 V before connecting UEXT hardware to prevent damaging said hardware.

Parallel cables

edit

It is possible to connect multiple UEXT devices in parallel by clamping additional IDC connectors onto the same ribbon cable. This will result in a correct distribution of power (3.3 V and ground) and allow data communication over I²C.

However, a multidrop SPI bus will fail since all the chip selects are tied together, thus all peripherals will be addressed simultaneously resulting in their simultaneous response data on the MISO line being scrambled. UART will also fail due to multiple devices transmitting and receiving on the same lines. Series resistors are necessary on conflicting SPI and UART pins to limit short circuit currents due to conflicts, if compatibility with other UEXT devices is desired.

Similar connectors

edit

Some devices use a layout based on the UEXT connector but have chosen not to implement all of the functionality. In particular the asynchronous serial connection may have been omitted. In these cases the spare pins are usually assigned other purposes, such as connecting to a device reset line, so care should be taken to check the exact connector layout on the schematic of a particular device.

Implementations

edit
UEXT I/O Boards
Host Boards
3rd-party

See also

edit

References

edit
  1. ^ a b c d "Universal EXTension connector (UEXT) specification; Olimex Ltd" (PDF).
  2. ^ "Olimex LPC E2214 schematic (Page 4)" (PDF). Retrieved 2009-04-02.
  3. ^ "2x5 (10-pin) 0.1" pitch IDC Connector Flat Ribbon". microcontrollershop.com.
  4. ^ Verbelen, Yannick (2017). "UART USB Dongle". CircuitMaker. Retrieved 16 April 2017. All pins are broken out on a 10 pin IDC connector. Compatible with UEXT if you don't need SPI or I2C support.
  5. ^ "Meet the Pinguino! | Make:". Make: DIY Projects and Ideas for Makers. October 4, 2011.
  6. ^ "Let The Solar Free". October 24, 2020.
edit