Add custom screw holes to extended GFCI plate

- Added outer screw holes: 2.68mm diameter, 0.25" (6.35mm) beyond main holes
- Main screw holes enlarged 40% (4.0mm → 5.6mm)
- Main screw holes changed to horizontal pill shape (14mm × 5.6mm)
- Updated 2D template SVG with matching holes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Cal Corum 2025-12-20 17:48:14 -06:00
parent 93d5b0f102
commit 30c2e33e7e
3 changed files with 87 additions and 32 deletions

View File

@ -10,17 +10,30 @@ opening_width = 34.0;
opening_height = 67.0;
opening_corner_radius = 2.0;
// Screw holes - same spacing as original
screw_hole_diameter = 5.0;
// Main screw holes (pill-shaped, horizontal)
screw_hole_height = 5.6;
screw_hole_width = 14.0; // 250% of height
screw_hole_spacing = 83.3;
// Outer screw holes (circular, 0.25" beyond main holes)
outer_screw_hole_offset = 6.35; // mm (0.25 inches)
outer_screw_hole_diameter = 2.68; // mm (67% of original 4.0mm)
$fn = 64;
difference() {
rect([plate_width, plate_height], rounding=plate_corner_radius);
rect([opening_width, opening_height], rounding=opening_corner_radius);
// Main screw holes (pill-shaped)
translate([0, screw_hole_spacing/2])
circle(d=screw_hole_diameter);
rect([screw_hole_width, screw_hole_height], rounding=screw_hole_height/2);
translate([0, -screw_hole_spacing/2])
circle(d=screw_hole_diameter);
rect([screw_hole_width, screw_hole_height], rounding=screw_hole_height/2);
// Outer screw holes (circular)
translate([0, screw_hole_spacing/2 + outer_screw_hole_offset])
circle(d=outer_screw_hole_diameter);
translate([0, -screw_hole_spacing/2 - outer_screw_hole_offset])
circle(d=outer_screw_hole_diameter);
}

View File

@ -15,17 +15,29 @@ M 73.794,114.986 L 74.0853,114.942 L 74.3708,114.871 L 74.648,114.772 L 74.9142,
L -76.2716,113.148 L -76.1458,113.414 L -75.9944,113.667 L -75.819,113.903 L -75.6213,114.121 L -75.4032,114.319
L -75.1667,114.494 L -74.9142,114.646 L -74.648,114.772 L -74.3708,114.871 L -74.0853,114.942 L -73.794,114.986
L -73.5,115 L 73.5,115 z
M -0.245041,-39.162 L -0.487717,-39.198 L -0.725708,-39.2576 L -0.956696,-39.3403 L -1.17848,-39.4452 L -1.38892,-39.5713
L -1.58597,-39.7175 L -1.76776,-39.8822 L -1.93253,-40.064 L -2.07866,-40.2611 L -2.20479,-40.4715 L -2.30969,-40.6933
L -2.39235,-40.9243 L -2.45195,-41.1623 L -2.48796,-41.405 L -2.5,-41.65 L -2.48796,-41.895 L -2.45195,-42.1377
L -2.39235,-42.3757 L -2.30969,-42.6067 L -2.20479,-42.8285 L -2.07866,-43.0389 L -1.93253,-43.236 L -1.76776,-43.4178
L -1.58597,-43.5825 L -1.38892,-43.7287 L -1.17848,-43.8548 L -0.956696,-43.9597 L -0.725708,-44.0423 L -0.487717,-44.102
L -0.245041,-44.138 L 0,-44.15 L 0.245041,-44.138 L 0.487717,-44.102 L 0.725708,-44.0423 L 0.956696,-43.9597
L 1.17848,-43.8548 L 1.38892,-43.7287 L 1.58597,-43.5825 L 1.76776,-43.4178 L 1.93253,-43.236 L 2.07866,-43.0389
L 2.20479,-42.8285 L 2.30969,-42.6067 L 2.39235,-42.3757 L 2.45195,-42.1377 L 2.48796,-41.895 L 2.5,-41.65
L 2.48796,-41.405 L 2.45195,-41.1623 L 2.39235,-40.9243 L 2.30969,-40.6933 L 2.20479,-40.4715 L 2.07866,-40.2611
L 1.93253,-40.064 L 1.76776,-39.8822 L 1.58597,-39.7175 L 1.38892,-39.5713 L 1.17848,-39.4452 L 0.956696,-39.3403
L 0.725708,-39.2576 L 0.487717,-39.198 L 0.245041,-39.162 L 0,-39.15 z
M -0.131332,-46.6664 L -0.261414,-46.6857 L -0.388977,-46.7177 L -0.512787,-46.762 L -0.631668,-46.8182 L -0.744461,-46.8858
L -0.850082,-46.9642 L -0.94751,-47.0525 L -1.03583,-47.1499 L -1.11417,-47.2555 L -1.18176,-47.3683 L -1.23799,-47.4872
L -1.28229,-47.611 L -1.31424,-47.7386 L -1.33354,-47.8687 L -1.34,-48 L -1.33354,-48.1313 L -1.31424,-48.2614
L -1.28229,-48.389 L -1.23799,-48.5128 L -1.18176,-48.6317 L -1.11417,-48.7445 L -1.03583,-48.8501 L -0.94751,-48.9475
L -0.850082,-49.0358 L -0.744461,-49.1142 L -0.631668,-49.1818 L -0.512787,-49.238 L -0.388977,-49.2823 L -0.261414,-49.3142
L -0.131332,-49.3335 L 0,-49.34 L 0.131332,-49.3335 L 0.261414,-49.3142 L 0.388977,-49.2823 L 0.512787,-49.238
L 0.631668,-49.1818 L 0.744461,-49.1142 L 0.850082,-49.0358 L 0.94751,-48.9475 L 1.03583,-48.8501 L 1.11417,-48.7445
L 1.18176,-48.6317 L 1.23799,-48.5128 L 1.28229,-48.389 L 1.31424,-48.2614 L 1.33354,-48.1313 L 1.34,-48
L 1.33354,-47.8687 L 1.31424,-47.7386 L 1.28229,-47.611 L 1.23799,-47.4872 L 1.18176,-47.3683 L 1.11417,-47.2555
L 1.03583,-47.1499 L 0.94751,-47.0525 L 0.850082,-46.9642 L 0.744461,-46.8858 L 0.631668,-46.8182 L 0.512787,-46.762
L 0.388977,-46.7177 L 0.261414,-46.6857 L 0.131332,-46.6664 L 0,-46.66 z
M -4.2,-38.85 L -4.47444,-38.8635 L -4.74625,-38.9038 L -5.01279,-38.9706 L -5.2715,-39.0631 L -5.5199,-39.1806
L -5.75558,-39.3219 L -5.97629,-39.4856 L -6.17989,-39.6701 L -6.36443,-39.8737 L -6.52811,-40.0944 L -6.66937,-40.3301
L -6.78685,-40.5785 L -6.87943,-40.8372 L -6.9462,-41.1037 L -6.98651,-41.3755 L -7,-41.65 L -6.98651,-41.9244
L -6.9462,-42.1962 L -6.87943,-42.4628 L -6.78685,-42.7215 L -6.66937,-42.9699 L -6.52811,-43.2056 L -6.36443,-43.4263
L -6.17989,-43.6299 L -5.97629,-43.8144 L -5.75558,-43.9781 L -5.5199,-44.1194 L -5.2715,-44.2368 L -5.01279,-44.3294
L -4.74625,-44.3962 L -4.47444,-44.4365 L -4.2,-44.45 L 4.2,-44.45 L 4.47444,-44.4365 L 4.74625,-44.3962
L 5.01279,-44.3294 L 5.2715,-44.2368 L 5.5199,-44.1194 L 5.75558,-43.9781 L 5.97629,-43.8144 L 6.17989,-43.6299
L 6.36443,-43.4263 L 6.52811,-43.2056 L 6.66937,-42.9699 L 6.78685,-42.7215 L 6.87943,-42.4628 L 6.9462,-42.1962
L 6.98651,-41.9244 L 7,-41.65 L 6.98651,-41.3755 L 6.9462,-41.1037 L 6.87943,-40.8372 L 6.78685,-40.5785
L 6.66937,-40.3301 L 6.52811,-40.0944 L 6.36443,-39.8737 L 6.17989,-39.6701 L 5.97629,-39.4856 L 5.75558,-39.3219
L 5.5199,-39.1806 L 5.2715,-39.0631 L 5.01279,-38.9706 L 4.74625,-38.9038 L 4.47444,-38.8635 L 4.2,-38.85
z
M -15,33.5 L -15.196,33.4904 L -15.3902,33.4616 L -15.5806,33.4139 L -15.7654,33.3477 L -15.9428,33.2638
L -16.1111,33.1629 L -16.2688,33.046 L -16.4142,32.9142 L -16.546,32.7688 L -16.6629,32.6111 L -16.7638,32.4428
L -16.8477,32.2654 L -16.9139,32.0806 L -16.9616,31.8902 L -16.9904,31.696 L -17,31.5 L -17,-31.5
@ -38,16 +50,28 @@ M -15,33.5 L -15.196,33.4904 L -15.3902,33.4616 L -15.5806,33.4139 L -15.7654,33
L 16.9139,32.0806 L 16.8477,32.2654 L 16.7638,32.4428 L 16.6629,32.6111 L 16.546,32.7688 L 16.4142,32.9142
L 16.2688,33.046 L 16.1111,33.1629 L 15.9428,33.2638 L 15.7654,33.3477 L 15.5806,33.4139 L 15.3902,33.4616
L 15.196,33.4904 L 15,33.5 z
M -0.245041,44.138 L -0.487717,44.102 L -0.725708,44.0423 L -0.956696,43.9597 L -1.17848,43.8548 L -1.38892,43.7287
L -1.58597,43.5825 L -1.76776,43.4178 L -1.93253,43.236 L -2.07866,43.0389 L -2.20479,42.8285 L -2.30969,42.6067
L -2.39235,42.3757 L -2.45195,42.1377 L -2.48796,41.895 L -2.5,41.65 L -2.48796,41.405 L -2.45195,41.1623
L -2.39235,40.9243 L -2.30969,40.6933 L -2.20479,40.4715 L -2.07866,40.2611 L -1.93253,40.064 L -1.76776,39.8822
L -1.58597,39.7175 L -1.38892,39.5713 L -1.17848,39.4452 L -0.956696,39.3403 L -0.725708,39.2576 L -0.487717,39.198
L -0.245041,39.162 L 0,39.15 L 0.245041,39.162 L 0.487717,39.198 L 0.725708,39.2576 L 0.956696,39.3403
L 1.17848,39.4452 L 1.38892,39.5713 L 1.58597,39.7175 L 1.76776,39.8822 L 1.93253,40.064 L 2.07866,40.2611
L 2.20479,40.4715 L 2.30969,40.6933 L 2.39235,40.9243 L 2.45195,41.1623 L 2.48796,41.405 L 2.5,41.65
L 2.48796,41.895 L 2.45195,42.1377 L 2.39235,42.3757 L 2.30969,42.6067 L 2.20479,42.8285 L 2.07866,43.0389
L 1.93253,43.236 L 1.76776,43.4178 L 1.58597,43.5825 L 1.38892,43.7287 L 1.17848,43.8548 L 0.956696,43.9597
L 0.725708,44.0423 L 0.487717,44.102 L 0.245041,44.138 L 0,44.15 z
M -4.2,44.45 L -4.47444,44.4365 L -4.74625,44.3962 L -5.01279,44.3294 L -5.2715,44.2368 L -5.5199,44.1194
L -5.75558,43.9781 L -5.97629,43.8144 L -6.17989,43.6299 L -6.36443,43.4263 L -6.52811,43.2056 L -6.66937,42.9699
L -6.78685,42.7215 L -6.87943,42.4628 L -6.9462,42.1962 L -6.98651,41.9244 L -7,41.65 L -6.98651,41.3755
L -6.9462,41.1037 L -6.87943,40.8372 L -6.78685,40.5785 L -6.66937,40.3301 L -6.52811,40.0944 L -6.36443,39.8737
L -6.17989,39.6701 L -5.97629,39.4856 L -5.75558,39.3219 L -5.5199,39.1806 L -5.2715,39.0631 L -5.01279,38.9706
L -4.74625,38.9038 L -4.47444,38.8635 L -4.2,38.85 L 4.2,38.85 L 4.47444,38.8635 L 4.74625,38.9038
L 5.01279,38.9706 L 5.2715,39.0631 L 5.5199,39.1806 L 5.75558,39.3219 L 5.97629,39.4856 L 6.17989,39.6701
L 6.36443,39.8737 L 6.52811,40.0944 L 6.66937,40.3301 L 6.78685,40.5785 L 6.87943,40.8372 L 6.9462,41.1037
L 6.98651,41.3755 L 7,41.65 L 6.98651,41.9244 L 6.9462,42.1962 L 6.87943,42.4628 L 6.78685,42.7215
L 6.66937,42.9699 L 6.52811,43.2056 L 6.36443,43.4263 L 6.17989,43.6299 L 5.97629,43.8144 L 5.75558,43.9781
L 5.5199,44.1194 L 5.2715,44.2368 L 5.01279,44.3294 L 4.74625,44.3962 L 4.47444,44.4365 L 4.2,44.45
z
M -0.131332,49.3335 L -0.261414,49.3142 L -0.388977,49.2823 L -0.512787,49.238 L -0.631668,49.1818 L -0.744461,49.1142
L -0.850082,49.0358 L -0.94751,48.9475 L -1.03583,48.8501 L -1.11417,48.7445 L -1.18176,48.6317 L -1.23799,48.5128
L -1.28229,48.389 L -1.31424,48.2614 L -1.33354,48.1313 L -1.34,48 L -1.33354,47.8687 L -1.31424,47.7386
L -1.28229,47.611 L -1.23799,47.4872 L -1.18176,47.3683 L -1.11417,47.2555 L -1.03583,47.1499 L -0.94751,47.0525
L -0.850082,46.9642 L -0.744461,46.8858 L -0.631668,46.8182 L -0.512787,46.762 L -0.388977,46.7177 L -0.261414,46.6857
L -0.131332,46.6664 L 0,46.66 L 0.131332,46.6664 L 0.261414,46.6857 L 0.388977,46.7177 L 0.512787,46.762
L 0.631668,46.8182 L 0.744461,46.8858 L 0.850082,46.9642 L 0.94751,47.0525 L 1.03583,47.1499 L 1.11417,47.2555
L 1.18176,47.3683 L 1.23799,47.4872 L 1.28229,47.611 L 1.31424,47.7386 L 1.33354,47.8687 L 1.34,48
L 1.33354,48.1313 L 1.31424,48.2614 L 1.28229,48.389 L 1.23799,48.5128 L 1.18176,48.6317 L 1.11417,48.7445
L 1.03583,48.8501 L 0.94751,48.9475 L 0.850082,49.0358 L 0.744461,49.1142 L 0.631668,49.1818 L 0.512787,49.238
L 0.388977,49.2823 L 0.261414,49.3142 L 0.131332,49.3335 L 0,49.34 z
" stroke="black" fill="none" stroke-width="0.5"/>
</svg>

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

View File

@ -29,8 +29,14 @@ opening_corner_radius = 2.0; // mm
/* [Screw Holes] */
screw_holes_enabled = true;
screw_hole_diameter = 4.0; // mm
screw_hole_spacing = 83.3; // mm - distance between screw holes (unchanged)
screw_hole_height = 5.6; // mm - vertical dimension (was diameter)
screw_hole_width = 14.0; // mm - horizontal dimension (250% of height)
screw_hole_spacing = 83.3; // mm - distance between main screw holes
// Outer screw holes (smaller, beyond the main holes)
outer_screw_holes_enabled = true;
outer_screw_hole_offset = 6.35; // mm (0.25 inches) beyond main holes
outer_screw_hole_diameter = 2.68; // mm (67% of main hole diameter)
/* [Resolution] */
$fn = 64;
@ -88,13 +94,25 @@ module paddle_opening_3d() {
module screw_holes() {
if (screw_holes_enabled) {
// Top screw hole
// Top main screw hole (pill-shaped, horizontal)
translate([0, screw_hole_spacing/2, -0.1])
cylinder(h = plate_thickness + 0.2, d = screw_hole_diameter);
linear_extrude(height = plate_thickness + 0.2)
rect([screw_hole_width, screw_hole_height], rounding=screw_hole_height/2);
// Bottom screw hole
// Bottom main screw hole (pill-shaped, horizontal)
translate([0, -screw_hole_spacing/2, -0.1])
cylinder(h = plate_thickness + 0.2, d = screw_hole_diameter);
linear_extrude(height = plate_thickness + 0.2)
rect([screw_hole_width, screw_hole_height], rounding=screw_hole_height/2);
}
if (outer_screw_holes_enabled) {
// Top outer screw hole (above top main hole)
translate([0, screw_hole_spacing/2 + outer_screw_hole_offset, -0.1])
cylinder(h = plate_thickness + 0.2, d = outer_screw_hole_diameter);
// Bottom outer screw hole (below bottom main hole)
translate([0, -screw_hole_spacing/2 - outer_screw_hole_offset, -0.1])
cylinder(h = plate_thickness + 0.2, d = outer_screw_hole_diameter);
}
}