|
|
@@ -235,219 +235,6 @@ module octa_mount_body(height, radius, lower_lip, upper_lip, clear) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-// flare from the body to the microphone stalk
|
|
|
-
|
|
|
-module octa_mount_flare_no_ws(height, lip, transition, radius, top_radius, stalk_height, dot) {
|
|
|
- // bottom box
|
|
|
- difference() {
|
|
|
- union() {
|
|
|
- rounded_octagon_wall(height, radius, 2 * wall);
|
|
|
- // small pedestals for the screws that attach the flare to the body
|
|
|
- // (number 0 size, 1/4" long = thread diameter: 1.6mm, head diameter: 2.75)
|
|
|
- for (r = [45, 135, 225, 315]) rotate([0, 0, r]) {
|
|
|
- translate([radius - wall - 1.75, 0, lip/2]) {
|
|
|
- rotate([0, 90, 0]) {
|
|
|
- cylinder(r = 1.5, h = 2 * wall, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // flange to mount on body
|
|
|
- rounded_octagon_wall(lip + 1.00, radius - wall, wall);
|
|
|
- // and make a smooth transition to avoid overhangs
|
|
|
- translate([0, 0, lip + 1.00]) {
|
|
|
- hull() {
|
|
|
- rounded_octagon_wall(thin_mint, radius - wall, wall);
|
|
|
- translate([0, 0, 1.0]) {
|
|
|
- rounded_octagon_wall(thin_mint, radius - 2 * wall, wall);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // holes for screws that attach the flare to the body
|
|
|
- // Number 0 Size, 1/4" Long = thread diameter: 1.6mm, head diameter: 2.75
|
|
|
- for (r = [45, 135, 225, 315]) rotate([0, 0, r]) {
|
|
|
- translate([radius/2, 0, lip/2]) {
|
|
|
- rotate([0, 90, 0]) {
|
|
|
- cylinder(r = (1.6 + 0.1)/2, h = radius, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // flare to round section
|
|
|
- translate([0, 0, height]) {
|
|
|
- difference() {
|
|
|
- hull() {
|
|
|
- rounded_octagon(thin_mint, radius);
|
|
|
- translate([0, 0, transition]) {
|
|
|
- cylinder(r = top_radius, h = thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- hull() {
|
|
|
- rounded_octagon(thin_mint, radius - wall);
|
|
|
- translate([0, 0, transition]) {
|
|
|
- cylinder(r = top_radius - wall, h = thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // cylindrical stalk
|
|
|
- translate([0, 0, height + transition]) {
|
|
|
- difference() {
|
|
|
- cylinder(r = top_radius, h = stalk_height, $fn = facets);
|
|
|
- cylinder(r = top_radius - wall, h = stalk_height, $fn = facets);
|
|
|
- }
|
|
|
- // add marker for "back of microphone" orientation
|
|
|
- if (dot == 1) {
|
|
|
- rotate([0, 0, 90]) {
|
|
|
- translate([0, top_radius - wall * 2 / 3, stalk_height - top_radius]) {
|
|
|
- difference() {
|
|
|
- sphere(r = top_radius / 3, $fn = 32);
|
|
|
- translate([0, -top_radius + top_radius / 2, 0]) {
|
|
|
- cube([top_radius, top_radius, top_radius], center = true);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // close stalk and add holes for cables
|
|
|
- translate([0, 0, stalk_height - top_radius - wall]) {
|
|
|
- difference() {
|
|
|
- cylinder(r = top_radius - wall, h = top_radius + wall, $fn = facets);
|
|
|
- translate([0, 0, 0]) {
|
|
|
- sphere(r = top_radius - wall, $fn = facets);
|
|
|
- }
|
|
|
- wire_diam = mic_wire_diam + mic_wire_fit;
|
|
|
- for (r = [0, 90, 180, 270]) rotate([0, 0, r]) {
|
|
|
- for (t = [0, 1]) {
|
|
|
- rotate([0, 0, 45 * t]) translate([top_radius - wire_diam - t * wire_diam * 2/3, 0, wall]) {
|
|
|
- cylinder(r = wire_diam / 2, h = top_radius * 2, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- translate([0, 0, wall]) cylinder(r = wire_diam, h = top_radius * 2, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-module octa_mount_flare_old(height, lip, transition, radius, top_radius, stalk_height, dot) {
|
|
|
- // transition from bottom box to windscreen mounting thread
|
|
|
- transition_to_threads = 5;
|
|
|
- // bottom box
|
|
|
- difference() {
|
|
|
- union() {
|
|
|
- rounded_octagon_wall(height, radius, 2 * wall);
|
|
|
- // small pedestals for the screws that attach the flare to the body
|
|
|
- // (number 0 size, 1/4" long = thread diameter: 1.6mm, head diameter: 2.75)
|
|
|
- for (r = [45, 135, 225, 315]) rotate([0, 0, r]) {
|
|
|
- translate([radius - wall - 1.75, 0, lip/2]) {
|
|
|
- rotate([0, 90, 0]) {
|
|
|
- cylinder(r = 1.5, h = 2 * wall, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // indicator of "front" of microphone
|
|
|
- rotate([0, 0, 180 + 22.5]) translate([radius - 2, 0, 0]) {
|
|
|
- cylinder(r = 1.0, h = lip/2, $fn = facets);
|
|
|
- }
|
|
|
- // stops for shock mount
|
|
|
- for (r = [0, 90, 180, 270]) rotate([0, 0, r - 22.5]) {
|
|
|
- translate([radius - 3.4, 0, 0]) scale([2.0, 1.0, 1.0]) {
|
|
|
- difference() {
|
|
|
- cylinder(r = 2.0, h = lip + transition_to_threads, $fn = facets);
|
|
|
- translate([-2, -2.0, 0]) cube([2.0, 4.0, lip + transition_to_threads]);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // flange to mount on body
|
|
|
- rounded_octagon_wall(lip + 1.00, radius - wall, wall);
|
|
|
- // and make a smooth transition to avoid overhangs
|
|
|
- translate([0, 0, lip + 1.00]) {
|
|
|
- hull() {
|
|
|
- rounded_octagon_wall(thin_mint, radius - wall, wall);
|
|
|
- translate([0, 0, 1.0]) {
|
|
|
- rounded_octagon_wall(thin_mint, radius - 2 * wall, wall);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // holes for screws that attach the flare to the body
|
|
|
- // Number 0 Size, 1/4" Long = thread diameter: 1.6mm, head diameter: 2.75
|
|
|
- for (r = [45, 135, 225, 315]) rotate([0, 0, r]) {
|
|
|
- translate([radius/2, 0, lip/2]) {
|
|
|
- rotate([0, 90, 0]) {
|
|
|
- cylinder(r = (1.6 + 0.1)/2, h = radius, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // flare to windscreen threads
|
|
|
- translate([0, 0, height - windscreen_thread_height - transition_to_threads]) {
|
|
|
- difference() {
|
|
|
- hull() {
|
|
|
- rounded_octagon(thin_mint, radius);
|
|
|
- translate([0, 0, transition_to_threads]) {
|
|
|
- cylinder(r = windscreen_thread_radius + 0.5, h = thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- hull() {
|
|
|
- rounded_octagon(thin_mint, radius - wall);
|
|
|
- translate([0, 0, transition_to_threads]) {
|
|
|
- cylinder(r = windscreen_thread_radius - windscreen_thread_depth - wall, h = thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // windscreen mounting threads
|
|
|
- translate([0, 0, height - windscreen_thread_height]) difference() {
|
|
|
- metric_thread(diameter = windscreen_thread_radius * 2, pitch = windscreen_thread_pitch,
|
|
|
- length = windscreen_thread_height, angle = windscreen_thread_angle, internal = false);
|
|
|
- cylinder(r = windscreen_thread_radius - wall - windscreen_thread_depth, h = windscreen_thread_height + thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- // flare to stalk
|
|
|
- translate([0, 0, height - 1.5]) {
|
|
|
- difference() {
|
|
|
- hull() {
|
|
|
- cylinder(r = windscreen_thread_radius - windscreen_thread_depth, h = thin_mint, $fn = facets);
|
|
|
- translate([0, 0, transition + 1.5]) {
|
|
|
- cylinder(r = top_radius, h = thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- hull() {
|
|
|
- cylinder(r = windscreen_thread_radius - windscreen_thread_depth - wall, h = thin_mint, $fn = facets);
|
|
|
- translate([0, 0, transition + 1.5]) {
|
|
|
- cylinder(r = top_radius - wall, h = thin_mint, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // cylindrical stalk
|
|
|
- translate([0, 0, height + transition]) {
|
|
|
- difference() {
|
|
|
- cylinder(r = top_radius, h = stalk_height, $fn = facets);
|
|
|
- cylinder(r = top_radius - wall, h = stalk_height, $fn = facets);
|
|
|
- }
|
|
|
- // close stalk and add holes for cables
|
|
|
- translate([0, 0, stalk_height - top_radius - wall]) {
|
|
|
- difference() {
|
|
|
- cylinder(r = top_radius - wall, h = top_radius + wall, $fn = facets);
|
|
|
- translate([0, 0, 0]) {
|
|
|
- sphere(r = top_radius - wall, $fn = facets);
|
|
|
- }
|
|
|
- wire_diam = mic_wire_diam + mic_wire_fit;
|
|
|
- for (r = [0, 90, 180, 270]) rotate([0, 0, r]) {
|
|
|
- for (t = [0, 1]) {
|
|
|
- rotate([0, 0, 45 * t]) translate([top_radius - wire_diam - t * wire_diam * 2/3, 0, wall]) {
|
|
|
- cylinder(r = wire_diam / 2, h = top_radius * 2, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- translate([0, 0, wall]) cylinder(r = wire_diam, h = top_radius * 2, $fn = facets);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
// stalk from flare to capsule array mount
|
|
|
|
|
|
module octa_mount_stalk(height, lip, transition, radius, top_radius, stalk_height, dot) {
|