RadioHAT

Public

@radiolib-org

Share RadioHAT

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

RadioHAT

Raspberry Pi PCIe HAT for radio modules

This HAT is an all-in-one radio modules development platform with the following features.

  • Built-in logic analyzer - All pins routed to the transceivers (SPI and various GPIO signals) are also routed to additional Raspberry Pi GPIO pins, to allow the RPi to monitor and record the state of communication pins. See the pinalyzer repository for details.
  • Adjustable linear voltage regulator - To supply power-intensive transceivers, there is a dedicated LDO regulator with adjustable output. The output voltage is adjustable between 2.9 and 3.6 V.
  • Power consumption measurement - There is a built-in INA219 current monitor which allows to measure the power consumption of the transceiver. See the dc-powermon repository for details.

While these features are useful, they are entirely optional. Without them, the HAT is a simple adapter board for mini-PCIe cards (half-size or full-size) and can be left with most of the components unpopulated, except for the RPi pin header, PCIe connector and the card latch.

RadioHAT

Card for modules from Dorji

Card for modules from GNice-RF

Card for modules from Ebyte

Card for Wio-E5

Mini PCIe connector pinout

Different vendors (RAK Wireless, Waveshare, SeeedStudio and others) offer radio modules in the mini-PCIe card form factor. However, there seems to be no consensus on any specific pinout. Naturally, RadioLib defines its own version to add to the confusion. However, we try to adhere to the standard Mini PCIe 2.0 pinout in the following ways:

  • Mini PCIe 2.0 SMB pins are used for I2C
  • Mini PCIe 2.0 USB pins are used for USB
  • IRQs, resets and various GPIOs are connected to Mini PCIe 2.0 digital signals
  • 3.3V voltage pins are used for most modules, though sometimes 5V is optionally used

The complete pinout of the connector (and therefore the PCIe cards) is shown below.

PinSignalSignalPin
1GPIO03V32
3IRQ0GND4
5IRQ15V6
7GPIO1NC8
9GNDNC10
11RST0NC12
13RST1NC14
15GNDNC16
17NCGND18
19NCNSS120
21GNDNC22
23NC3V324
25NCGND26
27GND5V28
29GNDI2C_SCL30
31PPSI2C_SDA32
33NCGND34
35GNDUSB_D-36
37GNDUSB_D+38
393V3GND40
413V3LED042
43GNDLED144
45SPI_SCKLED246
47SPI_MISO5V48
49SPI_MOSIGND50
51NSS03V352

Raspberry Pi pinout

The shield routes the Mini PCIe connector signals to the following Raspberry Pi GPIO header pins. The pins with prefix SNS_ are connected to the digital signals through a series resistor and GPIO, allowing to use the RPi as a makeshift logic analyzer.

PinSignalSignalPin
13V35V2
3I2C_SCL5V4
5I2C_SDAGND6
7SNS_NSS0SNS_SDA8
9GNDSNS_SCL10
11SNS_SCKRST012
13SNS_MISOGND14
15SNS_MOSIGPIO116
173V3IRQ118
19SPI_MOSIGND20
21SPI_MISORST122
23SPI_SCKNSS024
25GNDNSS126
27NCNC28
29SNS_IRQ0GND30
31SNS_RST0SNS_GPIO032
33SNS_NSS1GND34
35SNS_IRQ1IRQ036
37SNS_GPIO1GPIO038
39GNDSNS_RST140
Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.