Added battery and speaker supports

This commit is contained in:
2026-01-04 01:46:14 +01:00
parent 1117b062be
commit 554964de01
3 changed files with 27 additions and 7 deletions

View File

@@ -6,12 +6,24 @@ use <cutouts.scad>
// TODO: open hardware logo, Fabula logo, cutouts for components and buttons, tag slot with led mount // TODO: open hardware logo, Fabula logo, cutouts for components and buttons, tag slot with led mount
box_cut_height = 10;
module fabula_enclosure_bottom() { module fabula_enclosure_bottom() {
cap(); cap();
// Supports
translate([-30, 0, 19.1]) supports_speaker();
translate([28, 0, 14.1]) rotate([0, 180, 90]) supports_battery();
// Cutouts
} }
module fabula_enclosure_top() { module fabula_enclosure_top() {
box(); box();
// Supports
// Cutouts
} }
translate([0, -60, 0]) rotate([180, 0, 0]) fabula_enclosure_bottom(); translate([0, -60, 0]) rotate([180, 0, 0]) fabula_enclosure_bottom();

View File

@@ -2,7 +2,14 @@
module supports_speaker() { module supports_speaker() {
difference() { difference() {
cylinder(d = 84, h = 2); cylinder(d = 84, h = 2, center = true);
cylinder(d = 80, h = 2); cylinder(d = 80, h = 2.1, center = true);
} }
} }
module supports_battery() {
difference() {
cube([71, 23, 12], true);
translate([0, 0, 3]) rotate([0, 90, 0]) cylinder(h = 67, d = 19, center = true);
}
}

View File

@@ -6,14 +6,15 @@ use <fabula_enclosure.scad>
module test_fit_components() { module test_fit_components() {
// Internal components // Internal components
translate([0, 35, 0]) speaker_80(); translate([0, 30, 0]) speaker_80();
translate([0, 0, 35]) pcb(); translate([0, 0, 35]) pcb();
translate([0, -14, 9]) rotate([0, 90, 0]) battery_18650(); translate([0, -28, 9]) rotate([0, 90, 0]) battery_18650();
// Components that require cutout on external shell // Components that require cutout on external shell
translate([40, -80, 10]) rotate([0, 90, 0]) rotate([0, 0, 90]) li_ion_4056_charger_module(); translate([-35, -78, 30]) rotate([90, 0, 0]) li_ion_4056_charger_module();
translate ([46.5, -40, 10]) rotate([90, 0, 0]) rotate([0, 90, 0]) switch(); translate([-5, -92, 30]) rotate([90, 0, 0]) switch();
} }
test_fit_components(); test_fit_components();
translate([0, 0, 20]) rotate([0, 0, -90]) #fabula_enclosure_bottom(); translate([0, 0, 20]) rotate([0, 0, -90]) rotate([180, 0, 0]) #fabula_enclosure_bottom();
//translate([0, 0, 20]) rotate([0, 0, -90]) rotate([180, 0, 0]) #fabula_enclosure_top();