diff --git a/python/pcb.py b/python/pcb.py
index 150d28808b1f6abad208775646a9685df700c5ea..ceb457541d52474ee377ee1011c88574511ba8e1 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