DIGILENT Pmod HAT Adapter User Manual
- June 12, 2024
- DIGILENT
Table of Contents
DIGILENT Pmod HAT Adapter User Manual
Overview
The Pmod HAT Adapter makes it easy to connect Digilent Pmods to a Raspberry Pi. It supports plug-and-play functionality, only requiring that the host Raspberry Pi be booted with the Pmod HAT attached. The Pmod HAT has three 2×6 Digilent Pmod ports and provides access to additional I/O available via the Raspberry Pi 40- pin GPIO connector. The Pmod HAT Adapter comes with example Python libraries hosted on DesignSpark. See the Software Support section below for more information.
Features include:
- • Provides access to full line of Digilent Pmod peripheral modules.
- Enables use of up to three Pmods at a time.
- Supports SPI, UART, I2C, and GPIO connections.
- Optionally powered through a 5V barrel jack.
- Follows Raspberry Pi HAT specification. See the Raspberry Pi HAT Introduction for more details.
The Pmod HAT Adapter is compatible with all Raspberry Pi boards that use the 40- pin GPIO connector:
- Raspberry Pi Model A+
- Raspberry Pi Model B+
- Raspberry Pi 2 B
- Raspberry Pi 3 B
- Raspberry Pi Zero W
- Raspberry Pi Zero
The Pmod HAT Adapter
RS Stock No 1448419
Functional Description
Connectors and Jumpers
40 Pin Raspberry Pi GPIO Connector (J1) : This connector is used to
attach the Pmod HAT to the host Raspberry Pi
and provide access to each of the connector pins. Most of these 40 pins are
shared with the Pmod ports. The Pmod
ports are not intended to be used simultaneously with an additional HAT.
However, five GPIO pins (22-25 and 27)
are unused by the Pmod HAT Adapter. These pins are available for use by other
HATs or as user GPIO. Pmod port
pins are connected to the 40-pin GPIO connector as seen in the Pinout Table
Appendix.
External Power Jack (J2 ): This connector can be used to provide power to the Pmod HAT adapter and the attached Raspberry PI. See the Power section below for more information.
Pmod Port JA: The first of the three 2×6 Pmod host ports, this port supports SPI and GPIO Pmods.
Pmod Port JB: The second of the three 2×6 Pmod host ports, this port supports SPI and GPIO Pmods, as well as 6- pin I2C Pmods on the bottom row.
Pmod Port JC: The third of the three 2×6 Pmod host ports, this port
supports UART and GPIO Pmods.
Jumpers JP1 & JP2: These jumpers enable pullup resistors for the Pmod Port JB
I2C pins when shorted.
Jumper JP3 : This jumper enables writing to the onboard EEPROM containing
the device tree fragment and other
information used to configure the Raspberry Pi OS and drivers. Shorting this
jumper is for advanced use only. See
the Raspberry Pi HAT Introduction for more details.
Power
The Pmod HAT Adapter can be powered either from the Raspberry Pi through the
40-pin GPIO connector’s two 5V
pins, or from an external 5V supply through the power jack. If an external
supply is used, it must be able to provide
1.3 Amps of current. In addition, each Pmod GPIO pin can supply at most 16mA
of current.
Important!
Make sure to never connect both the Pmod HAT Adapter and Raspberry Pi’s power
supplies at the same
time. When changing power supplies, make sure to first fully disconnect the
original supply
Software Support
RS Components has produced the DesignSpark Pmod Library which can be used with a Raspberry Pi to control Pmods through the Pmod HAT Adapter using the Python programming language. Documentation and downloads for this library can be found at the following locations:
- Python library at Python.org.
- Documentation and installation instructions on Readthedocs.io.
- Source code at Github.com.
- RS Components Stock No 1448419
Appendix: Pinout Tables
Raspberry Pi 40-Pin Connector Pinout
Image Courtesy of the Raspberry Pi Foundation licensed under CC BY-SA.
Pmod Pinout Table
JA
Pmod Pin #| 40-Pin GPIO Connector Pin #| 40-Pin GPIO Connector
Pin Name
1| 24| SPI0_CE0/GPIO08
2| 19| SPI0_MOSI/GPIO10
3| 21| SPI0_MISO/GPIO09
4| 23| SPI0_CLK/GPIO11
7| 35| PCM_FS/GPIO19/PWM1
8| 40| PCM_DOUT/GPIO21/GPCLK1
9| 38| PCM_DIN/GPIO20/GPCLK0
10| 12| PCM_CLK/GPIO18/PWM0
JB
Pmod Pin #| 40-pin GPIO Connector Pin #| 40-Pin GPIO Connector
Pin Name
1| 26| SPI0_CE1/GPIO07
2| 19| SPI0_MOSI/GPIO10
3| 21| SPI0_MISO/GPIO09
4| 23| SPI0_CLK/GPIO11
7| 37| GPIO26
8| 33| PWM1/GPIO13
9| 5| SCL1/GPIO03
10| 3| SDA1/GPIO02
JC
Pmod Pin #| 40-Pin GPIO Connector Pin #| 40-Pin GPIO Connector
Pin Name
1| 36| CTS0/GPIO16
2| 8| TXD0/GPIO14
3| 10| RXD0/GPIO15
4| 11| RTS0/GPIO17
7| 7| GPCLK0/GPIO04
8| 32| PWM0/GPIO12
9| 29| GPCLK1/GPIO05
10| 31| GPCLK2/GPIO06
Pullup resistors for pins SCL1 and SDA1 can be enabled by shorting jumpers JP1 and JP2, respectively
Pins #5 and #11 of each Pmod port are tied to Ground. Pins #6 and #12 of each Pmod port are tied to the HAT Adapter’s 3V3 rail.
References
- Digilent – Start Smart, Build Brilliant.
- GitHub: Let’s build from here · GitHub
- Welcome to Python.org
- Home | Read the Docs
- DesignSpark | Design Software | Technology Community