From 3369c59938f4ed442d6e9d93eb38419fad03fbce Mon Sep 17 00:00:00 2001 From: Neil Gershenfeld <gersh@cba.mit.edu> Date: Tue, 5 Nov 2019 22:21:32 -0500 Subject: [PATCH] wip --- python/pcb.py | 103 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 102 insertions(+), 1 deletion(-) diff --git a/python/pcb.py b/python/pcb.py index 666b853..582bfa1 100755 --- a/python/pcb.py +++ b/python/pcb.py @@ -1165,6 +1165,107 @@ class choke(part): # connectors # +class ESC(part): + # + # ESC 3x1 + # Sullins S1013E-36-ND + # + def __init__(self,value=''): + pad_header = cube(-.1,.1,-.05/2,.05/2,0,0) + d = .075 + self.value = value + self.pad = [point(0,0,0)] + self.labels = [] + # + # pin 1: PWM + # + self.shape = translate(pad_header,-d,-.1,0) + self.pad.append(point(-d,-.1,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'PWM')) + # + # pin 2: 5V + # + self.shape = add(self.shape,translate(pad_header,d,0,0)) + self.pad.append(point(d,0,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'5V')) + # + # pin 3: GND + # + self.shape = add(self.shape,translate(pad_header,-d,.1,0)) + self.pad.append(point(-d,.1,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'GND')) + +class I2C4x1(part): + # + # I2C 4x1 + # Sullins S5635-ND + # + def __init__(self,value=''): + pad_header = cube(-.079/2,.079/2,-.039/2,.039/2,0,0) + d = .209/2-.079/2 + self.value = value + self.pad = [point(0,0,0)] + self.labels = [] + # + # pin 1: VCC + # + self.shape = translate(pad_header,-d,-.15,0) + self.pad.append(point(-d,-.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'1VCC')) + # + # pin 2: GND + # + self.shape = add(self.shape,translate(pad_header,d,-.05,0)) + self.pad.append(point(d,-.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'GND')) + # + # pin 3: SCL + # + self.shape = add(self.shape,translate(pad_header,-d,.05,0)) + self.pad.append(point(-d,.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'SCL')) + # + # pin 4: SDA + # + self.shape = add(self.shape,translate(pad_header,d,.15,0)) + self.pad.append(point(d,.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'SDA')) + +class I2C4x1i(part): + # + # I2C 4x1 inline + # + def __init__(self,value=''): + pad_header = cube(-.079/2,.079/2,-.039/2,.039/2,0,0) + d = 0 + self.value = value + self.pad = [point(0,0,0)] + self.labels = [] + # + # pin 1: VCC + # + self.shape = translate(pad_header,-d,-.15,0) + self.pad.append(point(-d,-.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'1VCC')) + # + # pin 2: GND + # + self.shape = add(self.shape,translate(pad_header,d,-.05,0)) + self.pad.append(point(d,-.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'GND')) + # + # pin 3: SCL + # + self.shape = add(self.shape,translate(pad_header,-d,.05,0)) + self.pad.append(point(-d,.05,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'SCL')) + # + # pin 4: SDA + # + self.shape = add(self.shape,translate(pad_header,d,.15,0)) + self.pad.append(point(d,.15,0)) + self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'SDA')) + class RCWL0516(part): # # RCWL-0516 Doppler radar @@ -1200,7 +1301,7 @@ class RCWL0516(part): self.pad.append(point(-.107,.1,0)) self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'VIN')) # - # pin 4: CDS + # pin 5: CDS # self.shape = add(self.shape,translate(pad_header,.107,.2,0)) self.pad.append(point(.107,.2,0)) -- GitLab