10 box_depth = pcb_thickness + pcb_depth;
13 lid_rail_height = 1.5;
29 translate([-wall_thickness, -wall_thickness, -box_depth-wall_thickness])
30 cube([2*wall_thickness + pcb_length, 2*wall_thickness + pcb_width, wall_thickness + box_depth + box_height]);
33 cube([pcb_length, pcb_width, box_height+1]);
36 translate([pcb_length-over, (pcb_width-usb_width)/2, 0])
37 cube([wall_thickness+2*over, usb_width, box_height+over]);
39 // RS485 connector hole
40 translate([-wall_thickness-over, (pcb_width-rs485_width)/2, 0])
41 cube([wall_thickness+2*over, rs485_width, box_height+over]);
44 translate([0, 0, -pcb_thickness])
45 cube([pcb_length, pcb_width, pcb_thickness+over]);
48 translate([pcb_length - 10, pcb_rail_width, -pcb_thickness-pcb_depth])
49 cube([10, pcb_width - 2*pcb_rail_width, pcb_thickness + pcb_depth + over]);
50 translate([pcb_length - 33, pcb_rail_width, -pcb_thickness-pcb_depth])
51 cube([9, pcb_width - 2*pcb_rail_width, pcb_thickness + pcb_depth + over]);
52 translate([1, pcb_rail_width, -pcb_thickness-pcb_depth])
53 cube([8, pcb_width - 2*pcb_rail_width, pcb_thickness + pcb_depth + over]);
61 translate([-wall_thickness, -wall_thickness, 0])
62 cube([pcb_length + 2*wall_thickness, pcb_width + 2*wall_thickness, wall_thickness]);
65 translate([0, 0, -lid_rail_height])
66 cube([pcb_length, lid_rail_width, lid_rail_height + over]);
67 translate([0, pcb_width - lid_rail_width, -lid_rail_height])
68 cube([pcb_length, lid_rail_width, lid_rail_height + over]);
71 translate([pcb_length, (pcb_width - usb_width)/2 + clearance, usb_height - box_height + clearance])
72 cube([wall_thickness, usb_width - 2*clearance, box_height - usb_height - clearance + over]);
74 // RS485 connector roof
75 translate([-wall_thickness, (pcb_width - rs485_width)/2 + clearance, rs485_height - box_height + clearance])
76 cube([wall_thickness, rs485_width - 2*clearance, box_height - rs485_height - clearance + over]);
80 translate([32, 1, -over])
81 cube([4, 2, wall_thickness + 2*over]);
82 translate([32, pcb_width - 3, -over])
83 cube([4, 2, wall_thickness + 2*over]);
86 translate([pcb_length-3, pcb_width/2, wall_thickness - text_depth])
89 linear_extrude(text_depth + over)
90 text("USB", font = "Liberation Serif", halign="center");
93 translate([3, pcb_width/2, wall_thickness - text_depth])
96 linear_extrude(text_depth + over)
97 text("RS 485", font = "Liberation Serif", halign="center");
102 color([1, 0, 0]) translate([0, 0, box_height]) top();