Guide for the USRP X300/X310 GPIO Expansion Kit
https://www.ettus.com/kb/detail/guide-for-the-usrp-x300x310-gpio-expansion-kit
Contents
Using the GPIO Expansion Kit USRP™ X300 and USRP X310
This General Purpose Input/output (GPIO) breakout kit provides access to general purpose digital I/O signals with simple terminal blocks, and a prototyping area where wires and components can be soldered. Each GPIO pin is connected to an FPGA digital line allowing it to be configured as an input, or an output, using the various software frameworks that support the USRP™ GPIO.
These GPIO signals can serve the following functions:
- Control of external devices, such as power amplifiers and RF switches
- Provide output signals that can help with debugging
- Provide observables to be analyzed by oscilloscopes or other external equipment
- Accept input from external devices for local, software-based triggering
- Implement a protocol line such as SPI or I2C
This document summarizes important information regarding the use of this GPIO breakout kit.
Kit Contents
- 1 GPIO Breakout Board
- 1 DB-15, 1-meter cable
- GPIO Quick Reference
USRP ™ Compatibility
- USRP X300/X310
Circuit Protection
The GPIO signals exposed with this breakout kit are routed directly to the USRP device's FPGA with limited protection circuitry. However, the user must take precautionary measures to ensure input/output signals meet the specifications shown in this document. Over voltage, excess current draw, and other conditions can damage the USRP device and void the warranty. Special care should be taken when the USRP is powered off.
Mounting the GPIO Breakout Board
The GPIO breakout board can be mounted directly to the DB15 connector of a USRP ™ device, or mounted remotely with the cable provided in this kit. The screws on the DB15 connector of the breakout board must be removed to mount the board directly. For remote mounting, the breakout board is supplied with rubber standoffs to avoid scratching surfaces, and several through-holes for hard mounting with screws or other hardware (not provided).
Using GPIO with UHD, GNU Radio, and other Third-Party Frameworks
When used with UHD, or other third party frameworks that leverage UHD, the GPIO expansion can be controlled with simple API calls. For more information, on the C++ API, and examples of how to use the GPIO in frameworks such as GNU Radio, please see: http://ettus.com/kb
GPIO Specifications (3.3V Bank, LVCMOS)
Parameter |
Typ. |
Configured as Input |
|
Default Voltage Standard |
3.3V LVCMOS |
Voltage High Threshold |
2.0V |
Voltage Low Threshold |
0.8V |
Voltage Input Limits (no damage) |
-0.3V/3.45V |
Configured as Output |
|
Voltage Standard |
3.3V LVCMOS |
Voltage High Output |
2.8V |
Voltage Low Output |
0.4V |
Current Source Capability |
12 mA |
Output Source Impedance |
>33 ohms typ |