diff --git a/python/pcb.py b/python/pcb.py index ad5e8dcb8f03c70c3bed4d829d9869a0f6350c21..1d0c77cdd32b3d5749c17d2d73540d6147c04779 100755 --- a/python/pcb.py +++ b/python/pcb.py @@ -1277,6 +1277,59 @@ class FFC_4x1(part): self.shape = add(self.shape,translate(anchor,-ax,ay,0)) self.shape = add(self.shape,translate(anchor,ax,ay,0)) +class header_IMU_4754_hole(part): + # + # Adafruit 4754 IMU breakout through-hole + # + def __init__(self,value,zb,zt): + pad_header = cylinder(0,0,zb,zt,.03) + pad_hole = cylinder(0,0,zb,zt,.018) + self.value = value + self.pad = [point(0,0,0)] + self.labels = [] + # + # pin 1 + # + self.shape = translate(pad_header,0,.25,0) + self.holes = translate(pad_hole,0,.25,0) + self.pad.append(point(0,.25,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'Vin')) + # + # pin 2 + # + self.shape = add(self.shape,translate(pad_header,0,.15,0)) + self.holes = add(self.holes,translate(pad_hole,0,.15,0)) + self.pad.append(point(0,.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'3.3')) + # + # pin 3 + # + self.shape = add(self.shape,translate(pad_header,0,.05,0)) + self.holes = add(self.holes,translate(pad_hole,0,.05,0)) + self.pad.append(point(0,.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'GND')) + # + # pin 4 + # + self.shape = add(self.shape,translate(pad_header,0,-0.05,0)) + self.holes = add(self.holes,translate(pad_hole,0,-0.05,0)) + self.pad.append(point(0,-0.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'SCL')) + # + # pin 5 + # + self.shape = add(self.shape,translate(pad_header,0,-0.15,0)) + self.holes = add(self.holes,translate(pad_hole,0,-0.15,0)) + self.pad.append(point(0,-0.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'SDA')) + # + # pin 6 + # + self.shape = add(self.shape,translate(pad_header,0,-0.25,0)) + self.holes = add(self.holes,translate(pad_hole,0,-0.25,0)) + self.pad.append(point(0,-0.25,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'INT')) + class header_IMU_3463_hole(part): # # Adafruit 3463 IMU breakout through-hole