February 26, 2025
Description
📢 Parametric Monitor Riser Stand - Fully Customizable
By Ritz Prints 3D
I had a spare piece of lumber lying around, and instead of cutting it down to fit a pre-made design, I decided to design risers that fit the wood I already had. I also prefer the natural wood finish, as you can see in the images.
But I realized that not everyone has access to the same lumber sizes—so I created this fully parametric script that lets you:
✅ Print just the risers if you already have a piece of wood.
✅ Generate and print the risers + lumber together for a 100% 3D-printed version.
✅ Customize everything—height, width, cutout patterns, and more!
The default settings in the script will generate a riser identical in size to the one I printed using my spare lumber.
I’ve also included a print profile that pre-cuts the model with pegs for easy assembly after printing.
This script is fully parametric, meaning you can adjust the dimensions and features to fit your exact setup.
| Parameter | Description | Default Value |
|---|---|---|
| plate_width | Width of each riser plate. Increase for wider monitors. | 320 mm |
| plate_thickness | Thickness of the riser plate. Thicker plates are stronger. | 20 mm |
| plate_height | Height of the riser. Adjust to raise or lower your monitor. | 175 mm |
| Parameter | Description | Default Value |
|---|---|---|
| lumber_width | Width of the lumber that fits between risers. | 300 mm |
| lumber_thickness | Thickness of the lumber. Adjust for different plank sizes. | 12.2 mm |
| lumber_length | Length of the lumber. This defines the distance between risers. | 300 mm |
| margin | Extra clearance for lumber cutout. Increase if lumber is tight. | 0.3 mm |
| generate_lumber | true = Generate the lumber piece. false = Only risers. | true |
| Parameter | Description | Default Value |
|---|---|---|
| enable_screw_holes | Enable or disable screw holes for mounting. | true |
| screw_hole_diameter | Diameter of screw holes. Adjust based on screw size. | 7 mm |
| lumber_screw_hole_depth | Depth of screw holes into lumber. | 5 mm |
| Parameter | Description | Default Value |
|---|---|---|
| enable_cutouts | Enable (true) or disable (false) decorative cutouts. | true |
| cutout_type | Shape of the cutouts. Options: "hex", "circle", "triangle", "square". | "hex" |
| cutout_size | Size of each cutout shape. Larger values create bigger cutouts. | 8 mm |
| edge_clearance | Minimum distance from the edges of the riser to the cutouts. | 20 mm |
| num_cutouts_x | Number of cutouts across the width of the riser. | 11 |
| num_cutouts_z | Number of cutouts across the height of the riser. | 5 |
| pattern_padding | Extra space around the lumber cutout to prevent overlap. | 10 mm |
If you already have a piece of lumber, follow these steps:
1️⃣ Set generate_lumber = false; in the script.
2️⃣ Print two risers (left and right).
3️⃣ Slide your existing piece of lumber into the cutout.
4️⃣ Secure the assembly with screws (optional).
👉 This is exactly how I built mine! If you like the natural wood finish, this is the best option.
If you want to print the entire riser, including the lumber:
1️⃣ Set generate_lumber = true;
2️⃣ Export the STL file from OpenSCAD.
3️⃣ Split the STL into separate objects (because each riser + the lumber need to be printed separately).
👉 Now, you have a fully 3D-printed monitor riser! No wood needed!
If your printer can’t fit the risers or lumber in one print, you can cut the model into smaller pieces and use connectors (pegs) to assemble them.
1️⃣ Import the STL into Bambu Studio.
2️⃣ Select the object, then go to "Model" > "Cut"
3️⃣ Cut the model into smaller sections that fit your printer’s build volume.
4️⃣ Before confirming the cut, enable pegs/holes to ensure the pieces align properly after printing.
👉 I’ve included a pre-cut version with pegs to help users with smaller build plates!
✅ Customize everything—height, width, patterns, and screw holes.
✅ Use cutout patterns for aesthetics or ventilation.
✅ Experiment with different lumber thicknesses to fit your setup.
✅ For extra strength, print in PLA+, PETG, or ASA at higher infill settings.
Just download the script, adjust the parameters in OpenSCAD, and print your custom riser today!
Let me know if you have any questions! Happy printing! 🎉🖨️
License:
Standard Digital File License