Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 239007d1d4 | |||
| 926aecebf5 |
@@ -17,6 +17,8 @@ The toy has an internal lithium-ion battery that can be charged via USB-C and pr
|
|||||||
It can also be monitored and controlled via Home Assistant or with a web interface in local network.
|
It can also be monitored and controlled via Home Assistant or with a web interface in local network.
|
||||||
It is privacy-friendly: it works completely localy and sends no data to any external service.
|
It is privacy-friendly: it works completely localy and sends no data to any external service.
|
||||||
|
|
||||||
|
> Disclaimer: this is a prototype and its design may change substantially at any time. If you plan on building one, please start from the last tagged commit (e.g. `1.0.1` and take note of the tag for future references.
|
||||||
|
|
||||||
## How does it work?
|
## How does it work?
|
||||||
|
|
||||||

|

|
||||||
|
|||||||
@@ -29,6 +29,12 @@ module fabula_enclosure_bottom() {
|
|||||||
// Logos
|
// Logos
|
||||||
translate([45, -18, 28.1]) linear_extrude(height = 1, center = true) rotate([0, 0, 90]) scale([0.15, 0.15, 0.15]) import("oshw-logo-filled-black.svg");
|
translate([45, -18, 28.1]) linear_extrude(height = 1, center = true) rotate([0, 0, 90]) scale([0.15, 0.15, 0.15]) import("oshw-logo-filled-black.svg");
|
||||||
translate([66, -25, 28.1]) linear_extrude(height = 1, center = true) rotate([0, 0, 90]) text("a Luna, con ♥", size = 6);
|
translate([66, -25, 28.1]) linear_extrude(height = 1, center = true) rotate([0, 0, 90]) text("a Luna, con ♥", size = 6);
|
||||||
|
|
||||||
|
// Foot screw holes
|
||||||
|
translate([-75, -30, 0]) {
|
||||||
|
translate([0, 10, -3.9]) cylinder(h = 40, d = pcb_screw_size*1.5);
|
||||||
|
translate([0, 40, -3.9]) cylinder(h = 40, d = pcb_screw_size*1.5);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Speaker grille reinforcements
|
// Speaker grille reinforcements
|
||||||
@@ -68,5 +74,20 @@ module fabula_enclosure_top() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module fabula_enclosure_foot() {
|
||||||
|
// A foot to leave a gap under the shell for a better sound
|
||||||
|
difference(){
|
||||||
|
hull(){
|
||||||
|
sphere(d = 10, $fn = 64);
|
||||||
|
translate([0, 50, 0]) sphere(d = 10, $fn = 64);
|
||||||
|
}
|
||||||
|
translate([-5, -5, 0]) cube([10, 50 + 10, 5]);
|
||||||
|
// Screw holes
|
||||||
|
translate([0, 10, -3.9]) cylinder(h = 4, d = pcb_screw_size);
|
||||||
|
translate([0, 40, -3.9]) cylinder(h = 4, d = pcb_screw_size);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
translate([0, -60, 0]) rotate([180, 0, 0]) fabula_enclosure_bottom();
|
translate([0, -60, 0]) rotate([180, 0, 0]) fabula_enclosure_bottom();
|
||||||
translate([0, 60, 0]) fabula_enclosure_top();
|
translate([0, 60, 0]) fabula_enclosure_top();
|
||||||
|
translate([-120, -80, -30]) fabula_enclosure_foot();
|
||||||
|
|||||||
Reference in New Issue
Block a user