8 cyl_h = 8; // above pcb, max 13.8;
13 pcb_supp = 3; // side support thickness
14 pcb_h = 8; // 1.2 + space for connector etc
17 cyl_base = pcb_x/2 + wall - cyl_x;
22 conn_x0 = conn_x - 1.5*conn_z0;
35 translate([-pcb_x/2, -pcb_y/2, -eps])
36 cube([pcb_x, pcb_y, pcb_h-pcb_thick+eps]);
38 translate([-conn_x/2, pcb_y/2-eps, -eps])
39 cube([conn_x, conn_y+eps, pcb_h-pcb_thick+eps]);
43 translate([-conn_x0/2+wall, conn_y+pcb_y/2-eps, conn_z0-wall-eps])
44 cube([conn_x0-2*wall, conn_len+2*eps, pcb_h+cyl_h+wall+eps-conn_z0]);
45 translate([-conn_x/2+wall, conn_y+pcb_y/2-eps, -wall])
46 cube([conn_x-2*wall, conn_len+2*eps, pcb_h+cyl_h+wall-conn_z0]);
50 for (x = [-1, 1]) translate([cyl_x*x, 0, pcb_h - eps])
51 cylinder(r = cyl_r, h = cyl_h + 2+wall + eps);
53 translate([-pcb_x/2, -pcb_y/2, pcb_h-pcb_thick-eps])
54 cube([pcb_x, pcb_y, pcb_thick+eps]);
55 // space below the pcb (xtal, etc)
56 translate([-pcb_x/2+pcb_supp, -pcb_y/2, pcb_h-pcb_thick - eps])
57 cube([pcb_x - 2*pcb_supp, pcb_y, xtal_h+pcb_thick+eps]);
62 translate([-pcb_x/2-wall, -pcb_y/2-wall, 0])
63 cube([pcb_x+2*wall, pcb_y+2*wall, pcb_h+wall]);
66 for (x = [-1, 1]) translate([cyl_x*x, 0, pcb_h + cyl_h])
67 cylinder(r = cyl_base, h = wall);
69 // front (see cable cover)
70 translate([-conn_x0/2, conn_y+pcb_y/2, conn_z0-eps])
71 cube([conn_x0, wall, pcb_h+cyl_h+wall+eps-conn_z0]);
72 translate([-conn_x/2, conn_y+pcb_y/2, 0])
73 cube([conn_x, wall, pcb_h+cyl_h+wall-conn_z0]);
76 for (x = [1, -1]) scale([x, 1, 1])
77 translate([pcb_x/2+wall, -screw_head/2-wall, 0])
78 cube([screw_head, screw_head+2*wall, screw_base]);
83 translate([-conn_x0/2, conn_y+pcb_y/2, conn_z0-eps])
84 cube([conn_x0, conn_len, pcb_h+cyl_h+wall+eps-conn_z0]);
85 translate([-conn_x/2, conn_y+pcb_y/2, 0])
86 cube([conn_x, conn_len, pcb_h+cyl_h+wall-conn_z0]);
96 translate([-clip_h/2, -pcb_y/2, pcb_h-pcb_thick-clip_r/2])
98 cylinder(r=clip_r, h = clip_h, $fn = 4);
101 for (x = [-1, 1]) scale([x, 1, 1]) {
102 translate([pcb_x/2+wall, -screw_head/2, screw_base])
103 cube([screw_head+eps, screw_head, infty]);
105 translate([pcb_x/2+wall+screw_head/2-screw_d/2, -screw_head/2, -eps])
106 cube([screw_d, screw_head, infty]);
109 translate([0, 3.5, pcb_h + cyl_h + eps])
111 linear_extrude(height=wall)
112 text("CVT FI", font="DejaVu Sans:style=Bold", size=5,
113 halign="center", valign="center");
117 rotate([180, 0, 0]) // rotate it for easier print