From 50874e7e7a1d58e23a9fe8706da1f32f883c7909 Mon Sep 17 00:00:00 2001 From: Mikah Chapman Date: Mon, 27 Jun 2022 00:02:46 -0600 Subject: [PATCH] Add feather mounting points and OLED cutout --- Traeger Controller Mounting Plate.scad | 71 ++++++++++++++++++++++++-- 1 file changed, 68 insertions(+), 3 deletions(-) diff --git a/Traeger Controller Mounting Plate.scad b/Traeger Controller Mounting Plate.scad index 8ca1ccb..db0de48 100644 --- a/Traeger Controller Mounting Plate.scad +++ b/Traeger Controller Mounting Plate.scad @@ -1,3 +1,5 @@ +$fn = 200; + plate_width = 70; plate_depth = 140; plate_height = 2; @@ -18,21 +20,84 @@ oem_pcb_lower_mount_y_outer_dimension = 26; oem_pcb_lower_mount_center_x = plate_width - oem_pcb_lower_mount_x_outer_dimension + (oem_pcb_mount_post_diameter/2); oem_pcb_lower_mount_center_y = plate_depth - oem_pcb_lower_mount_y_outer_dimension + (oem_pcb_mount_post_diameter/2); -oem_pcb_mount_post_height = 40; +oem_pcb_mount_post_height = 60; oem_pcb_mount_new_post_diameter = 6; -$fn = 200; +function in(inches) = inches * 25.4; + +oled_width = 33; +oled_depth = 18; +feather_mount_screw_hole_diameter = 2.2; +feather_width = 51; +feather_depth = 23; + +featherWidth = in(2); +featherDepth = in(0.9); + +feather_position_x = plate_width/2 - featherWidth/2; +feather_position_y = 30; + +module featherPosts(height=4) { +hole_center_offset = in(0.1); +mount_post_diameter = feather_mount_screw_hole_diameter+2; + +translate([hole_center_offset, hole_center_offset, 0]) { + cylinder(h = height, d = mount_post_diameter); +} +translate([featherWidth - hole_center_offset, hole_center_offset, 0]) { + cylinder(h = height, d = mount_post_diameter); +} +translate([featherWidth - hole_center_offset, featherDepth - hole_center_offset, 0]) { + cylinder(h = height, d = mount_post_diameter); +} +translate([hole_center_offset, featherDepth - hole_center_offset, 0]) { + cylinder(h = height, d = mount_post_diameter); +} + +} + +module featherHoles(height=4) { +hole_center_offset = in(0.1); +mount_post_diameter = feather_mount_screw_hole_diameter+2; + +translate([hole_center_offset, hole_center_offset, 0]) { + cylinder(h = height, d = feather_mount_screw_hole_diameter); +} +translate([featherWidth - hole_center_offset, hole_center_offset, 0]) { + cylinder(h = height, d = feather_mount_screw_hole_diameter); +} +translate([featherWidth - hole_center_offset, featherDepth - hole_center_offset, 0]) { + cylinder(h = height, d = feather_mount_screw_hole_diameter); +} +translate([hole_center_offset, featherDepth - hole_center_offset, 0]) { + cylinder(h = height, d = feather_mount_screw_hole_diameter); +} + +} + difference() { - cube([plate_width, plate_depth, plate_height]); + union(){ + cube([plate_width, plate_depth, plate_height]); + translate([feather_position_x, feather_position_y, 0]){ + featherPosts(5); + } + } translate([plate_width/2, mounting_hole_true_offset, -0.05]) { cylinder(h= plate_height + 0.1, d = mounting_hole_diameter); translate([0, plate_depth - (mounting_hole_true_offset * 2), 0]) { cylinder(h= plate_height + 0.1, d = mounting_hole_diameter); } } + translate([feather_position_x, feather_position_y, -0.05]) { + featherHoles(5.1); + translate([10,featherDepth/2-oled_depth/2,0]) { + cube([oled_width, oled_depth, plate_height + 0.1]); + } + } } + translate([oem_pcb_upper_mount_center_x, oem_pcb_upper_mount_center_y, 0]) { cylinder(h = oem_pcb_mount_post_height, d = oem_pcb_mount_new_post_diameter); }