For the past few years, I've used a pi1 with an 802.3af POE splitter.

The splitter outputs an RJ45 ethernet plug, and micro USB with 5VDC @2.4A.

The splitters RJ45 plug only has 2 pair (4 conductors) connected. From left to right, pins 1, 2, 3 and 6 are connected. My understanding is this limits the connection to 100mbit/sec fast ethernet, but that's OK. I don't need speed, just a reliable connection.

rj45 plug

Recently, I replaced the pi1 with a pi4 (2Gb). If I connect it to the same POE splitter (using the official usb-c to micro USB adapter) then it powers up, but the lights on the pi4 ethernet socket never light up.

Should the pi4 auto-negotiate a 100mbit/sec fast ethernet connection? Or will it only activate the port with a cable that has all 4 pairs connected?

2 Answers 2


I cannot give a definitive answer, but I experienced similar problems on a PI3B+ which also has a Gigabit Ethernet interface (even if it can't go beyond 300Mbps).

The basic problem (which IMO is a problem with the Ethernet specs) is that ALL protocol negotiation is performed over the 2 pair common to all speeds.

The end result is that 2 Gigabit capable devices will negotiate 1000Mbps, however unless connected by a 4 pair interface this will fail. If either device is only 100Mbps or 10Mbps capable they should negotiate an agreed lower speed protocol.

There are 2 options; either use a Gigabit Ethernet 4 pair cable OR force the Pi to negotiate a lower speed. There is a setting to force 100Mbps (but for the moment it eludes me) I will post the commands later.

I think the commands are:-

sudo ethtool -s eth0 autoneg off
sudo ethtool -s eth0 speed 100

You should check man ethtool

  • 1
    ah! thanks for the pointer. My switch allows each port to be locked to a certain speed, and forcing it to be 100Mbps magically made the POE splitter start working. I'm kind of embarrassed I didn't think of trying that earlier.... Oct 2, 2019 at 12:08
  • I have heard that these two commands should be merged into one, because autoneg off without the link speed is applied temporarily, and expires after a timeout. Oct 2, 2019 at 12:24

I have experienced this problem with my Raspberry pi 4 model B. I solved it by using this command sudo ethtool -s eth0 advertise 0x008 this means that you set the interface to 100Mbps with Full Duplex. But that helps you only once, after rebooting the device it will get the default configuration. To make it run at the start-up use this source

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.