Skip to content

Features

WebMaka edited this page Dec 21, 2025 · 7 revisions

Back to Cagemaker PRCG (Parametric Rack Cage Generator) Wiki - Home


Features

  • Generates a front-loaded (read: device is slotted in from the front) corner-cage support structure for any device by its dimensions plus a clearance value (default is 1mm), and creates a faceplate for a standard 6"/10"/19" rack that is set up to comply with EIA-310 standards. Triple-hole per 1.75"/44.45mm "unit" of height, slotted, sized for #10/M5 screws.
  • Height is automatically scaled in multiples of rack units to suit the dimensions of the device plus the support structure to hold it (which adds 20mm in all axes to the device's dimensions). So, anything shorter than 24mm will be 1U, 25-68mm tall will be 2U, and so on.
  • Width is also automatically scaled if the device plus support structure won't fit within the desired rack width minus the rack-rail clearance space of at least 15.875mm or 5/8" on each side. So, the hard cap on widths for a 6" rack is 120mm and 10" rack is 220mm.
  • Depth is only limited by practical considerations like print volume and the weight of the device making the cage sag/twist/distort. A successful test print has been holding a Minisforum MS-01 and it's almost 200mm deep.
  • Back/sides/top/bottom are mostly open for ventilation as long as the device is at least 30mm deep. (Back is always open with a retaining lip around the perimeter regardless of depth.) There may be clearance issues for devices that have connections close to their edges, but thus far everything I've tried has fit without issue. (You'll probably have to remove any rubber/plastic feet on the bottom of the device though.)
  • The script can also generate up to two additional modifications to the faceplate, which can be any of the following:
    • A single keystone module
    • Two or three keystone modules side-by-side
    • 30, 40, 60, or 80mm case fan
  • Modifications can be positioned with a configurable offset distance relative to horizontal center, and one modification can be automatically placed if there is adequate room between the cage and the nearest edge of the safe inside width of the rack. If a modification cannot fit, the script will automatically remove it.
  • By default, the device is centered on the faceplate in both axes. There's no up/top or down/bottom for cages with full unit heights - the cage is symmetrical. An offset setting allows moving the cage toward one side or the other, which can be used to place larger modifications like case fans next to the cage.
  • Can split cages for printing within smaller build volumes. A 10" wide 2U cage for a device up to 200mm deep can be printed within a 220mm^3 build volume (e.g., Ender3), and a full 19" wide 2U cage for a device up to 300mm deep can be printed within a 330mm^3 build volume (e.g., Tronxy X5SA).
  • Intended for light duty use only - cages printed with PETG have been tested with 5kg/12 lb. devices, but it's not intended to generate cages to hold things like big drive arrays and what not. However, for things like networking gear or SFF PCs (read: basically most common homelab/minilab gear) it should be great.
  • Can generate half- and third-width bolt-together subpanels for 19" racks, and half-width subpanels for 10" racks. Due to standards-matching on dimensions/holes, you can mix-and-match things of the same width, e.g., a 2U half-width on one side with two 1U half-widths on the other holding three different devices of different sizes. (Again, device height will determine unit height and there are maximums on width.)
  • Can optionally generate cages with half-unit heights for small enough devices. This allows for more compact setups, especially on 10" racks where having to use a 2U cage for a device that would fit in 1.5U results in a lot of wasted space. This is great for mounting small enclosed devices like Raspberry Pis, as two in their own cases can fit side-by-side in 1.5U on a 10" rack. (NOTE: This option is disabled by default, which means that the script defaults to selecting heights as multiples of a full unit. Enabling this option also makes cages vertically asymmetrical, which means that if you use two x.5U cages the lower one will have to be physically rotated 180° to align with the rack's mounting bolt holes.)
  • Automatically produces mounting hardware holes onto bolt-together rack ears or split-rack mounting tabs in the proper diameters to suit fasteners the user selects. Close-clearance and tapped holes for M3 to M6 and 4-40 to 1/4-20 hardware are included, as are heat-set threaded inserts in a variety of hole diameters for these screw sizes.
  • Default thickness of the faceplate and structural components is 4mm, but it can be thickened to 5mm or 6mm for heavier objects. There is also an option to add additional anti-sagging supports at the top and bottom for things that have a bit more weight to them.
  • Includes a toggle-enabled ruler to assist in working out positioning offsets for cage and modifications. The ruler is automatically removed when rendering a completed object for 3D printing.
  • This script can also generate cages for things you might not think about caging, such as having a 120mm square by 25mm tall 2U cage to hold a 120mm case fan horizontally above/below/between devices. It can also make tall but not very deep cages to hold things like LCD panels - I'm debating printing one to hold a 5" touchscreen LCD for my 10" 6U network rack, for example.

Clone this wiki locally