//sgn may 2022 //samd21 board case for fabacademy $fn = 64; logiclc(); main(); module logiclc(){ difference(){ minkowski(){ translate([-53,0,-4]) cube([40, 68, 2], center = true); cylinder(d = 10, h = 1); } //bolt holes translate([-33,-34,-5]) cylinder(d = 5, h = 7, center = true); translate([-33,34,-5]) cylinder(d = 5, h = 7, center = true); translate([-73,-34,-5]) cylinder(d = 5, h = 7, center = true); translate([-73,34,-5]) cylinder(d = 5, h = 7, center = true); } } module main(){ /* difference(){ cube([58.5, 47.5, 8], center = true); translate([0,0,2]) cube([54.5, 43.5, 6], center = true); } translate([28,10,2]) cube([10, 14, 8], center = true); */ difference(){ minkowski(){ translate([0,0,0]) cube([47, 35.5, 6], center = true); cylinder(d = 14, h = 4, center=true); } minkowski(){ translate([0,0,2]) cube([44.5, 33.5, 6], center = true); cylinder(d = 10, h = 4, center=true); } translate([28,11,2]) cube([10, 14, 8], center = true); translate([30,11,-1.1]) cube([4, 14, 8], center = true); /* PIN_NUMBERS1(); translate([-20,0,24]) rotate([90,270,270]) scale([1,1.2,2]) PIN_NUMBERS1(); PIN_NUMBERS2(); translate([0,-20,18]) rotate([90,0,0]) PIN_NUMBERS3(); RESET(); JTAG(); SPI(); translate([16,-11,24]) rotate([0,90,180]) SPI2(); */ } //TEXT /* translate([4.5,0,3]) rotate([0,0,180]) linear_extrude(4) text("SGN", font = "Liberation Sans"); */ // PA NUMBERS - LEFT SIDE //PIN_NUMBERS1(); //translate([-20,0,23]) //rotate([90,270,270]) //PIN_NUMBERS1(); //PIN_NUMBERS2(); //translate([0,-20,18]) //rotate([90,0,0]) //PIN_NUMBERS3(); //RESET(); //JTAG(); //SPI(); //translate([16,-15,24]) //rotate([0,90,180]) //SPI2(); } module SPI2(){ translate([28,-16,2.5]) rotate([90,270,90]) linear_extrude(3) text("G", font = "Liberation Sans", size=4 ); translate([28,-11,2.5]) rotate([90,270,90]) linear_extrude(3) text("MISO", font = "Liberation Sans", size=4 ); translate([28,-6,2.5]) rotate([90,270,90]) linear_extrude(3) text("MOSI", font = "Liberation Sans", size=4 ); translate([28,-16,-7.5]) rotate([90,270,90]) linear_extrude(3) text("3v3", font = "Liberation Sans", size=4 ); translate([28,-6,-9.5]) rotate([90,270,90]) linear_extrude(3) text("SCK", font = "Liberation Sans", size=4 ); } module SPI(){ translate([28,-21,1.5]) rotate([90,0,90]) linear_extrude(4) text("MOS", font = "Liberation Sans", size=3 ); translate([28,-10,1.5]) rotate([90,0,90]) linear_extrude(4) text("MIS", font = "Liberation Sans", size=3 ); translate([28,-1,1.5]) rotate([90,0,90]) linear_extrude(4) text("G", font = "Liberation Sans", size=3 ); translate([28,-21,-3]) rotate([90,0,90]) linear_extrude(4) text("SCK", font = "Liberation Sans", size=3 ); translate([28,-4,-3]) rotate([90,0,90]) linear_extrude(4) text("3v3", font = "Liberation Sans", size=3 ); } module RESET(){ translate([19,11,-4]) rotate([180,0,180]) linear_extrude(4) text("RESET", font = "Liberation Sans", size=4.5 ); } module JTAG(){ translate([-4,14,-4]) rotate([180,0,180]) linear_extrude(4) text("JTAG", font = "Liberation Sans", size=4.5 ); } module PIN_NUMBERS1(){ translate([-28,11.5,0]) rotate([90,0,270]) linear_extrude(4) text("0", font = "Liberation Sans", size=3 ); translate([-28,9,0]) rotate([90,0,270]) linear_extrude(4) text("1", font = "Liberation Sans", size=3 ); translate([-28,6.5,0]) rotate([90,0,270]) linear_extrude(4) text("2", font = "Liberation Sans", size=3 ); translate([-28,4,0]) rotate([90,0,270]) linear_extrude(4) text("3", font = "Liberation Sans", size=3 ); translate([-28,1.5,0]) rotate([90,0,270]) linear_extrude(4) text("4", font = "Liberation Sans", size=3 ); translate([-28,-1,0]) rotate([90,0,270]) linear_extrude(4) text("5", font = "Liberation Sans", size=3 ); translate([-28,-3.5,0]) rotate([90,0,270]) linear_extrude(4) text("6", font = "Liberation Sans", size=3 ); translate([-28,-6,0]) rotate([90,0,270]) linear_extrude(4) text("7", font = "Liberation Sans", size=3 ); translate([-28,-8.5,0]) rotate([90,0,270]) linear_extrude(4) text("G", font = "Liberation Sans", size=3 ); } module PIN_NUMBERS2(){ translate([-13,-23,-4]) rotate([90,0,0]) linear_extrude(4) text("3v", font = "Liberation Sans", size=3 ); translate([-10,-23,0]) rotate([90,0,0]) linear_extrude(4) text("G", font = "Liberation Sans", size=3 ); translate([-7,-23,-4]) rotate([90,0,0]) linear_extrude(4) text("8", font = "Liberation Sans", size=3 ); translate([-5,-23,0]) rotate([90,0,0]) linear_extrude(4) text("9", font = "Liberation Sans", size=3 ); translate([-4,-23,-4]) rotate([90,0,0]) linear_extrude(4) text("10", font = "Liberation Sans", size=3 ); translate([-2,-23,0]) rotate([90,0,0]) linear_extrude(4) text("11", font = "Liberation Sans", size=3 ); translate([1.5,-23,-4]) rotate([90,0,0]) linear_extrude(4) text("14", font = "Liberation Sans", size=3 ); translate([2.5,-23,0]) rotate([90,0,0]) linear_extrude(4) text("15", font = "Liberation Sans", size=3 ); translate([10,-23,1]) rotate([90,0,0]) linear_extrude(4) text("SDA", font = "Liberation Sans", size=3 ); translate([11,-23,-3]) rotate([90,0,0]) linear_extrude(4) text("3v3", font = "Liberation Sans", size=3 ); translate([20,-23,1]) rotate([90,0,0]) linear_extrude(4) text("SCL", font = "Liberation Sans", size=3 ); translate([20,-23,-3]) rotate([90,0,0]) linear_extrude(4) text("G", font = "Liberation Sans", size=3 ); } module PIN_NUMBERS3(){ translate([-15,-22,-6]) rotate([90,0,0]) linear_extrude(4) text("3v", font = "Liberation Sans", size=4 ); translate([-11,-22,0]) rotate([90,0,0]) linear_extrude(4) text("G", font = "Liberation Sans", size=4 ); translate([-8,-22,-7]) rotate([90,0,0]) linear_extrude(4) text("8", font = "Liberation Sans", size=4 ); translate([-5,-22,-1]) rotate([90,0,0]) linear_extrude(4) text("9", font = "Liberation Sans", size=4 ); translate([-4,-22,-6]) rotate([90,0,0]) linear_extrude(4) text("10", font = "Liberation Sans", size=4 ); translate([-1.5,-22,0]) rotate([90,0,0]) linear_extrude(4) text("11", font = "Liberation Sans", size=4 ); translate([2,-22,-7]) rotate([90,0,0]) linear_extrude(4) text("14", font = "Liberation Sans", size=4 ); translate([4,-22,-1]) rotate([90,0,0]) linear_extrude(4) text("15", font = "Liberation Sans", size=4 ); translate([14,-22,3]) rotate([90,90,0]) linear_extrude(4) text("3v", font = "Liberation Sans", size=4 ); translate([14,-22,-3]) rotate([90,90,0]) linear_extrude(4) text("SDA", font = "Liberation Sans", size=4 ); translate([18,-22,3]) rotate([90,90,0]) linear_extrude(4) text("G", font = "Liberation Sans", size=4 ); translate([18,-22,-3]) rotate([90,90,0]) linear_extrude(4) text("SCL", font = "Liberation Sans", size=4 ); }