diff --git a/kicad/fp-info-cache b/kicad/fp-info-cache
index 573541ac9702dd3969c9bc859d2b91ec1f7e6e56..b52720ec4bc5be8031e742d0d64e56b1944da129 100644
--- a/kicad/fp-info-cache
+++ b/kicad/fp-info-cache
@@ -1 +1,15 @@
+3224911790302
+pmw
+D2F-L2
+
+
 0
+3
+3
+pmw
+PMW3389
+
+
+0
+16
+16
diff --git a/kicad/kicad.pretty/PMW3389.kicad_mod b/kicad/kicad.pretty/PMW3389.kicad_mod
new file mode 100644
index 0000000000000000000000000000000000000000..6305b0b2cd91a748a539a40afc924db4c494e80a
--- /dev/null
+++ b/kicad/kicad.pretty/PMW3389.kicad_mod
@@ -0,0 +1,29 @@
+(module PMW3389 (layer F.Cu) (tedit 6010094D)
+  (fp_text reference REF** (at 2.3 -5.04) (layer F.SilkS)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_text value PMW3389 (at 6.95 -3.64) (layer F.Fab)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_circle (center -1.25 -1.35) (end -1.2 -1.67) (layer F.SilkS) (width 0.12))
+  (fp_line (start 1.05 14.48) (end 1.05 -2.78) (layer Eco1.User) (width 0.12))
+  (fp_line (start 9.65 14.48) (end 1.05 14.48) (layer Eco1.User) (width 0.12))
+  (fp_line (start 9.65 -2.78) (end 9.65 14.48) (layer Eco1.User) (width 0.12))
+  (fp_line (start 1.05 -2.78) (end 9.65 -2.78) (layer Eco1.User) (width 0.12))
+  (pad 16 thru_hole circle (at 10.7 0.89) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 15 thru_hole circle (at 10.7 2.67) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 14 thru_hole circle (at 10.7 4.45) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 13 thru_hole circle (at 10.7 6.23) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 12 thru_hole circle (at 10.7 8.01) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 11 thru_hole circle (at 10.7 9.79) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 10 thru_hole circle (at 10.7 11.57) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 9 thru_hole circle (at 10.7 13.35) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 8 thru_hole circle (at 0 12.46) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 7 thru_hole circle (at 0 10.68) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 6 thru_hole circle (at 0 8.9) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 5 thru_hole circle (at 0 7.12) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 4 thru_hole circle (at 0 5.34) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 3 thru_hole circle (at 0 3.56) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 2 thru_hole circle (at 0 1.78) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+  (pad 1 thru_hole circle (at 0 0) (size 1.524 1.524) (drill 0.762) (layers *.Cu *.Mask))
+)
diff --git a/kicad/mouse-cache.lib b/kicad/mouse-cache.lib
index 942afab6040a81f2d1242c66f36e2f810eb875eb..10a45999add83602fdf8d0aad957160a2143aaaf 100644
--- a/kicad/mouse-cache.lib
+++ b/kicad/mouse-cache.lib
@@ -1,6 +1,35 @@
 EESchema-LIBRARY Version 2.4
 #encoding utf-8
 #
+# Connector_Conn_01x05_Male
+#
+DEF Connector_Conn_01x05_Male J 0 40 Y N 1 F N
+F0 "J" 0 300 50 H V C CNN
+F1 "Connector_Conn_01x05_Male" 0 -300 50 H V C CNN
+F2 "" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+$FPLIST
+ Connector*:*_1x??_*
+$ENDFPLIST
+DRAW
+S 34 -195 0 -205 1 1 6 F
+S 34 -95 0 -105 1 1 6 F
+S 34 5 0 -5 1 1 6 F
+S 34 105 0 95 1 1 6 F
+S 34 205 0 195 1 1 6 F
+P 2 1 1 6 50 -200 34 -200 N
+P 2 1 1 6 50 -100 34 -100 N
+P 2 1 1 6 50 0 34 0 N
+P 2 1 1 6 50 100 34 100 N
+P 2 1 1 6 50 200 34 200 N
+X Pin_1 1 200 200 150 L 50 50 1 1 P
+X Pin_2 2 200 100 150 L 50 50 1 1 P
+X Pin_3 3 200 0 150 L 50 50 1 1 P
+X Pin_4 4 200 -100 150 L 50 50 1 1 P
+X Pin_5 5 200 -200 150 L 50 50 1 1 P
+ENDDRAW
+ENDDEF
+#
 # Connector_Conn_01x06_Male
 #
 DEF Connector_Conn_01x06_Male J 0 40 Y N 1 F N
@@ -50,41 +79,6 @@ X 1 1 0 0 100 U 50 50 1 1 P
 ENDDRAW
 ENDDEF
 #
-# Connector_USB_OTG
-#
-DEF Connector_USB_OTG J 0 40 Y Y 1 F N
-F0 "J" -200 450 50 H V L CNN
-F1 "Connector_USB_OTG" -200 350 50 H V L CNN
-F2 "" 150 -50 50 H I C CNN
-F3 "" 150 -50 50 H I C CNN
-$FPLIST
- USB*
-$ENDFPLIST
-DRAW
-C -150 85 25 0 1 10 F
-C -25 135 15 0 1 10 F
-S -200 -300 200 300 0 1 10 f
-S -5 -300 5 -270 0 1 0 N
-S 10 50 -20 20 0 1 10 F
-S 200 -205 170 -195 0 1 0 N
-S 200 -105 170 -95 0 1 0 N
-S 200 -5 170 5 0 1 0 N
-S 200 195 170 205 0 1 0 N
-P 2 0 1 10 -75 85 25 85 N
-P 4 0 1 10 -125 85 -100 85 -50 135 -25 135 N
-P 4 0 1 10 -100 85 -75 85 -50 35 0 35 N
-P 4 0 1 10 25 110 25 60 75 85 25 110 F
-P 5 0 1 0 -170 220 -70 220 -80 190 -160 190 -170 220 F
-P 9 0 1 0 -185 230 -185 220 -175 190 -175 180 -65 180 -65 190 -55 220 -55 230 -185 230 N
-X VBUS 1 300 200 100 L 50 50 1 1 P
-X D- 2 300 -100 100 L 50 50 1 1 B
-X D+ 3 300 0 100 L 50 50 1 1 B
-X ID 4 300 -200 100 L 50 50 1 1 P
-X GND 5 0 -400 100 U 50 50 1 1 P
-X Shield 6 -100 -400 100 U 50 50 1 1 P
-ENDDRAW
-ENDDEF
-#
 # Device_C_Small
 #
 DEF Device_C_Small C 0 10 N N 1 F N
@@ -325,6 +319,21 @@ X 2 2 200 0 100 L 50 50 0 1 P
 ENDDRAW
 ENDDEF
 #
+# mouse-rescue_+1.9V-power
+#
+DEF mouse-rescue_+1.9V-power #PWR 0 0 Y Y 1 F P
+F0 "#PWR" 0 -150 50 H I C CNN
+F1 "mouse-rescue_+1.9V-power" 0 140 50 H V C CNN
+F2 "" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+DRAW
+P 2 0 1 0 -30 50 0 100 N
+P 2 0 1 0 0 0 0 100 N
+P 2 0 1 0 0 100 30 50 N
+X +1.9V 1 0 0 0 U 50 50 1 1 W N
+ENDDRAW
+ENDDEF
+#
 # mouse_PWM3389
 #
 DEF mouse_PWM3389 U 0 40 Y Y 1 F N
@@ -353,21 +362,6 @@ X MOTION 9 500 -600 100 L 50 50 1 1 O
 ENDDRAW
 ENDDEF
 #
-# power_+1.9V
-#
-DEF power_+1.9V #PWR 0 0 Y Y 1 F P
-F0 "#PWR" 0 -150 50 H I C CNN
-F1 "power_+1.9V" 0 140 50 H V C CNN
-F2 "" 0 0 50 H I C CNN
-F3 "" 0 0 50 H I C CNN
-DRAW
-P 2 0 1 0 -30 50 0 100 N
-P 2 0 1 0 0 0 0 100 N
-P 2 0 1 0 0 100 30 50 N
-X +1.9V 1 0 0 0 U 50 50 1 1 W N
-ENDDRAW
-ENDDEF
-#
 # power_+3.3V
 #
 DEF power_+3.3V #PWR 0 0 Y Y 1 F P
diff --git a/kicad/mouse-rescue.dcm b/kicad/mouse-rescue.dcm
new file mode 100644
index 0000000000000000000000000000000000000000..5f3ed79b79731d3d1ca39cfaa9a2dda60617b802
--- /dev/null
+++ b/kicad/mouse-rescue.dcm
@@ -0,0 +1,3 @@
+EESchema-DOCLIB  Version 2.0
+#
+#End Doc Library
diff --git a/kicad/mouse-rescue.lib b/kicad/mouse-rescue.lib
new file mode 100644
index 0000000000000000000000000000000000000000..dfe455aa7219778486c01c96461d6e2fd70b3263
--- /dev/null
+++ b/kicad/mouse-rescue.lib
@@ -0,0 +1,19 @@
+EESchema-LIBRARY Version 2.4
+#encoding utf-8
+#
+# +1.9V-power
+#
+DEF +1.9V-power #PWR 0 0 Y Y 1 F P
+F0 "#PWR" 0 -150 50 H I C CNN
+F1 "+1.9V-power" 0 140 50 H V C CNN
+F2 "" 0 0 50 H I C CNN
+F3 "" 0 0 50 H I C CNN
+DRAW
+P 2 0 1 0 -30 50 0 100 N
+P 2 0 1 0 0 0 0 100 N
+P 2 0 1 0 0 100 30 50 N
+X +1.9V 1 0 0 0 U 50 50 1 1 W N
+ENDDRAW
+ENDDEF
+#
+#End Library
diff --git a/kicad/mouse.sch b/kicad/mouse.sch
index 23027409f5c478b9896a0ff26de3b6125299b16d..577971812ac69b27d93a9c656c2a2ec770582f4d 100644
--- a/kicad/mouse.sch
+++ b/kicad/mouse.sch
@@ -46,28 +46,16 @@ F 3 "~" H 4450 3450 50  0001 C CNN
 	1    4450 3450
 	0    1    1    0   
 $EndComp
-$Comp
-L Connector:USB_OTG J1
-U 1 1 60099718
-P 1100 1700
-F 0 "J1" H 1157 2167 50  0000 C CNN
-F 1 "USB_OTG" H 1157 2076 50  0000 C CNN
-F 2 "Connector_USB:USB_Mini-B_Tensility_54-00023_Vertical_CircularHoles" H 1250 1650 50  0001 C CNN
-F 3 " ~" H 1250 1650 50  0001 C CNN
-	1    1100 1700
-	1    0    0    -1  
-$EndComp
 NoConn ~ 1400 1900
-NoConn ~ 1000 2100
 $Comp
 L power:GND #PWR0101
 U 1 1 600A3DA1
-P 1100 2100
-F 0 "#PWR0101" H 1100 1850 50  0001 C CNN
-F 1 "GND" H 1105 1927 50  0000 C CNN
-F 2 "" H 1100 2100 50  0001 C CNN
-F 3 "" H 1100 2100 50  0001 C CNN
-	1    1100 2100
+P 1600 1850
+F 0 "#PWR0101" H 1600 1600 50  0001 C CNN
+F 1 "GND" H 1605 1677 50  0000 C CNN
+F 2 "" H 1600 1850 50  0001 C CNN
+F 3 "" H 1600 1850 50  0001 C CNN
+	1    1600 1850
 	1    0    0    -1  
 $EndComp
 $Comp
@@ -785,7 +773,7 @@ Wire Wire Line
 	1350 2950 1350 3150
 Connection ~ 1350 3150
 $Comp
-L power:+1.9V #PWR0122
+L mouse-rescue:+1.9V-power #PWR0122
 U 1 1 600ABFC5
 P 2950 2900
 F 0 "#PWR0122" H 2950 2750 50  0001 C CNN
@@ -826,7 +814,7 @@ Connection ~ 6550 1550
 Wire Wire Line
 	6550 1550 6650 1550
 $Comp
-L power:+1.9V #PWR0123
+L mouse-rescue:+1.9V-power #PWR0123
 U 1 1 60174297
 P 2100 4800
 F 0 "#PWR0123" H 2100 4650 50  0001 C CNN
@@ -889,7 +877,7 @@ Wire Wire Line
 	1750 5850 2100 5850
 Connection ~ 1900 4900
 $Comp
-L power:+1.9V #PWR0125
+L mouse-rescue:+1.9V-power #PWR0125
 U 1 1 60194F8E
 P 3950 5550
 F 0 "#PWR0125" H 3950 5400 50  0001 C CNN
@@ -1098,15 +1086,14 @@ Wire Wire Line
 $Comp
 L Connector:TestPoint TP1
 U 1 1 60220F9F
-P 1100 2100
-F 0 "TP1" V 1054 2288 50  0000 L CNN
-F 1 "TestPoint" V 1145 2288 50  0000 L CNN
-F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 1300 2100 50  0001 C CNN
-F 3 "~" H 1300 2100 50  0001 C CNN
-	1    1100 2100
+P 1600 1850
+F 0 "TP1" V 1554 2038 50  0000 L CNN
+F 1 "TestPoint" V 1645 2038 50  0000 L CNN
+F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 1800 1850 50  0001 C CNN
+F 3 "~" H 1800 1850 50  0001 C CNN
+	1    1600 1850
 	0    1    1    0   
 $EndComp
-Connection ~ 1100 2100
 $Comp
 L Connector:TestPoint TP7
 U 1 1 6024C051
@@ -1208,8 +1195,6 @@ F 3 "~" H 4750 3600 50  0001 C CNN
 	1    4550 3600
 	-1   0    0    1   
 $EndComp
-Text GLabel 6350 5200 2    50   Output ~ 0
-SCLK
 Text GLabel 2900 6150 2    50   Input ~ 0
 SCLK
 Text GLabel 2900 6050 2    50   Input ~ 0
@@ -1218,7 +1203,7 @@ Text GLabel 3400 5950 2    50   Output ~ 0
 MISO
 Text GLabel 2100 6150 0    50   Input ~ 0
 NRST
-Text GLabel 6350 5100 2    50   Output ~ 0
+Text GLabel 6350 3800 2    50   Output ~ 0
 NCS
 Text GLabel 2900 5850 2    50   Input ~ 0
 NCS
@@ -1265,10 +1250,10 @@ D-
 Text Notes 3100 4350 0    50   ~ 0
 C1 = C2 = 2 x (Cload – Cstray)\n=2(18-6)=24pF~=22pF
 Connection ~ 4100 1450
-Wire Wire Line
-	1400 1800 1600 1800
 Wire Wire Line
 	1400 1700 1600 1700
+Wire Wire Line
+	1400 1600 1600 1600
 Wire Wire Line
 	1550 1400 1700 1400
 Connection ~ 1550 1400
@@ -1283,7 +1268,6 @@ NoConn ~ 6350 3000
 NoConn ~ 6350 3100
 NoConn ~ 6350 3200
 NoConn ~ 6350 3300
-NoConn ~ 6350 3800
 NoConn ~ 6350 4000
 NoConn ~ 6350 4100
 NoConn ~ 6350 4200
@@ -1296,22 +1280,13 @@ NoConn ~ 6350 4900
 NoConn ~ 4950 5400
 NoConn ~ 4950 5300
 NoConn ~ 4950 5200
-NoConn ~ 4950 5100
-NoConn ~ 4950 5000
-NoConn ~ 4950 4900
 NoConn ~ 4950 4800
 NoConn ~ 4950 4700
-NoConn ~ 4950 4600
-NoConn ~ 4950 4500
 NoConn ~ 4950 4400
 NoConn ~ 4950 4300
 NoConn ~ 4950 4000
 NoConn ~ 4950 3900
 NoConn ~ 4950 3700
-Text GLabel 6350 5300 2    50   Input ~ 0
-MISO
-Text GLabel 6350 5400 2    50   Output ~ 0
-MOSI
 $Comp
 L Device:LED D3
 U 1 1 6012FA47
@@ -1428,11 +1403,233 @@ Wire Wire Line
 Wire Wire Line
 	5550 1550 5550 2100
 NoConn ~ 2900 6250
-Text GLabel 1600 1800 2    50   BiDi ~ 0
-D-
 Text GLabel 1600 1700 2    50   BiDi ~ 0
+D-
+Text GLabel 1600 1600 2    50   BiDi ~ 0
 D+
 NoConn ~ 6350 5000
 NoConn ~ 4950 4200
 NoConn ~ 4950 4100
+$Comp
+L Connector:Conn_01x05_Male J?
+U 1 1 601D4B07
+P 8300 5300
+F 0 "J?" H 8408 5681 50  0000 C CNN
+F 1 "Conn_01x05_Male" H 8408 5590 50  0000 C CNN
+F 2 "" H 8300 5300 50  0001 C CNN
+F 3 "~" H 8300 5300 50  0001 C CNN
+	1    8300 5300
+	1    0    0    -1  
+$EndComp
+$Comp
+L Connector:Conn_01x05_Male J?
+U 1 1 601F6908
+P 1200 1700
+F 0 "J?" H 1308 2081 50  0000 C CNN
+F 1 "Conn_01x05_Male" H 1308 1990 50  0000 C CNN
+F 2 "" H 1200 1700 50  0001 C CNN
+F 3 "~" H 1200 1700 50  0001 C CNN
+	1    1200 1700
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	1400 1800 1600 1800
+Wire Wire Line
+	1600 1800 1600 1850
+Connection ~ 1600 1850
+$Comp
+L Switch:SW_Push SW?
+U 1 1 6023EAD9
+P 9850 5150
+F 0 "SW?" V 9804 5298 50  0000 L CNN
+F 1 "SW_Push" V 9895 5298 50  0000 L CNN
+F 2 "pmw:D2F-L2" H 9850 5350 50  0001 C CNN
+F 3 "~" H 9850 5350 50  0001 C CNN
+	1    9850 5150
+	0    1    1    0   
+$EndComp
+$Comp
+L Device:C_Small C?
+U 1 1 6023EAE1
+P 10450 5150
+F 0 "C?" H 10542 5196 50  0000 L CNN
+F 1 "100n" H 10542 5105 50  0000 L CNN
+F 2 "Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder" H 10450 5150 50  0001 C CNN
+F 3 "~" H 10450 5150 50  0001 C CNN
+	1    10450 5150
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 5050 10450 4950
+Wire Wire Line
+	10450 4950 9850 4950
+$Comp
+L power:GND #PWR0141
+U 1 1 6023EAEA
+P 10450 5600
+F 0 "#PWR0141" H 10450 5350 50  0001 C CNN
+F 1 "GND" H 10455 5427 50  0000 C CNN
+F 2 "" H 10450 5600 50  0001 C CNN
+F 3 "" H 10450 5600 50  0001 C CNN
+	1    10450 5600
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 5600 10450 5250
+$Comp
+L power:GND #PWR0142
+U 1 1 6023EAF1
+P 9850 5600
+F 0 "#PWR0142" H 9850 5350 50  0001 C CNN
+F 1 "GND" H 9855 5427 50  0000 C CNN
+F 2 "" H 9850 5600 50  0001 C CNN
+F 3 "" H 9850 5600 50  0001 C CNN
+	1    9850 5600
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	9850 5600 9850 5350
+$Comp
+L Connector:TestPoint TP?
+U 1 1 6023EAF8
+P 9850 5600
+F 0 "TP?" V 9804 5788 50  0000 L CNN
+F 1 "TestPoint" V 9895 5788 50  0000 L CNN
+F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 10050 5600 50  0001 C CNN
+F 3 "~" H 10050 5600 50  0001 C CNN
+	1    9850 5600
+	0    1    1    0   
+$EndComp
+Connection ~ 9850 5600
+$Comp
+L Switch:SW_Push SW?
+U 1 1 60249EA2
+P 9850 3850
+F 0 "SW?" V 9804 3998 50  0000 L CNN
+F 1 "SW_Push" V 9895 3998 50  0000 L CNN
+F 2 "pmw:D2F-L2" H 9850 4050 50  0001 C CNN
+F 3 "~" H 9850 4050 50  0001 C CNN
+	1    9850 3850
+	0    1    1    0   
+$EndComp
+$Comp
+L Device:C_Small C?
+U 1 1 60249EAA
+P 10450 3850
+F 0 "C?" H 10542 3896 50  0000 L CNN
+F 1 "100n" H 10542 3805 50  0000 L CNN
+F 2 "Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder" H 10450 3850 50  0001 C CNN
+F 3 "~" H 10450 3850 50  0001 C CNN
+	1    10450 3850
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 3750 10450 3650
+Wire Wire Line
+	10450 3650 9850 3650
+$Comp
+L power:GND #PWR0143
+U 1 1 60249EB3
+P 10450 4300
+F 0 "#PWR0143" H 10450 4050 50  0001 C CNN
+F 1 "GND" H 10455 4127 50  0000 C CNN
+F 2 "" H 10450 4300 50  0001 C CNN
+F 3 "" H 10450 4300 50  0001 C CNN
+	1    10450 4300
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 4300 10450 3950
+$Comp
+L power:GND #PWR0144
+U 1 1 60249EBA
+P 9850 4300
+F 0 "#PWR0144" H 9850 4050 50  0001 C CNN
+F 1 "GND" H 9855 4127 50  0000 C CNN
+F 2 "" H 9850 4300 50  0001 C CNN
+F 3 "" H 9850 4300 50  0001 C CNN
+	1    9850 4300
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	9850 4300 9850 4050
+$Comp
+L Connector:TestPoint TP?
+U 1 1 60249EC1
+P 9850 4300
+F 0 "TP?" V 9804 4488 50  0000 L CNN
+F 1 "TestPoint" V 9895 4488 50  0000 L CNN
+F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 10050 4300 50  0001 C CNN
+F 3 "~" H 10050 4300 50  0001 C CNN
+	1    9850 4300
+	0    1    1    0   
+$EndComp
+Connection ~ 9850 4300
+Text GLabel 9600 3650 0    50   Output ~ 0
+M1
+Wire Wire Line
+	9600 3650 9850 3650
+Connection ~ 9850 3650
+Text GLabel 9600 4950 0    50   Output ~ 0
+M2
+Wire Wire Line
+	9600 4950 9850 4950
+Text GLabel 8150 5100 0    50   Input ~ 0
+M4
+Text GLabel 8150 5200 0    50   Input ~ 0
+M5
+Text GLabel 8150 5300 0    50   Input ~ 0
+DPI1
+Text GLabel 8150 5400 0    50   Input ~ 0
+DPI2
+$Comp
+L power:GND #PWR?
+U 1 1 60314C59
+P 8150 5550
+F 0 "#PWR?" H 8150 5300 50  0001 C CNN
+F 1 "GND" H 8155 5377 50  0000 C CNN
+F 2 "" H 8150 5550 50  0001 C CNN
+F 3 "" H 8150 5550 50  0001 C CNN
+	1    8150 5550
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	8150 5500 8150 5550
+Connection ~ 9850 4950
+Wire Wire Line
+	8150 5100 8300 5100
+Wire Wire Line
+	8150 5200 8300 5200
+Wire Wire Line
+	8150 5300 8300 5300
+Wire Wire Line
+	8150 5400 8300 5400
+Wire Wire Line
+	8150 5500 8300 5500
+Text GLabel 4950 4900 0    50   Input ~ 0
+SCLK
+Text GLabel 4950 5100 0    50   Output ~ 0
+MOSI
+Text GLabel 4950 5000 0    50   Input ~ 0
+MISO
+Text GLabel 4950 4600 0    50   Input ~ 0
+M2
+Text GLabel 4950 4500 0    50   Input ~ 0
+M1
+Text GLabel 6500 5400 2    50   Input ~ 0
+M4
+Text GLabel 6500 5300 2    50   Input ~ 0
+M5
+Text GLabel 6500 5200 2    50   Input ~ 0
+DPI1
+Text GLabel 6500 5100 2    50   Input ~ 0
+DPI2
+Wire Wire Line
+	6500 5400 6350 5400
+Wire Wire Line
+	6500 5300 6350 5300
+Wire Wire Line
+	6500 5200 6350 5200
+Wire Wire Line
+	6500 5100 6350 5100
 $EndSCHEMATC
diff --git a/kicad/mouse.sch-bak b/kicad/mouse.sch-bak
index 8543293973294baa47ffbe13e409cec9d6a70585..3396296168d3eaa06a74cd968ca9c812a3b0e742 100644
--- a/kicad/mouse.sch-bak
+++ b/kicad/mouse.sch-bak
@@ -49,25 +49,24 @@ $EndComp
 $Comp
 L Connector:USB_OTG J1
 U 1 1 60099718
-P 1100 1700
-F 0 "J1" H 1157 2167 50  0000 C CNN
-F 1 "USB_OTG" H 1157 2076 50  0000 C CNN
-F 2 "Connector_JST:JST_XH_B5B-XH-A_1x05_P2.50mm_Vertical" H 1250 1650 50  0001 C CNN
-F 3 " ~" H 1250 1650 50  0001 C CNN
-	1    1100 1700
+P 700 1000
+F 0 "J1" H 757 1467 50  0000 C CNN
+F 1 "USB_OTG" H 757 1376 50  0000 C CNN
+F 2 "Connector_USB:USB_Mini-B_Tensility_54-00023_Vertical_CircularHoles" H 850 950 50  0001 C CNN
+F 3 " ~" H 850 950 50  0001 C CNN
+	1    700  1000
 	1    0    0    -1  
 $EndComp
 NoConn ~ 1400 1900
-NoConn ~ 1000 2100
 $Comp
 L power:GND #PWR0101
 U 1 1 600A3DA1
-P 1100 2100
-F 0 "#PWR0101" H 1100 1850 50  0001 C CNN
-F 1 "GND" H 1105 1927 50  0000 C CNN
-F 2 "" H 1100 2100 50  0001 C CNN
-F 3 "" H 1100 2100 50  0001 C CNN
-	1    1100 2100
+P 1600 1850
+F 0 "#PWR0101" H 1600 1600 50  0001 C CNN
+F 1 "GND" H 1605 1677 50  0000 C CNN
+F 2 "" H 1600 1850 50  0001 C CNN
+F 3 "" H 1600 1850 50  0001 C CNN
+	1    1600 1850
 	1    0    0    -1  
 $EndComp
 $Comp
@@ -785,7 +784,7 @@ Wire Wire Line
 	1350 2950 1350 3150
 Connection ~ 1350 3150
 $Comp
-L power:+1.9V #PWR0122
+L mouse-rescue:+1.9V-power #PWR0122
 U 1 1 600ABFC5
 P 2950 2900
 F 0 "#PWR0122" H 2950 2750 50  0001 C CNN
@@ -826,7 +825,7 @@ Connection ~ 6550 1550
 Wire Wire Line
 	6550 1550 6650 1550
 $Comp
-L power:+1.9V #PWR0123
+L mouse-rescue:+1.9V-power #PWR0123
 U 1 1 60174297
 P 2100 4800
 F 0 "#PWR0123" H 2100 4650 50  0001 C CNN
@@ -889,7 +888,7 @@ Wire Wire Line
 	1750 5850 2100 5850
 Connection ~ 1900 4900
 $Comp
-L power:+1.9V #PWR0125
+L mouse-rescue:+1.9V-power #PWR0125
 U 1 1 60194F8E
 P 3950 5550
 F 0 "#PWR0125" H 3950 5400 50  0001 C CNN
@@ -1098,15 +1097,14 @@ Wire Wire Line
 $Comp
 L Connector:TestPoint TP1
 U 1 1 60220F9F
-P 1100 2100
-F 0 "TP1" V 1054 2288 50  0000 L CNN
-F 1 "TestPoint" V 1145 2288 50  0000 L CNN
-F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 1300 2100 50  0001 C CNN
-F 3 "~" H 1300 2100 50  0001 C CNN
-	1    1100 2100
+P 1600 1850
+F 0 "TP1" V 1554 2038 50  0000 L CNN
+F 1 "TestPoint" V 1645 2038 50  0000 L CNN
+F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 1800 1850 50  0001 C CNN
+F 3 "~" H 1800 1850 50  0001 C CNN
+	1    1600 1850
 	0    1    1    0   
 $EndComp
-Connection ~ 1100 2100
 $Comp
 L Connector:TestPoint TP7
 U 1 1 6024C051
@@ -1208,8 +1206,6 @@ F 3 "~" H 4750 3600 50  0001 C CNN
 	1    4550 3600
 	-1   0    0    1   
 $EndComp
-Text GLabel 6350 5200 2    50   Output ~ 0
-SCLK
 Text GLabel 2900 6150 2    50   Input ~ 0
 SCLK
 Text GLabel 2900 6050 2    50   Input ~ 0
@@ -1218,7 +1214,7 @@ Text GLabel 3400 5950 2    50   Output ~ 0
 MISO
 Text GLabel 2100 6150 0    50   Input ~ 0
 NRST
-Text GLabel 6350 5100 2    50   Output ~ 0
+Text GLabel 6350 3800 2    50   Output ~ 0
 NCS
 Text GLabel 2900 5850 2    50   Input ~ 0
 NCS
@@ -1265,10 +1261,10 @@ D-
 Text Notes 3100 4350 0    50   ~ 0
 C1 = C2 = 2 x (Cload – Cstray)\n=2(18-6)=24pF~=22pF
 Connection ~ 4100 1450
-Wire Wire Line
-	1400 1800 1600 1800
 Wire Wire Line
 	1400 1700 1600 1700
+Wire Wire Line
+	1400 1600 1600 1600
 Wire Wire Line
 	1550 1400 1700 1400
 Connection ~ 1550 1400
@@ -1283,7 +1279,6 @@ NoConn ~ 6350 3000
 NoConn ~ 6350 3100
 NoConn ~ 6350 3200
 NoConn ~ 6350 3300
-NoConn ~ 6350 3800
 NoConn ~ 6350 4000
 NoConn ~ 6350 4100
 NoConn ~ 6350 4200
@@ -1296,22 +1291,13 @@ NoConn ~ 6350 4900
 NoConn ~ 4950 5400
 NoConn ~ 4950 5300
 NoConn ~ 4950 5200
-NoConn ~ 4950 5100
-NoConn ~ 4950 5000
-NoConn ~ 4950 4900
 NoConn ~ 4950 4800
 NoConn ~ 4950 4700
-NoConn ~ 4950 4600
-NoConn ~ 4950 4500
 NoConn ~ 4950 4400
 NoConn ~ 4950 4300
 NoConn ~ 4950 4000
 NoConn ~ 4950 3900
 NoConn ~ 4950 3700
-Text GLabel 6350 5300 2    50   Input ~ 0
-MISO
-Text GLabel 6350 5400 2    50   Output ~ 0
-MOSI
 $Comp
 L Device:LED D3
 U 1 1 6012FA47
@@ -1428,11 +1414,233 @@ Wire Wire Line
 Wire Wire Line
 	5550 1550 5550 2100
 NoConn ~ 2900 6250
-Text GLabel 1600 1800 2    50   BiDi ~ 0
-D-
 Text GLabel 1600 1700 2    50   BiDi ~ 0
+D-
+Text GLabel 1600 1600 2    50   BiDi ~ 0
 D+
 NoConn ~ 6350 5000
 NoConn ~ 4950 4200
 NoConn ~ 4950 4100
+$Comp
+L Connector:Conn_01x05_Male J?
+U 1 1 601D4B07
+P 8300 5300
+F 0 "J?" H 8408 5681 50  0000 C CNN
+F 1 "Conn_01x05_Male" H 8408 5590 50  0000 C CNN
+F 2 "" H 8300 5300 50  0001 C CNN
+F 3 "~" H 8300 5300 50  0001 C CNN
+	1    8300 5300
+	1    0    0    -1  
+$EndComp
+$Comp
+L Connector:Conn_01x05_Male J?
+U 1 1 601F6908
+P 1200 1700
+F 0 "J?" H 1308 2081 50  0000 C CNN
+F 1 "Conn_01x05_Male" H 1308 1990 50  0000 C CNN
+F 2 "" H 1200 1700 50  0001 C CNN
+F 3 "~" H 1200 1700 50  0001 C CNN
+	1    1200 1700
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	1400 1800 1600 1800
+Wire Wire Line
+	1600 1800 1600 1850
+Connection ~ 1600 1850
+$Comp
+L Switch:SW_Push SW?
+U 1 1 6023EAD9
+P 9850 5150
+F 0 "SW?" V 9804 5298 50  0000 L CNN
+F 1 "SW_Push" V 9895 5298 50  0000 L CNN
+F 2 "pmw:D2F-L2" H 9850 5350 50  0001 C CNN
+F 3 "~" H 9850 5350 50  0001 C CNN
+	1    9850 5150
+	0    1    1    0   
+$EndComp
+$Comp
+L Device:C_Small C?
+U 1 1 6023EAE1
+P 10450 5150
+F 0 "C?" H 10542 5196 50  0000 L CNN
+F 1 "100n" H 10542 5105 50  0000 L CNN
+F 2 "Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder" H 10450 5150 50  0001 C CNN
+F 3 "~" H 10450 5150 50  0001 C CNN
+	1    10450 5150
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 5050 10450 4950
+Wire Wire Line
+	10450 4950 9850 4950
+$Comp
+L power:GND #PWR0141
+U 1 1 6023EAEA
+P 10450 5600
+F 0 "#PWR0141" H 10450 5350 50  0001 C CNN
+F 1 "GND" H 10455 5427 50  0000 C CNN
+F 2 "" H 10450 5600 50  0001 C CNN
+F 3 "" H 10450 5600 50  0001 C CNN
+	1    10450 5600
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 5600 10450 5250
+$Comp
+L power:GND #PWR0142
+U 1 1 6023EAF1
+P 9850 5600
+F 0 "#PWR0142" H 9850 5350 50  0001 C CNN
+F 1 "GND" H 9855 5427 50  0000 C CNN
+F 2 "" H 9850 5600 50  0001 C CNN
+F 3 "" H 9850 5600 50  0001 C CNN
+	1    9850 5600
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	9850 5600 9850 5350
+$Comp
+L Connector:TestPoint TP?
+U 1 1 6023EAF8
+P 9850 5600
+F 0 "TP?" V 9804 5788 50  0000 L CNN
+F 1 "TestPoint" V 9895 5788 50  0000 L CNN
+F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 10050 5600 50  0001 C CNN
+F 3 "~" H 10050 5600 50  0001 C CNN
+	1    9850 5600
+	0    1    1    0   
+$EndComp
+Connection ~ 9850 5600
+$Comp
+L Switch:SW_Push SW?
+U 1 1 60249EA2
+P 9850 3850
+F 0 "SW?" V 9804 3998 50  0000 L CNN
+F 1 "SW_Push" V 9895 3998 50  0000 L CNN
+F 2 "pmw:D2F-L2" H 9850 4050 50  0001 C CNN
+F 3 "~" H 9850 4050 50  0001 C CNN
+	1    9850 3850
+	0    1    1    0   
+$EndComp
+$Comp
+L Device:C_Small C?
+U 1 1 60249EAA
+P 10450 3850
+F 0 "C?" H 10542 3896 50  0000 L CNN
+F 1 "100n" H 10542 3805 50  0000 L CNN
+F 2 "Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder" H 10450 3850 50  0001 C CNN
+F 3 "~" H 10450 3850 50  0001 C CNN
+	1    10450 3850
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 3750 10450 3650
+Wire Wire Line
+	10450 3650 9850 3650
+$Comp
+L power:GND #PWR0143
+U 1 1 60249EB3
+P 10450 4300
+F 0 "#PWR0143" H 10450 4050 50  0001 C CNN
+F 1 "GND" H 10455 4127 50  0000 C CNN
+F 2 "" H 10450 4300 50  0001 C CNN
+F 3 "" H 10450 4300 50  0001 C CNN
+	1    10450 4300
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	10450 4300 10450 3950
+$Comp
+L power:GND #PWR0144
+U 1 1 60249EBA
+P 9850 4300
+F 0 "#PWR0144" H 9850 4050 50  0001 C CNN
+F 1 "GND" H 9855 4127 50  0000 C CNN
+F 2 "" H 9850 4300 50  0001 C CNN
+F 3 "" H 9850 4300 50  0001 C CNN
+	1    9850 4300
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	9850 4300 9850 4050
+$Comp
+L Connector:TestPoint TP?
+U 1 1 60249EC1
+P 9850 4300
+F 0 "TP?" V 9804 4488 50  0000 L CNN
+F 1 "TestPoint" V 9895 4488 50  0000 L CNN
+F 2 "Connector_PinHeader_1.00mm:PinHeader_1x01_P1.00mm_Vertical" H 10050 4300 50  0001 C CNN
+F 3 "~" H 10050 4300 50  0001 C CNN
+	1    9850 4300
+	0    1    1    0   
+$EndComp
+Connection ~ 9850 4300
+Text GLabel 9600 3650 0    50   Output ~ 0
+M1
+Wire Wire Line
+	9600 3650 9850 3650
+Connection ~ 9850 3650
+Text GLabel 9600 4950 0    50   Output ~ 0
+M2
+Wire Wire Line
+	9600 4950 9850 4950
+Text GLabel 8150 5100 0    50   Input ~ 0
+M4
+Text GLabel 8150 5200 0    50   Input ~ 0
+M5
+Text GLabel 8150 5300 0    50   Input ~ 0
+DPI1
+Text GLabel 8150 5400 0    50   Input ~ 0
+DPI2
+$Comp
+L power:GND #PWR?
+U 1 1 60314C59
+P 8150 5550
+F 0 "#PWR?" H 8150 5300 50  0001 C CNN
+F 1 "GND" H 8155 5377 50  0000 C CNN
+F 2 "" H 8150 5550 50  0001 C CNN
+F 3 "" H 8150 5550 50  0001 C CNN
+	1    8150 5550
+	1    0    0    -1  
+$EndComp
+Wire Wire Line
+	8150 5500 8150 5550
+Connection ~ 9850 4950
+Wire Wire Line
+	8150 5100 8300 5100
+Wire Wire Line
+	8150 5200 8300 5200
+Wire Wire Line
+	8150 5300 8300 5300
+Wire Wire Line
+	8150 5400 8300 5400
+Wire Wire Line
+	8150 5500 8300 5500
+Text GLabel 4950 4900 0    50   Input ~ 0
+SCLK
+Text GLabel 4950 5100 0    50   Output ~ 0
+MOSI
+Text GLabel 4950 5000 0    50   Input ~ 0
+MISO
+Text GLabel 4950 4600 0    50   Input ~ 0
+M2
+Text GLabel 4950 4500 0    50   Input ~ 0
+M1
+Text GLabel 6500 5400 2    50   Input ~ 0
+M4
+Text GLabel 6500 5300 2    50   Input ~ 0
+M5
+Text GLabel 6500 5200 2    50   Input ~ 0
+DPI1
+Text GLabel 6500 5100 2    50   Input ~ 0
+DPI2
+Wire Wire Line
+	6500 5400 6350 5400
+Wire Wire Line
+	6500 5300 6350 5300
+Wire Wire Line
+	6500 5200 6350 5200
+Wire Wire Line
+	6500 5100 6350 5100
 $EndSCHEMATC
diff --git a/kicad/pmw.pretty/D2F-L2.kicad_mod b/kicad/pmw.pretty/D2F-L2.kicad_mod
new file mode 100644
index 0000000000000000000000000000000000000000..5be49b52cd55f4c29ae23474b48afabefd2fae2f
--- /dev/null
+++ b/kicad/pmw.pretty/D2F-L2.kicad_mod
@@ -0,0 +1,20 @@
+(module D2F-L2 (layer F.Cu) (tedit 601C2DCA)
+  (fp_text reference U3 (at 0 -8.05) (layer F.SilkS)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_text value kill_switch (at 0 0) (layer B.Fab)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_circle (center -3.25 -4.2) (end -2.25 -4.2) (layer F.SilkS) (width 0.12))
+  (fp_circle (center 3.25 -4.2) (end 4.25 -4.2) (layer F.SilkS) (width 0.12))
+  (fp_line (start -6.4 -9.2) (end -6.4 -2.7) (layer F.SilkS) (width 0.12))
+  (fp_line (start 6.4 -2.7) (end -6.4 -2.7) (layer F.SilkS) (width 0.12))
+  (fp_line (start 6.4 -2.7) (end 6.4 -9.2) (layer F.SilkS) (width 0.12))
+  (fp_line (start -6.4 -9.2) (end 6.4 -9.2) (layer F.SilkS) (width 0.12))
+  (fp_line (start 5.1 0) (end 5.1 -2.6) (layer F.SilkS) (width 0.12))
+  (fp_line (start 0 0) (end 0 -2.6) (layer F.SilkS) (width 0.12))
+  (fp_line (start -5.1 0) (end -5.1 -2.6) (layer F.SilkS) (width 0.12))
+  (pad 1 thru_hole circle (at -5.08 0) (size 1.524 1.524) (drill 1.2) (layers *.Cu *.Mask))
+  (pad 2 thru_hole circle (at 0 0) (size 1.524 1.524) (drill 1.2) (layers *.Cu *.Mask))
+  (pad 3 thru_hole circle (at 5.08 0) (size 1.524 1.524) (drill 1.2) (layers *.Cu *.Mask))
+)
diff --git a/kicad/sym-lib-table b/kicad/sym-lib-table
index 2eea4c2d2f7a13be08804e2bfb45021fa3d3a6f8..69ee55d97edf903638a62795b0dd622a39ad633a 100644
--- a/kicad/sym-lib-table
+++ b/kicad/sym-lib-table
@@ -1,3 +1,4 @@
 (sym_lib_table
   (lib (name mouse)(type Legacy)(uri ${KIPRJMOD}/mouse.lib)(options "")(descr ""))
+  (lib (name mouse-rescue)(type Legacy)(uri ${KIPRJMOD}/mouse-rescue.lib)(options "")(descr ""))
 )