diff --git a/python/pcb.py b/python/pcb.py
index 6b8a760c6c3d6ab55f91c012380338be97948a7c..3a8be09b9eaf9b3b232fdbb14bd285df0269edd1 100755
--- a/python/pcb.py
+++ b/python/pcb.py
@@ -23,7 +23,7 @@ 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"
+xoutput = "top traces"
 #output = "top traces and exterior"
 #output = "bottom traces"
 #output = "bottom traces reversed"
@@ -6772,9 +6772,106 @@ class SAMD11D(part):
       self.pad.append(point(d,.225,0))
       self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'A04'))
 
+class ATtiny1624_SOIC(part):
+   #
+   # ATtiny1624-SS
+   #
+   def __init__(self,value=''):
+      self.value = value
+      self.pad = [point(0,0,0)]
+      self.labels = []
+      d = 0.11
+      w = 0.015
+      h = .03
+      pad = cube(-h,h,-w,w,0,0)
+      #
+      # pin 1
+      #
+      self.shape = translate(pad,-d,.15,0)
+      self.shape = add(self.shape,cylinder(-d-h,.15,0,0,w))
+      self.pad.append(point(-d,.15,0))
+      self.labels.append(self.text(self.pad[-1].x,self.pad[-1].y,self.pad[-1].z,'.VCC'))
+      #
+      # pin 2
+      #
+      self.shape = add(self.shape,translate(pad,-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,'PA4'))
+      #
+      # pin 3
+      #
+      self.shape = add(self.shape,translate(pad,-d,.050,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,'PA5'))
+      #
+      # pin 4
+      #
+      self.shape = add(self.shape,translate(pad,-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,'PA6'))
+      #
+      # pin 5
+      #
+      self.shape = add(self.shape,translate(pad,-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,'PA7'))
+      #
+      # pin 6
+      #
+      self.shape = add(self.shape,translate(pad,-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,'PB3'))
+      #
+      # pin 7
+      #
+      self.shape = add(self.shape,translate(pad,-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,'PB2'))
+      #
+      # pin 8
+      #
+      self.shape = add(self.shape,translate(pad,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,'PB1'))
+      #
+      # pin 9
+      #
+      self.shape = add(self.shape,translate(pad,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,'PB0'))
+      #
+      # pin 10
+      #
+      self.shape = add(self.shape,translate(pad,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,'UPDI'))
+      #
+      # pin 11
+      #
+      self.shape = add(self.shape,translate(pad,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,'PA1'))
+      #
+      # pin 12
+      #
+      self.shape = add(self.shape,translate(pad,d,.050,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,'PA2'))
+      #
+      # pin 13
+      #
+      self.shape = add(self.shape,translate(pad,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,'PA3'))
+      #
+      # pin 14
+      self.shape = add(self.shape,translate(pad,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,'GND'))
+
 class ATtiny1624_TSSOP(part):
    #
-   # ATtiny1624-XUR
+   # ATtiny1624-X
    #
    def __init__(self,value=''):
       self.value = value