Skip to content

Instantly share code, notes, and snippets.

@MichaelMKKelly
Last active March 12, 2026 17:54
Show Gist options
  • Select an option

  • Save MichaelMKKelly/a2ea968952bfa1d3b85350cd0ccb8e9d to your computer and use it in GitHub Desktop.

Select an option

Save MichaelMKKelly/a2ea968952bfa1d3b85350cd0ccb8e9d to your computer and use it in GitHub Desktop.
Mini Rack

My Mini Rack Homelab - A Write Up!

image image image image

General Plan of the Project.

The plan was to move the bulk of my server hardware from 19" Rack to 10" to both save space and update to smaller more efficient hardware to reduce power consumption.

Also this allows me to learn and practice some 3d Designing and 3d printing as I am fairly new to both.

Furthermore... The idea of a custom 3d printed Mini Rack is just... Cool.

Framework of the Rack

The main rack framework used as the base for the project is the Lab Rax. I went with this as it is heavily customisable and already had various options available. It was also a larger project that I could use my newly acquired 3d printer for.

The model for the basic design is HERE. Which I printed with 2 sets of the posts as I planned for a 10U rack.

There is both a heat set insert version and a bolted version of this framework. I opted for the heat set insert version.

Customisations to the Framework

  • The Handles - I had an issue with printing the top handles so I decided to swap to THIS design for the handles.
  • The front top corner - I replaced the stock options with THIS and then mounted THIS into it which allows me to gain an extra 0.5u to have a patch panel up top without losing any space.
  • The post connectors - I opted for THIS post joiner as it is stronger than the stock option and works well with the next item.
  • The side Panels - I went with THIS side panel design to allow for some extra air vents and also allows for mounting some extra equipment to the sides using the IKEA SKÅDIS mounting system.

Front of the Rack

U 0 - Patch Panel

image

The bonus 0.5U gained from THIS is used for THIS patch panel which was filled by fitting Ethernet Keystone Adaptors.

U 1 - 2.5 GbE PoE Switch

image

This holds a USW-Flex-2.5G-8-PoE using THIS Model. I used the dual passthrough version using 1 side for the DC power adapter and the other is spare for a future plan where I may want to run a PoE connection into the rack.

U 2 - 2.5 Gbe Switch

image

This holds a USW-Flex-2.5G-8 using THIS Model. Very similar to the model above but it is slightly less deep and for this I went with just the single passthrough for the power cable.

U 3 - JetKVM and Mini-PC

image

THIS is a custom model that borrows some parts of some other models to have 2 keystone mounts used with THIS cable passthrough. A JetKVM mount and a space for a Beelink S13 mini-PC, Also having a passthrough for the Mini-PC Power connector.

U 4 - Fan and Mini-PC

image

THIS is a similar custom model to the above but swaps out the JetKVM mount for a 40mm Fan mount used with THIS fan filter.

U 5 / 6 / 7 - Drive Bays

image

These 3 U's are used for holding 3.5 drives using THIS model which allows for using Dell Standard drive Sleds which I went with for simplicity and better airflow when compared to some other options.

UPDATE:

image image image

The drives were running a little warmer than I would have liked and its pretty ideal currently in terms of ambient so I decided to add some extra forced air from the front as the large rear fan doesn't seem to pull enough air across the drives. I replaced 4 of the scerews with standoffs, then used THIS model but customised to increase its thickness and remove its grill. Then added the 140mm version of THIS model to the front together with a ARCTIC P14 Pro PST fan. Ran a fan extension cable through from the keystone passthrough on the U above for power. Then just mounted with some thumb screws to keep the easy access to the hot swap bays. The "3U setup" is slightly bigger but in this situation it does not matter. I did try with a 120mm fan but the coverage of the drive bays was not great so I went with 140mm instead.

The drive temperatures have dropped about 10C from ~45C to ~35C.

U 8-9 - 2U Mini-ITX system

image

This 2u setup uses THIS Model to hold a Mini-ITX computer and a Flex-ATX power Supply. I considered customising it to add a keystone jack for cable passthrough but instead opted to just drill a hole in the stock model for the power cable.

U 10 - Fan Panel

image

This used THIS model along with 5 of THESE filters.

Back of the Rack

U 1 - Cable Passthrough Panel

image

THIS is for various cable passthrough and easy access to the patch panel on the front of the rack.

UPDATE:

image

I have added a fan speed controller mounted to this panel. This controls the speed of the 6 40mm intake fans. This was needed due to the noise levels produced by the fans. If temperature becomes an issue I can turn it back up and look for a different cooling setup.

U 2 - Patch Panel

image

This was originally just a blanking plate, However during deployment it got changed to a patch panel with 4 Ethernet connections to connect to 4 ports on the front patch panel. This is not a 3d printed part but instead THIS patch panel which I had from another project that was not being used so decided to put it in. I may change this out for something more in keeping with the rack at some point.

U 3-7 - 5U 200MM Fan

image

This uses THIS model to which I then mounted a Noctua NF-A20 PWM chromax.black.swap Fan to the Outside. To which I then attached THIS model to the other side of the fan as a grill. I considered customising for a cable passthrough however opted to just drill a hole in the correct place to pass through the fan cable.

U 8 - AUX PDU

image

THIS is a custom model which allows for the mounting of a generic power strip I got HERE. It had to be customised as this power strip has an angled back and I wanted to keep it flat on the rear. I then just opted to drill a hole for the power cable.

U 9 - Blanking Plate

image

THIS is just my blanking plate model which is the base I use for building some other models. This U is partially covered by the AUX PDU above it so has limited uses.

U 10 - Custom PDU with power Monitoring

image

THIS is a custom designed model which is actually larger than 1U as it expands downwards to use additional space at the bottom of the Rack. More information about this will be detailed in the Power Distribution Section.

Cable Management

image image image image

THIS Model is great for adding some cable management to the side of the rack so I printed multiple. Used for routing some cables and also holding cables neatly such as the connections to the JetKVM if it is not plugged into any of the systems.

Left Side of Rack

DC Adaptor for PoE Switch

image

This is a UACC-Adapter-AC-210W which powers the USW-Flex-2.5G-8-PoE and allows it to have an ample power supply for PoE devices. I Made a Custom Model which can be found HERE that allows the stock wall mounting bracket to attach to it using 2 screws and then it attaches to the SKÅDIS mounts in the side panel. The output DC just feeds directly into the back cable passthrough which is directly behind the PoE switch and for the AC in: I just drilled a hole in the side panel to pass the cable into the rack where it then drops down to the PDU.

USB Power Supply

image

This is a UGREEN Nexode 200W GaN Desktop Charger which is mounted using a custom model which can be found HERE to the SKÅDIS mounts of the side panel. There are holes drilled in the side panels for both the AC in and USB out connections to the power supply.

Shelf for IHD

image This uses [THIS](https://makerworld.com/en/models/174500-skadis-shelf) Model and a cable tie to secure its cable which holds it in place. This is for a [Glow IHD](https://www.hildebrand.co.uk/products/ihd-cad) which connects to my smart meters and then sends that data via Wi-Fi using MQTT to my Home Assistant Setup.

ZBT-2

image

This is a SKÅDIS mount for a ZBT-2 which I use for my Zigbee network using THIS model.

Right Side of Rack

There is currently nothing mounted on the right side of the rack, However as it contains the same SKÅDIS mounts as the left site there is flexibility for the future.

Mini-PC (Not Installed Currently)

image

Whilst not mounted I did actually print THIS model. This can be used if I want to add my Beelink EQ14 to the rack.

Power Distribution

AC Power

The Housing for the custom PDU was designed from the ground up using FreeCAD and 3d printed.

image image image image

The Custom PDU uses a C20 socket as the main power input. I already had THIS C20 Connector and THIS C19 power cable from a different project which I was not using anymore so opted to use them when designing my PDU.

The model for the PDU enclosure can be found HERE.

The live connection is then split into 6 and passed through 6 fuse connections to ensure a fuse on each circuit. whilst the neutral and earth connections are fed into connectors to allow for the other circuits to connect to them.

One of the fused connections is then used to power the power monitoring board which was gotten from an Athom 6 CH Energy Meter. The 6 CT clamps attached to the power monitoring board are connected to:

  • Main incoming supply
  • 5 Fused connections (It does not track the circuit that the board is itself using)

The 5 remaining circuits are used for:

This design ensures that each circuit which would normally have a fuse within its plug (UK Plugs/Sockets are awesome) has a fuse connected on its circuit and also ensures that if a single circuit fails then others can continue working.

The design of the enclosure allows for the extra space at the bottom of the rack to be used instead of being dead space. The top and rear panel are a large mesh to keep things together and prevent accidental touching or damage to mains connections but are large enough to allow for double insulated cables to pass through and also for airflow to pass through that area of the rack. It is not designed to be super secure and hard to get into as long as you are doing so intentionally.

USB Power Supply

With multiple low power DC devices in the rack it made sense to try and have a single power supply for them all but there is a difference in the voltages needed for different devices. I investigated the possibility of using USB PD/PPS for the devices and using a high quality power supply. I went with the UGREEN Nexode 200W GaN Desktop Charger then created THIS model to mount it to the side of the Rack. I then drilled holes in the side panel to pass through the AC power in and USB power outs.

The USB Power Supply Powers:

Network Layout

The 2 switches are connected together by their 10GbE ports.

There is a bundle of 8 Cat6 Cables coming into the rack's patch panel.

  • 5 are used to connect to various connections around the house
  • 1 is used to connect to the fibre ONT
  • 2 are spare connections if other wall mounted hardware needs a connection. The 4 extra patch panel connectors connect to 4 ports on the rear patch panel

The mini-ITX system gets 2 x 2.5GbE connections which are aggregated to give a 5Gb connection to the network.

The separate mATX system will also have 2 x connections aggregated together for a 5Gb Connection to the network. Which connect via 2 of the ports on the rear patch panel.

Other devices will run at 2.5GbE (or less depending on the devices max connection rate).

Mini-PC 1

This is a Beelink S13 with dual 2.5GbE ethernet.

Amongst other things this system acts as the main router for the network with 1 ethernet port connecting to the Fibre ONT and the other to the rest of the network.

This is running proxmox as OS and is used for running network Infrastructure by running:

Mini-PC 2

This is a Beelink S13.

This system is running Home Assistant and anything else related to home automation.

This is running Proxmox with Home Assistant OS running in a VM. Which allows for separate applications to be easily spun up alongside it in their own VM or container as needed.

Mini-ITX PC

This system has the main purpose of being a NAS and runs TrueNAS

Storage Array

The system has 6 x 3.5" Drive bays connected to it. Currently 4 of these are used by 28TB Seagate Drives in a ZFS RAIDZ2 array. This allows me to add 2 more drives to the array to increase storage as and when required.

Other Tasks this system performs

Fans

This system is what powers and controls the 7 fans on the rack.

Frigate NVR

This system also runs Frigate NVR as a TrueNAS App which is just a container. This allows for the system's integrated GPU and also a USB Google Coral which is attached by the system's internal USB port to be passed to the container. The App itself and its cache runs from the secondary SSD and the main recordings are stored on the main array.

I was on the fence about putting Frigate on this system too but opted to test it and it works out pretty well for the small amount of cameras that I have. It also also depends on that system for storage anyway so it being on it does make sense.

Future Plans

On the back the 2nd U which is currently a partialled filled patch panel may get cleaned up and repurposed but I am not currently sure of the exact plan.

I may at some point install a KVM to sit between the systems and the JetKVM so multiple systems can be switched to without physically moving the cables.

The 40mm fans are a bit loud and control from the Mini-ITX system appears to be limited so I may add a separate fan controller for the rack fans that will give me more control. I will see how temperatures go in production for a while and if any other issues crop up before I tackle this one though. I have have added a fan speed controller mounted at the top of the rear of the rack to allow me to turn down the 6 40mm fans. This solves the noise issue but will have to see how temperature goes.

Currently I am using a Seperate mATX case next to the rack to house a GPU containing Server which is used for transcoding and LLM running. I would like to maybe add a 2nd mini rack to sit next to this one and that includes a GPU system and also maybe a UPS. This is something I will investigate in the future potentially when the component pricing issues that are currently being observed. Adding a mATX tower next to the rack was the easy option for now. This system was put together with various parts from my old setup.

The current spec for the separate mATX system is:

  • Motherboard - GigaByte H510M H
  • CPU - Intel i3-10100T
  • RAM - 32GB DDR4
  • GPU - Nvidia 5060ti (16GB VRAM)
  • NIC - Dual 2.5GbE PCIe card.
  • SSD - 4TB 2.5" SSD
  • OS - Ubuntu Server

3d Print Information

The Printer

All the printing done for this project was done on a Bambu Lab P2S and used a combination of PLA Basic and PETG HF filament.

There was no real hard and fast rule for which material was used for which part. However in general If I felt the part would want some more flexibility or would potentially be subject to more heat then I would have leaned towards PETG, whereas if it was a more basic filler part then using PLA for a quick and easy print was what I would lean towards.

Design

All custom 3d modeling was done using FreeCAD. There are various options for modeling but this is just the one I picked when I started. Whilst It is slightly dated and uses an older version THIS video Series was a great guide where I learned the basics (I only needed a few videos to give me the basics of what I wanted to do)

Further Reading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment