diff --git a/python/pcb.py b/python/pcb.py index 1d0c77cdd32b3d5749c17d2d73540d6147c04779..4e138623f902b813c00e7739b6a29889e11f144c 100755 --- a/python/pcb.py +++ b/python/pcb.py @@ -1227,6 +1227,45 @@ class choke(part): # connectors ############################################################ +class header_I2C_hole(part): + # + # I2C through-hole + # + def __init__(self,value,zb,zt): + pad_header = cylinder(0,0,zb,zt,.04) + 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,.15,0) + 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,'SDA')) + # + # pin 2 + # + 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,'SCL')) + # + # 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,'VCC')) + # + # pin 4 + # + 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,'GND')) + class FFC_4x1(part): # # 4 x 1mm flat flex connector