From 3200def409b51bb609c380d3c7cbea81ba6fa105 Mon Sep 17 00:00:00 2001 From: Neil Gershenfeld <gersh@cba.mit.edu> Date: Sun, 4 Dec 2022 13:17:32 -0500 Subject: [PATCH] wip --- python/pcb.py | 57 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 55 insertions(+), 2 deletions(-) diff --git a/python/pcb.py b/python/pcb.py index 150d288..ceb4575 100755 --- a/python/pcb.py +++ b/python/pcb.py @@ -20,9 +20,9 @@ ############################################################ #output = "top, labels, and exterior" -output = "top, labels, holes, and exterior" +#output = "top, labels, holes, and exterior" #output = "top, bottom, labels, and exterior" -#output = "top, bottom, labels, holes, and exterior" +output = "top, bottom, labels, holes, and exterior" #output = "top traces" #output = "top traces and exterior" #output = "bottom traces" @@ -1228,6 +1228,59 @@ class choke(part): # connectors ############################################################ +class header_IMU_3463_hole(part): + # + # Adafruit 3463 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,'RST')) + class header_IMU_3463(part): # # Adafruit 3463 IMU breakout -- GitLab