psu_y = +psu_sz[1]/2 + psu_usb_protr;
+psu_usba_v_apart = 7.0;
+psu_usba_v_from_edge = 4.86;
+psu_usba_v_space_below = 1.5;
+psu_usba_v_space_w = 1.7;
+psu_usba_v_space_l = 3.0;
+
// ----- calculated -----
psu_z = NutBox_h_base(psu_board_nutbox);
}
}
+module PsuUsbAVSpacePlan(){
+ for (x= [-1,+1] * psu_usba_v_apart/2) {
+ translate([x, -psu_usba_v_from_edge ]) {
+ hull(){
+ for (y= [-1,+1] * (psu_usba_v_space_l - psu_usba_v_space_w)) {
+ translate([0,y])
+ circle(r= psu_usba_v_space_w);
+ }
+ }
+ }
+ }
+}
+
module PsuMountPositiveMain(){
for (mx=[0,1]) {
for (my=[0,1]) {
translate([0, psu_board_nutbox_y, 0])
rotate([0,0,180])
NutBox(psu_board_nutbox, psu_z_down);
+ translate([0, psu_sz[1]/2, 0])
+ linextr(-psu_usba_v_space_below, +10)
+ PsuUsbAVSpacePlan();
}
}