Skip to content

Commit 1ff3be0

Browse files
committed
7.3e improvements
1 parent 89c8fbe commit 1ff3be0

File tree

2 files changed

+93
-10
lines changed

2 files changed

+93
-10
lines changed

cases/case1.scad

Lines changed: 67 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -165,11 +165,32 @@ hanging_hole_wall_thickness = 1;
165165

166166
/* [SD card adapter cutout] */
167167

168-
sd_card_in_leg = true;
168+
sd_card_in_leg = false;
169169
sd_card_in_leg_side = "left"; // [left, right]
170170
sd_card_in_leg_side_side = "left"; // [left, right]
171171
sd_card_in_leg_y_percentage = 75.5;
172172

173+
/* [Rear cooling] */
174+
rear_cooling = false;
175+
rear_cooling_x_start_percentage = 6.1;
176+
rear_cooling_x_end_percentage = 20;
177+
rear_cooling_y_start_percentage = 20;
178+
rear_cooling_y_end_percentage = 60;
179+
rear_cooling_radius = 2;
180+
rear_cooling_gap = 5;
181+
rear_cooling_offset = 5;
182+
183+
/* [Raspberry Pi Zero Pinholes] */
184+
pi_pinholes = false;
185+
pi_pinholes_ordientation = "vertical"; // [horizontal, vertical]
186+
pi_pinholes_x_percentage = 5.5;
187+
pi_pinholes_y_percentage = 15;
188+
pi_pinholes_diameter = 2.5;
189+
pi_pinholes_spacer = 4.1;
190+
pi_pinholes_spacer_height = 3;
191+
pi_pinholes_height = 23;
192+
pi_pinholes_width = 58;
193+
173194
/* [Debug] */
174195

175196
// Gap between STL parts for visual debugging
@@ -572,6 +593,9 @@ module case() {
572593
bottom=(view_mode == "print_vertical")
573594
);
574595
}
596+
if (pi_pinholes) {
597+
piPinholes();
598+
}
575599

576600
// Cut out a piece of the cube
577601
caseBody();
@@ -706,6 +730,10 @@ module case() {
706730
])
707731
cube([hanging_hole_small_diameter, hanging_hole_large_diameter, back_depth + 0.21]);
708732
}
733+
734+
if (rear_cooling) {
735+
rearCooling();
736+
}
709737
}
710738
}
711739

@@ -1056,9 +1084,6 @@ sd_adapter_height = 32;
10561084
sd_adapter_depth = 2.2;
10571085
sd_adapter_micro_width = 10.5;
10581086
sd_adapter_micro_hole_height = 3.3;
1059-
sd_card_x_position = (sd_card_in_leg_side == "left" ? leg_x_starts_hole[0] + 0.11 : leg_x_starts_hole[1] + 0.11) +
1060-
(sd_card_in_leg_side_side == "left" ? 0 : kickstand_leg_width + kickstand_gap_thickness * 2 - 0.21);
1061-
sd_card_y_position = sd_card_in_leg_y_percentage / 100 * kickstand_height + (frame_full_height - kickstand_height);
10621087

10631088
module sdCardAdapterCutout() {
10641089
translate([-sd_adapter_width / 2, 0, case_depth - 2 * sd_adapter_depth])
@@ -1084,6 +1109,44 @@ module sdCardAdapterBase() {
10841109
}
10851110
}
10861111

1112+
// Draw tiny holes into the back panel for cooling
1113+
module rearCooling() {
1114+
rear_cooling_x_start = rear_cooling_x_start_percentage / 100 * frame_full_width;
1115+
rear_cooling_x_end = rear_cooling_x_end_percentage / 100 * frame_full_width;
1116+
rear_cooling_y_start = rear_cooling_y_start_percentage / 100 * frame_full_height;
1117+
rear_cooling_y_end = rear_cooling_y_end_percentage / 100 * frame_full_height;
1118+
1119+
for (x = [rear_cooling_x_start : rear_cooling_gap : rear_cooling_x_end]) {
1120+
for (y = [rear_cooling_y_start : rear_cooling_gap : rear_cooling_y_end]) {
1121+
translate([x, y, -0.11])
1122+
cylinder(d = rear_cooling_radius, h = case_depth + back_depth + 0.22);
1123+
}
1124+
}
1125+
}
1126+
1127+
module piPinholes() {
1128+
pin_holes_x = pi_pinholes_x_percentage / 100 * frame_full_width;
1129+
pin_holes_y = pi_pinholes_y_percentage / 100 * frame_full_height;
1130+
1131+
pin_hole_locations = pi_pinholes_ordientation == "horizontal" ? [
1132+
[pin_holes_x, pin_holes_y],
1133+
[pin_holes_x + pi_pinholes_width, pin_holes_y],
1134+
[pin_holes_x, pin_holes_y + pi_pinholes_height],
1135+
[pin_holes_x + pi_pinholes_width, pin_holes_y + pi_pinholes_height]
1136+
] : [
1137+
[pin_holes_x, pin_holes_y],
1138+
[pin_holes_x + pi_pinholes_height, pin_holes_y],
1139+
[pin_holes_x, pin_holes_y + pi_pinholes_width],
1140+
[pin_holes_x + pi_pinholes_height, pin_holes_y + pi_pinholes_width]
1141+
];
1142+
for (loc = pin_hole_locations) {
1143+
translate([loc[0], loc[1], -0.11])
1144+
cylinder(d = pi_pinholes_diameter, h = case_depth + 0.22);
1145+
translate([loc[0], loc[1], case_depth - pi_pinholes_spacer_height - 0.11])
1146+
cylinder(d = pi_pinholes_spacer, h = pi_pinholes_spacer_height + 0.22);
1147+
}
1148+
}
1149+
10871150
/*****************************************************************************/
10881151
/* Rendering */
10891152
/*****************************************************************************/

cases/waveshare.7in3e.scad

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ view_mode="print_horizontal"; // [print_vertical, print_horizontal, stacked]
66

77
/* [Case depth] */
88
case_depth = 6.0;
9+
fillet_radius = 2.2;
910

1011
/* [Panel dimensions] */
1112
panel_width = 170.3;
@@ -19,8 +20,8 @@ panel_bezel_bottom = 10.8;
1920
/* [Border and inner padding] */
2021
panel_border_left = 2.0;
2122
panel_border_right = 2.0;
22-
panel_border_top = 6.4;
23-
panel_border_bottom = 6.4;
23+
panel_border_top = 6.8;
24+
panel_border_bottom = 6.8;
2425

2526
// // Uniform border
2627
// panel_border_left = 9.2;
@@ -37,10 +38,10 @@ case_inner_padding_bottom = 2.0;
3738
panel_cable_gap_bottom = 40;
3839

3940
/* [Screws] */
40-
screw_offset_left = 4.2;
41-
screw_offset_right = 4.2;
42-
screw_offset_top = 3.7;
43-
screw_offset_bottom = 3.7;
41+
screw_offset_left = 4.4;
42+
screw_offset_right = 4.4;
43+
screw_offset_top = 4.2;
44+
screw_offset_bottom = 4.2;
4445

4546
extra_screws_top = [0, 0, 0, 0, 0];
4647
extra_screws_bottom = [0, 0, 0, 0, 0];
@@ -69,6 +70,25 @@ usb_cutout_hole_height = 5.8;
6970
hanging_hole = true;
7071
hanging_hole_offset = 4;
7172

73+
/* [SD card adapter cutout] */
74+
sd_card_in_leg = true;
75+
sd_card_in_leg_side = "left"; // [left, right]
76+
sd_card_in_leg_side_side = "left"; // [left, right]
77+
sd_card_in_leg_y_percentage = 75.5;
78+
79+
/* [Rear cooling] */
80+
rear_cooling = true;
81+
rear_cooling_x_start_percentage = 6.3;
82+
rear_cooling_x_end_percentage = 20;
83+
rear_cooling_y_start_percentage = 18;
84+
rear_cooling_y_end_percentage = 60;
85+
86+
/* [Raspberry Pi Zero Pinholes] */
87+
pi_pinholes = true;
88+
pi_pinholes_ordientation = "vertical"; // [horizontal, vertical]
89+
pi_pinholes_x_percentage = 5.5;
90+
pi_pinholes_y_percentage = 15;
91+
7292
/* [Debug] */
7393
cross_section_percentage = 0; // [0:100]
7494
vertical_print_scale = 1.004; // 0.4mm shrinkage for every 100mm

0 commit comments

Comments
 (0)