EP-0216-NEW

From 52Pi Wiki
Revision as of 16:56, 21 August 2025 by Yoyojacky (talk | contribs) (→‎Gallery)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

52Pi 2.5Gbps PCIe Network Adapter with PoE+ module

EP-0216-New-01.jpg

Description

The 52Pi 2.5Gbps PCIe Network Adapter for Raspberry Pi 5 is a PCIe-based expansion card that adds a second, full-speed 2.5 GbE port to the Pi 5. A detachable PoE+ daughter-board (pluggable via on-board headers) turns the adapter into a fully IEEE 802.3at-compliant power source: it receives PoE+ over the new RJ45 jack and simultaneously delivers up to 25 W to the Raspberry Pi 5 through a USB-C plug, eliminating the need for a separate PSU. Data still travels at native PCIe speeds over a supplied FPC cable, while GPIO pass-through pins on the base board provide the auxiliary power rails required by the on-board NIC. The result is a single, compact module that combines high-speed networking and reliable PoE+ power in one stackable solution.

Features

  • High-speed networking: Realtek-based 2.5 Gbps Ethernet controller (100/1000/2.5 G auto-negotiation)
  • Native PCIe interface: Dedicated PCIe Gen 2 ×1 link to Raspberry Pi 5 via flexible FPC cable
  • Optional PoE+ module: Pluggable board adds IEEE 802.3at (PoE+) power input and USB-C 5 V / 5 A output to the Pi
  • Single-cable operation: Network data and power delivered through one RJ45 connection
  • GPIO pass-through: Base-board pins must mate with Pi GPIO header to supply on-board NIC with required power
  • Compact & stackable: Low-profile design keeps HAT footprint, leaves remaining GPIO pins accessible
  • Plug-and-play: Works out of the box with recent Raspberry Pi OS kernels; no external drivers needed
  • Real-time speed LEDs: Four labeled LEDs (100 M, 1 G, 2.5 G) indicate current link speed for quick diagnostics

Gallery

PCB outlook

EP-0216-New-04.jpg


Function details

EP-0216-New-05.jpg


Product Dimension

EP-0216-New-02.jpg


Hardware assembly

EP-0216-New-IN.jpg


Package Includes

EP-0216-New-PL.jpg


Hardware assembly

  • Power down the Pi 5.
  • Plug the 40-pin header of the 52Pi base board onto the Pi’s GPIO (this rail-powers the NIC).
  • Connect the supplied FPC ribbon between the adapter’s PCIe slot and the Pi’s PCIe FFC connector (labelled “PCIe” next to the DSI/CSI slots).
  • If you are using the PoE+ daughter-board, seat it on the two 4-pin headers.
  – Plug a USB-C cable from the daughter-board’s USB-C PD OUT into the Pi 5’s USB-C power port.
  – Plug an 802.3at/af+ switch into the RJ45 on the daughter-board.
  • Power on the PoE switch; the Pi should boot automatically.

Verify PCIe enumeration

sudo lspci -nn | grep -i eth

You should see something like:

0001:01:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller [10ec:8125] (rev 05)
Poe 2.5G 001.png


If the device is missing, check that the FPC is fully seated and the GPIO header is firmly mated.

Kernel driver

Pi OS Bookworm ships with r8169/rtl8125 modules ≥ 9.010, so the adapter is recognised out-of-the-box. Update just in case:

sudo apt update && sudo apt full-upgrade -y
sudo reboot

Interface naming & link-speed LEDs

The new NIC appears as eth1 (Pi’s on-board is eth0).
The four LEDs next to the RJ45 indicate negotiated speed in real time:

  • LED indicators: “100Mbps” = 100 Mbps, “1Gbps” = 1 Gbps, “2.5Gbps” = 2.5 Gbps.

Network configuration examples

  • DHCP
sudo nano /etc/dhcpcd.conf

Add at the bottom:

interface eth1
  dhcp

Save, then

sudo systemctl restart dhcpcd
  • Static IP
interface eth1
  static ip_address=192.168.10.2/24
  static routers=192.168.10.1
  static domain_name_servers=8.8.8.8

PS: Replace the IP address with your own network configure.

Checking with ethtool

 
ethtool -i eth1 
ethtool -g eth1
Poe 2.5G 002.png


Poe 2.5G 003.png


If both commands report “Operation not supported”, the driver is hard-coded.

Ensure 2.5 GbE is actually negotiated

sudo ethtool eth1 | egrep 'Speed|Duplex|Auto-neg'

If you see Speed: 1000Mb/s but the switch supports 2.5 G, force it once:

sudo ethtool -s eth1 autoneg on advertise 0x8000000001028

(0x8000000001028 enables 2.5G advertisement for the RTL8125 PHY .) Make it permanent via systemd:

sudo systemctl edit --force --full set-eth1-2g5.service

add following parameters

[Unit]
Description=Force 2.5 GbE advertisement on eth1
After=network-pre.target
Before=network.target

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/ethtool -s eth1 autoneg on advertise 0x8000000001028

[Install]
WantedBy=multi-user.target

save it and enable the service.

sudo systemctl enable --now set-eth1-2g5.service

Performance tuning (optional)

# Increase MTU
sudo ip link set eth1 mtu 9000
# Enable GRO/GSO
sudo ethtool -K eth1 gro on gso on

PoE+ power confirmation

Open a terminal and typing following commands:

vcgencmd get_throttled

All bits 0 → power OK. If throttled=0x50000 (undervoltage), either the switch is not 802.3at capable or the cable is sub-standard.

Keywords

  • 52Pi PCIe 2.5GbE PoE+ HAT, Raspberry Pi 5 network adapter, 2.5 Gbps PCIe NIC, PoE+ powered Pi, USB-C 25 W output, IEEE 802.3at injector, Link-speed, LEDs, GPIO pass-through, Single-cable networking, Realtek 2.5 GbE controller