Integrated LED diffuser, fixes
This commit is contained in:
@@ -29,22 +29,18 @@ module character_retainer_cutout() {
|
|||||||
screw_hole_diameter = 3;
|
screw_hole_diameter = 3;
|
||||||
// Ring cutout
|
// Ring cutout
|
||||||
cylinder(d = 60, h = 5);
|
cylinder(d = 60, h = 5);
|
||||||
|
// Led diffuser cutout
|
||||||
|
translate([-28, -15, 0]) cylinder(d = 15, h = 5);
|
||||||
|
// Led housing cutout
|
||||||
|
translate([-28, -15, 3]) cylinder(d = 5.2, h = 15);
|
||||||
|
|
||||||
|
|
||||||
// Screw holes
|
// Screw holes
|
||||||
translate([0, -25, 10]) cylinder(d = screw_hole_diameter, h = 15, center = true);
|
translate([0, -25, 10]) cylinder(d = screw_hole_diameter, h = 15, center = true);
|
||||||
rotate([0, 0, 120]) translate([0, -25, 10]) cylinder(d = screw_hole_diameter, h = 15, center = true);
|
rotate([0, 0, 120]) translate([0, -25, 10]) cylinder(d = screw_hole_diameter, h = 15, center = true);
|
||||||
rotate([0, 0, 240]) translate([0, -25, 10]) cylinder(d = screw_hole_diameter, h = 15, center = true);
|
rotate([0, 0, 240]) translate([0, -25, 10]) cylinder(d = screw_hole_diameter, h = 15, center = true);
|
||||||
}
|
}
|
||||||
|
|
||||||
module status_led_diffuser_cutout() {
|
|
||||||
$fn = 32;
|
|
||||||
// Diffuser
|
|
||||||
hull() {
|
|
||||||
translate([0, -13.2, 0]) cylinder(d = 10.2, h = 13);
|
|
||||||
translate([15.2, 13.2, 0]) cylinder(d = 10.2, h = 13);
|
|
||||||
translate([-15.2, 13.2, 0]) cylinder(d = 10.2, h = 13);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module sdcard_access_port_cutout() {
|
module sdcard_access_port_cutout() {
|
||||||
$fn = 32;
|
$fn = 32;
|
||||||
union() {
|
union() {
|
||||||
@@ -60,8 +56,7 @@ module sdcard_access_port_cutout() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
usb_cutout();
|
//usb_cutout();
|
||||||
//speaker_grille();
|
//speaker_grille();
|
||||||
//character_retainer_cutout();
|
character_retainer_cutout();
|
||||||
//status_led_diffuser_cutout();
|
|
||||||
//sdcard_access_port_cutout();
|
//sdcard_access_port_cutout();
|
||||||
@@ -14,7 +14,12 @@ module character_retainer_ring() {
|
|||||||
screw_hole_diameter = 2;
|
screw_hole_diameter = 2;
|
||||||
difference() {
|
difference() {
|
||||||
// Body
|
// Body
|
||||||
|
union() {
|
||||||
|
// Main body
|
||||||
cylinder(d = 59.5, h = 6);
|
cylinder(d = 59.5, h = 6);
|
||||||
|
// Secondary circle (status LED diffuser)
|
||||||
|
translate([28, -15, 0]) cylinder(d = 14.5, h = 6);
|
||||||
|
}
|
||||||
cylinder(d = 40.5, h = 20, center = true);
|
cylinder(d = 40.5, h = 20, center = true);
|
||||||
// Screw holes
|
// Screw holes
|
||||||
translate([0, -25, 0]) cylinder(d = screw_hole_diameter, h = 6, center = true);
|
translate([0, -25, 0]) cylinder(d = screw_hole_diameter, h = 6, center = true);
|
||||||
@@ -25,6 +30,9 @@ module character_retainer_ring() {
|
|||||||
rotate([0, 0, 45]) retainer_spring();
|
rotate([0, 0, 45]) retainer_spring();
|
||||||
rotate([0, 0, 165]) retainer_spring();
|
rotate([0, 0, 165]) retainer_spring();
|
||||||
rotate([0, 0, 285]) retainer_spring();
|
rotate([0, 0, 285]) retainer_spring();
|
||||||
|
|
||||||
|
// Status LED housing
|
||||||
|
translate([28, -15, -0.1]) cylinder(d = 5.2, h = 3);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Retainer bumps
|
// Retainer bumps
|
||||||
@@ -32,6 +40,7 @@ module character_retainer_ring() {
|
|||||||
rotate([0, 0, 90]) translate ([20.25, 0, 4]) sphere(d = 2);
|
rotate([0, 0, 90]) translate ([20.25, 0, 4]) sphere(d = 2);
|
||||||
rotate([0, 0, 210]) translate ([20.25, 0, 4]) sphere(d = 2);
|
rotate([0, 0, 210]) translate ([20.25, 0, 4]) sphere(d = 2);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module status_led_diffuser() {
|
module status_led_diffuser() {
|
||||||
@@ -61,9 +70,9 @@ module sdcard_access_port() {
|
|||||||
translate([15, 0, 0]) cylinder(d = 20, h = 2);
|
translate([15, 0, 0]) cylinder(d = 20, h = 2);
|
||||||
translate([-15, 0, 0]) cylinder(d = 20, h = 2);
|
translate([-15, 0, 0]) cylinder(d = 20, h = 2);
|
||||||
}
|
}
|
||||||
// Text
|
|
||||||
translate([6, -3, -0.9]) linear_extrude(height = 1) rotate([0, 180, 0]) text("SD", size = 6);
|
|
||||||
}
|
}
|
||||||
|
// Text
|
||||||
|
translate([6, -3, -0.1]) linear_extrude(height = 1) rotate([0, 180, 0]) text("SD", size = 6);
|
||||||
// Mounting holes
|
// Mounting holes
|
||||||
translate([16, 0, -1]) cylinder(d = 3, h = 10);
|
translate([16, 0, -1]) cylinder(d = 3, h = 10);
|
||||||
translate([-16, 0, -1]) cylinder(d = 3, h = 10);
|
translate([-16, 0, -1]) cylinder(d = 3, h = 10);
|
||||||
@@ -71,6 +80,6 @@ module sdcard_access_port() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//retainer_spring();
|
//retainer_spring();
|
||||||
character_retainer_ring();
|
//character_retainer_ring();
|
||||||
//status_led_diffuser();
|
//status_led_diffuser();
|
||||||
//sdcard_access_port();
|
sdcard_access_port();
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ module fabula_enclosure_bottom() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Cutouts
|
// Cutouts
|
||||||
translate([98.4, 29, 17]) rotate([0, -90, 0]) usb_cutout(); // TODO: Verificare altezza
|
translate([98.4, 29, 17]) rotate([0, -90, 0]) usb_cutout();
|
||||||
translate([90, 5, 10]) rotate([90, 0, 0]) rotate([0, 90, 0]) switch_cutout();
|
translate([90, 5, 10]) rotate([90, 0, 0]) rotate([0, 90, 0]) switch_cutout();
|
||||||
translate([-65, -40, 25]) speaker_grille();
|
translate([-65, -40, 25]) speaker_grille();
|
||||||
translate([75, 55, 16]) rotate([90, 0, 0]) cylinder(d = 3, h = 20, $fn = 4);
|
translate([75, 55, 16]) rotate([90, 0, 0]) cylinder(d = 3, h = 20, $fn = 4);
|
||||||
|
|||||||
3
enclosure/printables/top_part_sdcard_cover.scad
Normal file
3
enclosure/printables/top_part_sdcard_cover.scad
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
use <../external_parts.scad>
|
||||||
|
|
||||||
|
sdcard_access_port();
|
||||||
@@ -34,5 +34,5 @@ module test_fit_components() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
test_fit_components();
|
test_fit_components();
|
||||||
//color(color_bottom) translate([0, 0, explode_view ? -20 : 20]) rotate([0, 0, -90]) rotate([180, 0, 0]) fabula_enclosure_bottom();
|
color(color_bottom) translate([0, 0, explode_view ? -20 : 20]) rotate([0, 0, -90]) rotate([180, 0, 0]) fabula_enclosure_bottom();
|
||||||
color(color_top) translate([0, 0, explode_view ? 100 : 21]) rotate([0, 0, -90]) rotate([180, 0, 0]) fabula_enclosure_top();
|
color(color_top) translate([0, 0, explode_view ? 100 : 21]) rotate([0, 0, -90]) rotate([180, 0, 0]) fabula_enclosure_top();
|
||||||
|
|||||||
Reference in New Issue
Block a user