Update March 30, 2024 -- more sizes uploaded. On request, I've uploaded more pre-rendered 4x4 and 6x4 box model files. There are no changes to the source model or any of the existing model files. Enjoy!
My Rugged Storage Box, now for Gridfinity bins!
Inspired by several other terrific Gridfinity box models, I built a Gridfinity rugged box model of my own! This is a parametric model which can create boxes of any size. I chose OpenSCAD so the software and model would be fully open source.
![]() | ![]() |
Gridfinity:
Box options:
The hinges and latches are attached using M3 screws, M3x40 by default. Depending on whether a handle or stacking latches are desired, a box may take between 6 and 25 screws to assemble.
My boxes are assembled using M3x40 and M3x55 hex socket head cap screws (DIN 912):
To assemble boxes with three stacking latches per side and/or a third hinge, a hex allen key matching your screws is needed since a drill/driver won't fit. M3 hex socket head cap screws use 2.5mm drive, so a ~6" 2.5mm hex allen key is needed for these (Home Depot, Amazon).
All screws except for boxes with handles:
Latch Width
(default 28mm) + 2 x Rib Width
(default 6mm). At default values, 28 + 2 * 6 = 40
, or M3x40 screws.Latch Width
to 22 and Rib Width
to 4.For boxes with handles, replace two of the above screws with:
Latch Width
(default 28mm) + 3 x Rib Width
(default 6mm) + handle thickness (10mm). At default values, 28 + 3 * 6 + 10 = 56
, or about M3x55 screws.
Two OpenSCAD options are available which greatly improve rendering speed, but are currently only in the development snapshots. You can download a development snapshot from the OpenSCAD downloads page (scroll down about half way).
After installation, open Edit > Preferences, and in Features, enable:
The OpenSCAD model depends on included third-party library code. Download and unzip libraries.zip
into the same folder as rugged-box-gridfinity.scad
and rugged-box-library.scad
.
Ensure both rugged-box-gridfinity.scad
and rugged-box-library.scad
are placed in the same directory. Open rugged-box-gridfinity.scad
in OpenSCAD.
Select your desired dimensions and options in the OpenSCAD Customizer. Then, one at a time, select each part (top, bottom, latch, stacking latch, handle) in the Part drop-down. For each part, perform a render (F6) and export to STL (F7).
![]() | ![]() |
tl;dr:
Boxes with the Gridfinity Stackable option modify the placement of the internal Gridfinity baseplate and top bases to accomodate the exterior stacking base and baseplate. Therefore both the top and bottom of the box must be printed with the same value for this option; do not mix and match. Additionally, stacking latches will not reach the correct height between the two types of boxes.
I recommend keeping most of the box height in the bottom, so Gridfinity bins will be more contained in the box when the lid is open. I render my box tops with Top Height set to 2 (7mm Gridfinity units).
Most of my Gridfinity bins are multiples of 3 units high (e.g. 3 or 6). I therefore like to print boxes that are multiples of 3 units high. For a total box height at a multiple of 3, I set Bottom Height to the desired box height minus my Top Height of 2. For example, to make a box that is 9 total Gridfinity units tall, I set Top Height to 2 and Bottom Height to 7.
If using the stacking latches feature, boxes will stack if they are the same Width (left to right) and have stacking latch attachments at consistent lengths on the side. To produce boxes with consistent attachment points, set Length (front to back) to a multiple of 2 Gridfinity units. For example, a 6 unit wide and 4 unit long box can use stacking latches with another box of the same size, or with a 6 unit wide and 6 unit long box.
Front latches: I prefer draw latches but they are taller, so clip latches are also available. I recommend using draw latches for boxes with a total height of 9 Gridfinity units or more. Smaller boxes should use clip latches.
Larger boxes use more filament, but result in more storage space per amount of filament and time spent to print.
These boxes are (usually) large prints. Clean your print bed and ensure it is reasonably level.
The following instructions are for slicing with PrusaSlicer.
My boxes are printed in PETG at 0.24mm layer height, with 2 perimeters and 20% adaptive cubic infill. I printed my latches and handle at 0.2mm layer height, with 3 perimeters and 30% adaptive cubic infill.
Print the box top and bottom parts on their outer faces. Latches print on their side. For the latches, a brim may be helpful for bed adhesion.
For boxes without exterior Gridfinity stacking (Gridfinity Stackable model option), the box tops and bottoms print without supports.
For boxes with exterior Gridfinity stacking, see "Additional print settings for Gridfinity Stackable boxes" below.
PrusaSlicer can configure this model to use a higher infill on specific parts, such as the attachment ribs (where screws are installed). The model includes optional modifier volumes to make this simple.
To render a modifier volume in the OpenSCAD model, open and configure the box model the same as the box model you'd like to print. Then, in the Part drop-down, select and render each of:
This will produce a model that is just the attachment ribs without the box body. Render and export each of these models.
In PrusaSlicer, load the box model to print. Then, in the Plater view, right-click on the box model to open the context menu. Select Add Modifier -> Load..., and then select the modifier volume for the matching part (bottom/top). The modifier volume should perfectly overlap with the existing model.
Finally, locate the added modifier volume model in the right sidebar next to the Plater view. Right-click on the modifier volume, and select Infill to override the infill settings for that volume. Then, enter your desired infill percentage for the ribs (e.g. 100%).
Now the model is configured to slice the ribs with 100% infill!
Boxes with the Gridfinity Stackable model option require supports and additional settings to print for both the box top and bottom.
The box top prints upside down. Supports are needed for each grid of the integrated Gridfinity baseplate.
OpenSCAD may render the exterior stacking grid on the box top with some errant zero-thickness polygons that make manually painting supports difficult. (These don't affect the printed box.)
With the support painting tool (hotkey L):
This method paints the integrated Gridfinity baseplate, and additionally the very top overhang on all the screw holes with supports. The screw hole overhangs do not need supports, so these should be removed. With the support painting tool still selected:
![]() | ![]() |
Finally, configure these print settings for the box top:
The box bottom prints upright. Supports are needed for the outer perimeter that overhangs the base Gridfinity grid.
With the support painting tool (hotkey L):
Finally, configure these print settings for the box bottom:
If you are reconfiguring your slicer after preparing the box top, restore these settings to their default values:
Important: Don't overdrive the screws into the screw holes. They just need to be attached to fasten the hinges and latches, and for the latches to clip on to when the box is closed.
Place the box top onto the box bottom, and install screws into the hinges.
Attach the front and side stacking latches with additional screws. If attaching a handle to the front, use two longer screws for the front latch screw on the bottom in order to attach the handle.
Note: For large boxes with a three stacking latches per side and/or the optional third hinge, install the center hinge/latch screws first with a hex allen key before installing the remaining hinge/latch screws.
I had a lot of fun creating this model. Please share your feedback and makes!
The author remixed this model.
This uses Gridfinity Rebuilt in OpenSCAD to add Gridfinity-compatible baseplates and stacking covers to my Rugged Storage Box.