From 4cfb8f786c3a110c8b1c65ae78b1f4a4879f9fd5 Mon Sep 17 00:00:00 2001 From: "Jan \"Yenya\" Kasprzak" Date: Thu, 22 Jun 2023 08:30:28 +0200 Subject: [PATCH] BigTreeTech TFT3.5 display cover --- btt-tft35-cover.scad | 75 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 btt-tft35-cover.scad diff --git a/btt-tft35-cover.scad b/btt-tft35-cover.scad new file mode 100644 index 0000000..43fcf36 --- /dev/null +++ b/btt-tft35-cover.scad @@ -0,0 +1,75 @@ +eps = 0.01; +infty = 200; +wall = 1.5; + +body_h = 87 + 2 + 2*wall; +body_w = 93 + 2 + 2*wall; + +screen_w = 75.5; +screen_h = 51; + +screw_hd = 88; +screw_vd = 65; + +screw_off = 3.5 + wall; +screw_d = 3; +screw_support_d = 9; + +screw_to_disp_x = 5; +screw_to_disp_y = 6.5; + +screen_to_screw_z = 8; + +screw_to_reset_y = 12.5+screw_vd; +reset_button_d = 10; +reset_lever_w = 30; +reset_lever_h = reset_button_d/2; + +screw_to_dial_x = 75; +screw_to_dial_y = 10+screw_vd; +dial_hole_d = 7; + + +body_z = 20 + wall; +difference() { + cube([body_w, body_h, body_z]); + difference() { // inner space w/o screw supports + translate([wall, wall, wall]) + cube([body_w-2*wall, body_h-2*wall, body_z]); + for (x = [0, 1]) for (y = [0, 1]) + translate([screw_off + x*screw_hd, + screw_off + y*screw_vd, -eps]) + cylinder (r = screw_support_d/2, h = screen_to_screw_z + 2*eps); + } + // screen hole + hull() { + translate([screw_off + screw_to_disp_x, + screw_off + screw_to_disp_y, wall]) + cube([screen_w, screen_h, eps]); + translate([screw_off + screw_to_disp_x - wall/2, + screw_off + screw_to_disp_y - wall/2, -eps]) + cube([screen_w+wall, screen_h+wall, eps]); + } + // screw holes + for (x = [0, 1]) for (y = [0, 1]) + translate([screw_off + x*screw_hd, screw_off + y*screw_vd, -eps]) + cylinder (r = screw_d/2, h = body_z + 2*eps); + // dial hole + translate([screw_off + screw_to_dial_x, + screw_off + screw_to_dial_y, -eps]) + cylinder(r = dial_hole_d/2, h = wall + 2*eps); + + // reset_button + translate([screw_off + screw_hd/2, screw_off + screw_to_reset_y, -eps]) + difference() { + union() { + cylinder(r = reset_button_d/2+wall, h = wall + 2*eps); + translate([-reset_lever_w, -reset_lever_h/2-wall, 0]) + cube([reset_lever_w, reset_lever_h + 2*wall, wall + 2*eps]); + } + translate([0, 0, -eps]) + cylinder(r = reset_button_d/2, h = wall + 4*eps); + translate([-reset_lever_w-eps, -reset_lever_h/2, -eps]) + cube([reset_lever_w, reset_lever_h, wall + 4*eps]); + } +} -- 2.43.0