In Place of a Foreword
Below I’ll talk about the project, I think you can replicate it, but I don’t think you’ll want to.
Keep in mind it’s quite time-consuming. Something can go wrong at every step. You will void the warranty on your Mac mini. So it’s your responsibility.
It was an experiment, a test of skills, a topic for discussion, and just a hardware-hacking projectю
Some media coverage
– What’s the PoE standard?
– 802.3at Type 2, PoE+
– What is the maximum power? Is it enough?
– 30W, It’s enough. However, I have not plugged any serious load into the USB ports, only stress tests. During the stress test, the highest value was 24.6W (checked in the web UI of the switch).
– What’s the Mac mini model?
– Mac mini (M1, 2020), 16GB, 1TB
– Because I’m Batman
I think telling you about my misconceptions and mistakes will be honest. Without that, this project will be boring. So let’s start with the fact that I had a donor due to a mistake while working on another project.
So I picked up this board, and I first scrutinized everything to see my options and limitations.
So, as is often the case, I decided to try to deal with this challenge head-on.
And tried to get PoE working by just soldering on the network adapter contacts. Well, I suspected that it didn’t work that way, and after failure and 20 minutes of reading datasheets and the theory of PoE operation, I laughed at my naivety. If you think about it – it shouldn’t work that way. There must be some isolation of electronics. Otherwise, how will a normal network device survive 41.1-57.0V on a network cable? PoE mode negotiation hasn’t even started, so nothing got corrupted.
In the picture, you can see the motherboard from a Mac mini M1 (it’s faulty, and that’s what I learned on)
The eight wires from the network port go to the Power Over Ethernet Transformer (model HX4110NL) – after two diode bridges and a Silvertel AG5305. This is a 5-volt PoE+ module, one of the ones I used for the Compute Blade RC2, here just for the test.
Since I mentioned the documentation, let’s dwell on it a bit to make it easier for you to follow the thought. Very briefly about how PoE works on the receiving end. For this purpose, I will give a couple of screenshots from the documentation of the key components of the system.
Let’s start with the connector.
From the actual product, namely Compute Blade – LINK-PP LPJG0926HENL. This is not a simple 8p8c network connector (more commonly known as RJ45), but a Magnetics Jack. Let’s take him apart gently.
And compare it to what’s in the Mac mini.
This screenshot shows what all those coils and passive electronics are doing. They essentially allow you to separate the power and signal and keep the high voltage from reaching sensitive components.
J1-J8 is the port for connecting the network cable
1-3, 6-7 is the connection to the PCB.
4-5 are shorted and connected to the GND pin via a 100nF capacitor
On outputs 11-12 and 13-14 we will have about 48V AC after PoE mode negotiation.
Now let’s turn to the documentation for the Silvertel AG5412 PoE module that was used in the project.
The AC must be converted to DC. A pair of diode bridges are used for this purpose: BR1 and BR2 from above.
Silvertel does all the magic on signal negotiation. Look at how complex this device is. If you are interested in signal negotiation, many articles are on the subject. The main thing to know is that the process is standardized (802.3af, 802.3at, 802.3bt) and understandable to all compatible devices.
The last thing we have to do here is to isolate the PoE module’s output when connecting the Mac mini’s native power. You can use a power MUX for this, but I just put a Schottky diode in the hope that the Mac mini PSU has reverse current protection (it does, I checked experimentally).
A small note, the Schottky diode has a voltage drop, so we didn’t get 12V, but about 11.82V at the motherboard input. This is absolutely normal. However, it is worth mentioning that the output voltage of the PoE module can be adjusted with an additional resistor (ADJ pin) to compensate for the voltage drop.
Enough theory. Let’s get back to the process.
This is the way
As you realized, I needed to integrate into the line between the network wire and the motherboard. No option. Adding the necessary parts to realize the magnetic jack can be done in several ways:
- Replace the port with a magnetic jack, but this is not cool (it will be noticeable from the outside) and difficult because the contact area is very different.
- Try to break the tracks on the PCB – almost unrealistic, as all the contacts are hidden in the board itself and are hardly designed for high currents.
- Upgrade the native port.
As you can guess, I chose the latter way. And the first test was to remove the original connector.
I started with a faulty motherboard so that I could do it properly with a working one. I used hot air and a soldering iron with a tin sucker. It wasn’t enough, and I damaged the plastic in places.
Soldering iron with a tin sucker (Desoldering Gun) in action
As you can see, I damaged the front of the connector a bit, so I decided not to continue with it. I drew conclusions and moved on to a working mac mini to improve it.
Boring disassembly of the mac mini
Well, I didn’t promise it would be fun.
As in the previous case – the next step is to unsolder the network connector. The first thing I did was desolder the pins using a desoldering gun. And then remembering my mistake with the plastic last time, I used two hacks:
- Lowered the melting point of solder at the connector housing pins to about ~250 preliminarily. Pre-soldering each one with Rose’s alloy
- Used kapton tape to protect the board and plastic
Rose’s metal melts at 98 °C (208 °F). And it is very penetrating, so it mixes with the solder on the board when it melts.
It worked like magic this time. I can even put the connector back in place.
After carefully disassembling the connector (not very interesting)
And pulled out the core:
And very carefully modified the connector to give me more soldering space. (Working with a Dremel under a microscope)
Then I solder the wires and fill them with UV glue.
Remnants of metal contacts are filled with UV glue
Putting it back together and removing the pins, now this port will not have direct contact with the motherboard.
Remnants of metal contacts are filled with UV glue
The other side of these wires is soldered of the disassembled magjack
Connector housing modification
But that’s only half of it
Now I soldered the wires that will go from the magjack to the motherboard.
Eight wires of yellow and white color.
And also two diode bridges directly to the AC outputs from the rest of the magjack. From which, black and red wires will go to the PoE module. And a separate white one is GND, which is usually connected to shied and capacitor contacts on magjack to reduce interference
Soldering the wires to the motherboard
Of course, I ensured beforehand that I had enough room for them inside the enclosure.
And put it in place. Now the Mac is good as new, and the network will work again.
Important note: it won’t pass the certification (FCC, EC, etc.). I haven’t checked, of course, but I suspect that the wires create enough interference to fail the certification tests. But from experience in real life, it will be fine. I’ve done worse things, but it worked. Of course, your luck score (7+) is involved, just like everywhere else. It’s worth noting that Compute Blade RC2 (and v1) have passed all the certifications.
I then soldered a Silvertel ag5412 and did the first test.
In this picture, the Schottky diode is missing. It is soldered just after between the Silvertel module and the red wire to the motherboard. Without it, if you plug in the power cable to the Mac mini’s PSU, the PoE module will be destroyed
Very first test
Demonstration of backup power operation
I’m a systems engineer in JetBrains company. Uptime Lab founder. I’m glad to see you on my website! I hope you find my content useful. Please subscribe to my Instagram and Twitter. I post the newest updates there.