6 Designing and buliding the minirack
mathys edited this page 2025-07-26 18:48:45 +00:00

Designing and building the minirack

Overview

This page describes the process of designing and constructing a minirack for my homelab.

Initial Objectives

The primary goal of this project was to organize and tidy up the various components of my homelab to improve usability and reliability. For the two years I've had a homelab, including one year with physical (non-virtualized) hardware, I hadn't paid much attention to how it was organized, as long as it had power and network access. This led to piles of cables, mini-PCs, and power supplies in inappropriate places, causing issues like accidental unplugging, falls, and maintenance difficulties. I needed a more sustainable solution than the continuous stacking of gear I had allowed to happen.

I see my homelab as a space for experimentation and learning, and I wanted this project to follow that mindset. Having never worked in a data center or managed a physical infrastructure beyond my personal PCs, I wanted to tackle this not just by following a guide from A to Z or buying a ready-made solution online, but also to learn about a field I knew little about. This is how the minirack project was born.

Why did I pick a minirack ? The standard for organizing server hardware is the 19-inch wide rack, commonly found in data center, as it optimizes vertical space usage. However, this standard was too wide and cumbersome for the space I had available. That's why I started looking for something smaller, hence the minirack.

Research and Conceptualization

When I began my research for this project, I quickly came across the subreddit r/minilab, a sub-community of the more popular and larger r/homelab. At the same time, the 10-inch racks from DeskPi started growing in popularity in the tech community, despite their prohibitive price. They offered a more compact and accessible alternative to the 19-inch wide behemoths, making them more suitable for a home environment with limited space. These racks were quite popular on r/minilab, but there were also many people with a much more DIY approach that predated the arrival of DeskPi racks on the market, combining 3D printing, DIY, and a desire to experiment and create something new.

I spent a lot of time exploring this subreddit for inspiration and came across this post, which quickly caught my attention:

  • The aluminum frame appealed to me aesthetically, gave me more confidence in its strength and durability than plastic frames, and did not require everything to be 3D printed.
  • This approach enables you to mount equipment on the front with the 10-inch standard, but also to have 19-inch equipment by mounting it vertically.
  • The design approach was modular and quite easy to improve over time without having to rebuild everything.

However, there were still some issues, notably:

  • No measurements or assembly instructions (the author later started selling the construction guide for his project on Etsy, but I had already finished my design by the time it was put up for sale).
  • The use of an additional crossbar to fix the vertically mounted devices seemed visually unpleasing and superfluous to me.
  • The author of the post lives on another continent, therefore I did not have access to the same hardware as them ; even if the list of components had been public, I would've had to make adjustments.

I therefore decided to stick with the idea of an aluminum frame and the possibility of mounting 19-inch wide devices vertically, and to do the rest of the design myself to implement these two ideas.

I also came across Kiran Jonnalagadda's blog post, who lives in India and also had to imagine his own version of the concept to adapt it to his needs and the different materials he had access to.

These two posts were my starting point, and I then began to imagine my version of this concept.

Materials and Design

As already explained in the previous section, I started by researching what materials I could obtain to carry out this project: square aluminum profiles (also designated as "2020 extrusion") are less common in Europe than in America, and the shipping costs (+ US tariffs) meant that I had to adapt to what was available on the European market to carry out my project.

After some research and comparisons, I came across the website of Motedis, a company that sells various types of aluminum profiles and the accessories that go with them, with reasonable pricing and shipping costs. Since I was going to pay for shipping for aluminium anyways, ordering it and the mounting accessories from the same supplier allowed me to better optimize these shipping costs. Additionally, Motedis provides datasheets with the precise dimensions of each of the components they sell, which made the next steps easier.

More specifically, I chose the Aluminum 2020 profile (20mm x 20mm) type B (groove type) 6 (groove width) because it was relatively inexpensive and had the most mounting accessories available for sale.

To assemble the profile sections to form the frame cube, I chose 3D aluminum corner connectors: they do not require drilling into the frame, are stronger than plastic connectors, and are reasonably priced.

To connect the rails to the frame, I took the nuts corresponding to the type of profile I chose, with the corresponding M5 screws. However, I completely overestimated the length of the screws by buying them 12mm long, which was far too big, 5 or 6mm would surely have been much more suitable.

For the rails on which to fix the hardware, I chose Adam Hall rails because they were available in many sizes from several French reseller sites, and their site provided a datasheet with precise measurements to facilitate design. To fix the network equipment and servers, I took a lot of 50 cage nuts and nuts, as rack studs were more practical but too expensive for a personal project.

Once the list of materials was completed, it was time for design and measurements. Not having access to a metal workshop, I had to be particularly careful with my design as it would not be possible for me to make adjustments once I would receive the materials. This was clearly the most stressful part of the project.

The most important measurement for this project is the space between the rails that must receive the components, so that they can be properly fixed to them.

As a reminder, the front face must have a width that can accommodate components for the 10-inch wide standard, and the sides must be able to vertically accommodate equipment for the 19-inch wide rack standard. As indicated in this diagram, these measurements of 10 and 19 inches wide are between the center of each side's hole, so the rest of the structure must be adapted to this. The diagram also shows us about the universal height unit of server racks, which is used to quantify the size that a device takes on the rail. One of these height units (=1U) is equivalent to 44.5 mm, and most of the equipment commonly installed in miniracks occupies 1U or 2U, although we sometimes find larger (3U and more) or smaller (0.5U) equipment.

Thus, we obtain the following measurements:

Front and rear faces, top and bottom segments (total of 4 segments) = 236.5mm (standard 10-inch rack spacing) + 2 x 12.5mm (spacing between the middle of the rail hole and its outer edge) + 2 x 20 mm (width of vertical segments) - 2 x 5mm (thickness of corner connectors) = 291.5 mm (rounded to 292mm as Motedis cuts are precise to 1mm)

Vertical segments (total 4 segments) = 465mm (standard 19-inch rack spacing) + 2 x 12.5mm (spacing between the middle of the rail hole and its outer edge) = 490mm

For the depth of the rack, there were no particular constraints. I chose the measurement of 390mm to have space to mount equipment vertically and horizontally, and although I do not regret my choice, it is perhaps a bit limited for cable management.

To sum it up, to build the rack, we need 4 segments of 292mm, 4 segments of 490mm, 4 segments of 390mm, 8 corner connectors, pairs of rails for the front and side, about fifty cage nuts + screws, and nuts and their screws.

It should be noted that the usable height on the front face with this rack model is 490mm, or 11.01U. Even though it would be possible to obtain 12U long rails and cut them by hand to 11U to be able to use all the available height, I chose to rather buy 10U long rails and dedicate the remaining space for airflow for cooling.

For 19-inch wide equipment mounted vertically, rails up to 3U long can be considered, 4U could even be considered if the devices fixed at the front are shallow enough, but cable management will be significantly complicated.

Finally, the list of components for the rack is:

Item Price
8x 3D Corner Connector B-Type 20x20 9.73€
16x Hammer Head Nut B-Type Groove 6 [M5] 2.68€
16x M5 screws 0.79€
Aluminum profile cut to the lengths indicated above 17.18€
VAT + Motedis Shipping 30.59€
2x 10U Rail 10.80€
2x 3U Rail 6.98€
50x Cage nuts and screws 16.06€
Total 94.81€

In comparison, an equivalent rack from DeskPi would cost 240€ and does not have the possibility to vertically mount 19-inch wide equipment. However, it must be recognized that the design is more elaborate with, in particular, feet, a grille at the bottom, and acrylic side panels.

Assembly

Once all the parts were chosen and ordered, they had to be assembled: 4 screws in each corner connector to connect the segments together, then install the nuts in the grooves of the profile to fix the rails to them.

Once finished, the rack looks like this (with only one mounting accessory already in place):

Photo of the empty rack

Filling the Rack

Now that the frame is completely assembled, we can start filling this rack with our devices.

Even though several brands sell components that can be installed directly in the racks (shelves, patch panels, switch adapters, etc.), the most customizable and economical option for racking your devices remains 3D printing the mounting systems you need. Many models for racking your network equipment, mini-PCs, Raspberry Pi, etc., already exist on sharing hubs like Printables or Thingiverse, but you can also make your own mounting accessories if you have the necessary CAD skills.

For my equipment, I used the following models:

When 3D printing mounting accessories for minirack, it is important to be vigilant when choosing the material. Common materials like PLA have a heat deflection temperature that is too low; the heat generated by the various hardware in the rack would stretch the plastic. More heat-resistant materials like PETG are preferred as they offer better durability, but they often require more effort to achieve the same printins results as with PLA. I personally printed all my mounting accessories with their front faces against the print bed with PETG, and the results are satisfactory except for a few small imperfections that can be easily removed with cutting pliers and a few strokes of a wire brush.

3D printing of a mounting accessory

At 20€ per kilogram of white PETG (printing a mounting accessory requires approximately 150-200g per device), it is once again much more economical than what can be bought directly on the market (even though in this case, the accessory sold is made of metal, plastic products can be found at the same price on Etsy, for example).

Once the devices are installed using the accessories, they now need to be provided with the conditions to function correctly: electricity, network access, and effective cooling.

For electricity, rack-mountable power strips exist, but at 28€ for 4 outlets, the quantity-price ratio leaves much to be desired. I therefore supplemented with a no-name power strip that I attached to the back of the rack using zip ties. It's not as aesthetic, but it's much more cost-effective.

For the network, the common practice is to mount a patch panel in the upper part of the rack. For now, as I have few connected devices, I make do with using the empty space next to my gateway in the highest position of the rack to pass the RJ45 cables going to and from the switch mounted just below. This is neither a conventional nor a very aesthetic approach, but the space and cost savings it brings suit me perfectly.

For cooling, considering that the rack is open on the sides, top, and back, I rely on the cooling systems of the devices mounted in the rack to maintain an acceptable temperature. However, it would be possible to add fans at the top or back, for example, if the rack's use cases were to change and require a more efficient cooling system.

Rack completed to date

Conclusion

Even if it is not a flawless achievement, building this rack has allowed me to learn a lot about many aspects beyond computer equipment management: design and conception, 3D printing, adaptation to suppliers, etc., while solving a problem I was facing (and honestly, it's still pretty stylish 😊). I hope to be able to continuously improve this rack as opportunities arise.