diff --git a/fab.dcm b/fab.dcm
index 7e6fe47b77c64deb26de96d45a8f0fdbe2c71974..fed4260ba9e2f82db510db041fbeb13568c9ce47 100644
--- a/fab.dcm
+++ b/fab.dcm
@@ -14,7 +14,7 @@ $ENDCMP
 #
 $CMP BUTTON_B3SN
 D Push button switch, Omron B3SN, Sealed Tactile Switch (SMT), SPST-NO Top Actuated Surface Mount
-K switch normally-open pushbutton push-button button tactile spst single pole throw
+K switch normally-open pushbutton push-button button tactile spst single pole single throw
 F https://omronfs.omron.com/en_US/ecb/products/pdf/en-b3sn.pdf
 $ENDCMP
 #
@@ -121,6 +121,12 @@ K single opamp zero-drift
 F http://www.ti.com/lit/ds/symlink/opa188.pdf
 $ENDCMP
 #
+$CMP Motor_Driver_A5940
+D Three Phase Sensorless Sinusoidal Fan Driver, Allegro A5940GLKTR-T
+K h-bridge half-bridge half bridge motor driver bldc brushless DC
+F https://www.allegromicro.com/-/media/Files/Datasheets/A5940-Datasheet.ashx
+$ENDCMP
+#
 $CMP OPAMP_AD8605
 D General Purpose Amplifier 1 Circuit Rail-to-Rail SOT-23-5
 K single opamp SOT-23-5
diff --git a/fab.lib b/fab.lib
index d14ebb0c0dee5364c1c729d77ff9fd389307c1f8..46b256c43d6731b45bcc7a50461526937af98f78 100644
--- a/fab.lib
+++ b/fab.lib
@@ -1519,6 +1519,33 @@ X SHIELD 9 800 -600 150 L 50 50 1 1 P
 ENDDRAW
 ENDDEF
 #
+# Motor_Driver_A5940
+#
+DEF Motor_Driver_A5940 U 0 40 Y Y 1 F N
+F0 "U" -300 450 50 H V L CNN
+F1 "Motor_Driver_A5940" 0 450 50 H V L CNN
+F2 "fab:10-SOIC-EP_3.9x4.9mm_P1mm_EP2.41x3.3mm" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+$FPLIST
+ *10-SOIC*
+ *SOIC-10*
+$ENDFPLIST
+DRAW
+S -300 400 300 -400 0 1 10 f
+X PWM 1 -400 300 100 R 50 50 1 1 I
+X SOFTST 10 400 300 100 L 50 50 1 1 I
+X PAD 11 0 -500 100 U 50 50 1 1 W
+X FG 2 -400 150 100 R 50 50 1 1 O
+X VBB 3 -400 0 100 R 50 50 1 1 W
+X OUTA 4 -400 -150 100 R 50 50 1 1 O
+X OUTB 5 -400 -300 100 R 50 50 1 1 O
+X GND 6 400 -300 100 L 50 50 1 1 W
+X OUTC 7 400 -150 100 L 50 50 1 1 O
+X VREF 8 400 0 100 L 50 50 1 1 O
+X MINSPD 9 400 150 100 L 50 50 1 1 I
+ENDDRAW
+ENDDEF
+#
 # NRF24L01+
 #
 DEF NRF24L01+ M 0 40 Y Y 1 L N
diff --git a/fab.pretty/10-SOIC-EP_3.9x4.9mm_P1mm_EP2.41x3.3mm.kicad_mod b/fab.pretty/10-SOIC-EP_3.9x4.9mm_P1mm_EP2.41x3.3mm.kicad_mod
new file mode 100644
index 0000000000000000000000000000000000000000..8a1fa8bae0901d5acdf6970dd2dd3aa29aa86aca
--- /dev/null
+++ b/fab.pretty/10-SOIC-EP_3.9x4.9mm_P1mm_EP2.41x3.3mm.kicad_mod
@@ -0,0 +1,36 @@
+(module 10-SOIC-EP_3.9x4.9mm_P1mm_EP2.41x3.3mm (layer F.Cu) (tedit 5EC6D30D)
+  (descr "SOIC, 8 Pin, fab version")
+  (tags "SOIC fab")
+  (attr smd)
+  (fp_text reference REF** (at 0 -3.4) (layer F.SilkS)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_text value Val** (at 0 0) (layer F.SilkS)
+    (effects (font (size 1.27 1.27) (thickness 0.15)))
+  )
+  (fp_line (start -1.95 -1.475) (end -0.975 -2.45) (layer F.Fab) (width 0.1))
+  (fp_line (start -1.95 2.45) (end -1.95 -1.475) (layer F.Fab) (width 0.1))
+  (fp_line (start 1.95 2.45) (end -1.95 2.45) (layer F.Fab) (width 0.1))
+  (fp_line (start 1.95 -2.45) (end 1.95 2.45) (layer F.Fab) (width 0.1))
+  (fp_line (start -0.975 -2.45) (end 1.95 -2.45) (layer F.Fab) (width 0.1))
+  (fp_line (start 0 -2.56) (end -3.45 -2.56) (layer F.SilkS) (width 0.12))
+  (fp_line (start 0 -2.56) (end 1.95 -2.56) (layer F.SilkS) (width 0.12))
+  (fp_line (start 0 2.56) (end -1.95 2.56) (layer F.SilkS) (width 0.12))
+  (fp_line (start 0 2.56) (end 1.95 2.56) (layer F.SilkS) (width 0.12))
+  (pad 8 smd rect (at 2.475 0) (size 2 0.6) (layers F.Cu))
+  (pad 7 smd rect (at 2.475 1) (size 2 0.6) (layers F.Cu))
+  (pad 6 smd rect (at 2.475 2) (size 2 0.6) (layers F.Cu))
+  (pad 5 smd rect (at -2.475 2) (size 2 0.6) (layers F.Cu))
+  (pad 4 smd rect (at -2.475 1) (size 2 0.6) (layers F.Cu))
+  (pad 3 smd rect (at -2.475 0) (size 2 0.6) (layers F.Cu))
+  (pad 2 smd rect (at -2.475 -1) (size 2 0.6) (layers F.Cu))
+  (pad 1 smd rect (at -2.475 -2) (size 2 0.6) (layers F.Cu))
+  (pad 9 smd rect (at 2.475 -1) (size 2 0.6) (layers F.Cu))
+  (pad 10 smd rect (at 2.475 -2) (size 2 0.6) (layers F.Cu))
+  (pad 11 smd rect (at 0 0) (size 2 3.3) (layers F.Cu))
+  (model ${KISYS3DMOD}/Package_SO.3dshapes/SOIC-8_3.9x4.9mm_P1.27mm.wrl
+    (at (xyz 0 0 0))
+    (scale (xyz 1 1 1))
+    (rotate (xyz 0 0 0))
+  )
+)