Frame Assembly
Frame Assembly
Building the M10 threaded rod skeleton for your 235×235mm bed.
Overview
The Amalgam frame uses M10 threaded rods as the primary structural element. This approach offers:
- Low cost: Hardware store materials
- Easy sourcing: Available worldwide
- Adjustability: Fine-tune dimensions with nuts
- Rigidity: M10 provides 3× the stiffness of M8
Materials Required
Threaded Rods (M10)
Based on your bed size (235×235mm):
| Axis | Quantity | Length | Notes |
|---|---|---|---|
| X | 4 | 0mm | Front/back horizontals |
| Y | 4 | 0mm | Left/right horizontals |
| Z | 4 | 0mm | Vertical uprights |
If frame dimensions show 0, run python scripts/analyze.py to calculate them.
Hardware
| Item | Quantity | Notes |
|---|---|---|
| M10 nuts | 96 | 8 per joint × 12 joints |
| M10 washers | 48 | 4 per corner × 12 |
| Printed corners | 8 | See STL list below |
Smooth Rods (M10)
| Axis | Quantity | Length | Notes |
|---|---|---|---|
| X gantry | 2 | ~0mm | Check CAD output |
| Y axis | 2 | ~0mm | Check CAD output |
| Z axis | 2-4 | ~0mm | 2 for belt-Z, 4 for triple-Z |
Printed Parts
Build the corner pieces before starting assembly:
cd cad
./build.sh build corner_front_left
./build.sh build corner_front_right
./build.sh build corner_back_left
./build.sh build corner_back_right
# ... and 4 more for bottom cornersOr build all at once:
./build.sh build_allAssembly Steps
Step 1: Prepare Rods
- Cut M10 threaded rods to length (see table above)
- Deburr cut ends with file
- Clean threads with wire brush
- Test-fit nuts on all rods
Galvanized rods have thicker coating and more variation. Use LUMPY_FACTOR = 0.5 or higher in config.py.
Step 2: Bottom Frame
- Lay out 4 bottom corners
- Insert X rods (0mm) through front/back
- Insert Y rods (0mm) through left/right
- Hand-tighten all nuts
Y rods
←———→
[C]═══════[C] ↑
║ ║ │ X rods
║ ║ │
[C]═══════[C] ↓
C = Corner piece
Step 3: Add Verticals
- Thread Z rods (0mm) through bottom corners
- Attach top corners
- Hand-tighten
Step 4: Square the Frame
Critical step! An out-of-square frame causes: - Layer shifting - Binding on Z - Poor print quality
Use diagonal measurements to verify squareness (both diagonals should match within 1-2mm).
Verification
Before proceeding, verify:
Next Steps
- Verify frame squareness with diagonal measurements
- Install motion system on the squared frame
This guide uses dimensions from your config.py: - Bed: 235×235mm - Smooth rods: M10 - Z type: Triple Independent Z