|
@@ -12,7 +12,7 @@ SHOW_BASE = true;
|
|
|
SHOW_PLUNGERS = true;
|
|
SHOW_PLUNGERS = true;
|
|
|
SHOW_BATTERY = true;
|
|
SHOW_BATTERY = true;
|
|
|
SHOW_EPD_CASE = true;
|
|
SHOW_EPD_CASE = true;
|
|
|
-EXPLODE = 65; // mm to pull lid out in Y- for inspection (try 40)
|
|
|
|
|
|
|
+EXPLODE = 70; // mm to pull lid out in Y- for inspection (try 40)
|
|
|
|
|
|
|
|
/* [Board Dimensions — from EE04 STL] */
|
|
/* [Board Dimensions — from EE04 STL] */
|
|
|
PCB_L = 80.00; // board length (case_x axis)
|
|
PCB_L = 80.00; // board length (case_x axis)
|
|
@@ -96,7 +96,7 @@ CLR_XN = 2.0; // X- side
|
|
|
CLR_XP = 44.0; // X+ side — sized so OUT_L == _EPD_CASE_W (130 − 2×WALL − CLR_XN − PCB_L)
|
|
CLR_XP = 44.0; // X+ side — sized so OUT_L == _EPD_CASE_W (130 − 2×WALL − CLR_XN − PCB_L)
|
|
|
CLR_YN = 15.0; // Y- side (FPC routing; lid inserts from here)
|
|
CLR_YN = 15.0; // Y- side (FPC routing; lid inserts from here)
|
|
|
CLR_YP = 1.77; // Y+ side: calibrated contact(1.565) + rest clearance(0.20)
|
|
CLR_YP = 1.77; // Y+ side: calibrated contact(1.565) + rest clearance(0.20)
|
|
|
-CLR_LID = 5.0; // from tallest component top to lid underside
|
|
|
|
|
|
|
+CLR_LID = 3.5; // from tallest component top to lid underside
|
|
|
BATT_W = 34.5; // 603449 LiPo width (X)
|
|
BATT_W = 34.5; // 603449 LiPo width (X)
|
|
|
BATT_D = 51.0; // 603449 LiPo depth (Y)
|
|
BATT_D = 51.0; // 603449 LiPo depth (Y)
|
|
|
BATT_T = 6.3; // 603449 LiPo thickness (Z)
|
|
BATT_T = 6.3; // 603449 LiPo thickness (Z)
|
|
@@ -282,26 +282,18 @@ module lid() {
|
|
|
cube([0.01, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, 0.01]);
|
|
cube([0.01, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, 0.01]);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // Interior ribs — 2 mm wide; tapered Y+ end matches Y+ locking flange profile
|
|
|
|
|
- hull() {
|
|
|
|
|
- translate([WALL + FLANGE_W - SLIDE_CLEAR, 0, 0])
|
|
|
|
|
- cube([2.0, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H]);
|
|
|
|
|
- translate([WALL + FLANGE_W - SLIDE_CLEAR, LID_Y_LEN - SLIDE_CLEAR, -0.005])
|
|
|
|
|
- cube([2.0, 0.01, 0.01]);
|
|
|
|
|
- }
|
|
|
|
|
- hull() {
|
|
|
|
|
- translate([OUT_L - WALL - FLANGE_W + SLIDE_CLEAR - 2.0, 0, 0])
|
|
|
|
|
- cube([2.0, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H]);
|
|
|
|
|
- translate([OUT_L - WALL - FLANGE_W + SLIDE_CLEAR - 2.0, LID_Y_LEN - SLIDE_CLEAR, -0.005])
|
|
|
|
|
- cube([2.0, 0.01, 0.01]);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ // Interior ribs — 2 mm wide
|
|
|
|
|
+ translate([WALL + FLANGE_W - SLIDE_CLEAR, 0, 0])
|
|
|
|
|
+ cube([2.0, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H]);
|
|
|
|
|
+ translate([OUT_L - WALL - FLANGE_W + SLIDE_CLEAR - 2.0, 0, 0])
|
|
|
|
|
+ cube([2.0, LID_Y_LEN - FLANGE_W + SLIDE_CLEAR, FLANGE_H]);
|
|
|
|
|
|
|
|
// Y+ locking flanges — angled wedge matching side-flange profile; split around FPC notch
|
|
// Y+ locking flanges — angled wedge matching side-flange profile; split around FPC notch
|
|
|
for (seg = [
|
|
for (seg = [
|
|
|
- [WALL + FLANGE_W - SLIDE_CLEAR + 2.0,
|
|
|
|
|
- PCB_OX + FPC_CX - FPC_NOTCH_W/2 - (WALL + FLANGE_W - SLIDE_CLEAR + 2.0)],
|
|
|
|
|
|
|
+ [FLANGE_W - SLIDE_CLEAR + 2.0,
|
|
|
|
|
+ 2+PCB_OX + FPC_CX - FPC_NOTCH_W/2 - (WALL + FLANGE_W - SLIDE_CLEAR + 2.0)],
|
|
|
[PCB_OX + FPC_CX + FPC_NOTCH_W/2,
|
|
[PCB_OX + FPC_CX + FPC_NOTCH_W/2,
|
|
|
- OUT_L - WALL - FLANGE_W + SLIDE_CLEAR - 2.0 - (PCB_OX + FPC_CX + FPC_NOTCH_W/2)]
|
|
|
|
|
|
|
+ OUT_L - FLANGE_W + SLIDE_CLEAR - 2.0 - (PCB_OX + FPC_CX + FPC_NOTCH_W/2)]
|
|
|
]) {
|
|
]) {
|
|
|
hull() {
|
|
hull() {
|
|
|
translate([seg[0], LID_Y_LEN - FLANGE_W + SLIDE_CLEAR - 0.01, 0])
|
|
translate([seg[0], LID_Y_LEN - FLANGE_W + SLIDE_CLEAR - 0.01, 0])
|
|
@@ -313,7 +305,6 @@ module lid() {
|
|
|
translate([seg[0], LID_Y_LEN - FLANGE_W + SLIDE_CLEAR - 2.0, 0])
|
|
translate([seg[0], LID_Y_LEN - FLANGE_W + SLIDE_CLEAR - 2.0, 0])
|
|
|
cube([seg[1], 2.0, FLANGE_H]);
|
|
cube([seg[1], 2.0, FLANGE_H]);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
color("#004B49")
|
|
color("#004B49")
|
|
@@ -326,7 +317,7 @@ module lid() {
|
|
|
else
|
|
else
|
|
|
translate([
|
|
translate([
|
|
|
OUT_L/2 - _EPD_CASE_W/2,
|
|
OUT_L/2 - _EPD_CASE_W/2,
|
|
|
- OUT_W - _EPD_CASE_D,
|
|
|
|
|
|
|
+ OUT_W - _EPD_CASE_D - WALL,
|
|
|
LID_T
|
|
LID_T
|
|
|
])
|
|
])
|
|
|
epd_case();
|
|
epd_case();
|