diff --git a/python/pcb.py b/python/pcb.py
index 49a2f69dc5d614e6caa16c65fdad0ccdeb01dcc2..d914180c9b480ef161c602e600b60ca7b4a87319 100755
--- a/python/pcb.py
+++ b/python/pcb.py
@@ -19,8 +19,8 @@
 # uncomment for desired output
 ############################################################
 
-output = "top, labels, and exterior"
-#output = "top, labels, holes, and exterior"
+#output = "top, labels, and exterior"
+output = "top, labels, holes, and exterior"
 #output = "top, bottom, labels, and exterior"
 #output = "top, bottom, labels, holes, and exterior"
 #output = "top traces"
@@ -1373,6 +1373,58 @@ class micro_USB(part):
       self.holes = add(self.holes,cylinder(3.5/25.4,-2.7/25.4,zb,zt,.9/25.4/2))
       self.shape= add(self.shape,cylinder(3.5/25.4,-2.7/25.4,zb,zt,2/25.4/2))
 
+class micro_USB_nopad(part):
+   #
+   # micro USB, no pad
+   #    AMP/FCI 10118194-0001LF
+   #
+   def __init__(self,value='',zb=-0.06,zt=0):
+      w = 0.0049 # pad half width
+      h = .55/25.4/2 # pad half height
+      p = .65/25.4 # pad pitch
+      l = 0.006 # text
+      pad_header = cube(-w,w,-h,h,0,0)
+      self.value = value
+      self.pad = [point(0,0,0)]
+      self.labels = []
+      #
+      # pin 1
+      #
+      self.shape = translate(pad_header,-2*p,0,0)
+      self.pad.append(point(-2*p,0,0))
+      self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'V',line=l))
+      #
+      # pin 2
+      #
+      self.shape = add(self.shape,translate(pad_header,-p,0,0))
+      self.pad.append(point(-p,0,0))
+      self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'-',line=l))
+      #
+      # pin 3
+      #
+      self.shape = add(self.shape,translate(pad_header,0,0,0))
+      self.pad.append(point(0,0,0))
+      self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'+',line=l))
+      #
+      # pin 4
+      #
+      self.shape = add(self.shape,translate(pad_header,p,0,0))
+      self.pad.append(point(p,0,0))
+      self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'I',line=l))
+      #
+      # pin 5
+      #
+      self.shape = add(self.shape,translate(pad_header,2*p,0,0))
+      self.pad.append(point(2*p,0,0))
+      self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'G',line=l))
+      #
+      # holes
+      #
+      self.holes = cylinder(2.5/25.4,0,zb,zt,0.016)
+      self.holes = add(self.holes,cylinder(-2.5/25.4,0,zb,zt,0.016))
+      self.holes = add(self.holes,cylinder(-3.5/25.4,-2.7/25.4,zb,zt,.9/25.4/2))
+      self.holes = add(self.holes,cylinder(3.5/25.4,-2.7/25.4,zb,zt,.9/25.4/2))
+
 class header_IMU_2738(part):
    #
    # Pololu 2736 MinIMU-9 v5 IMU