diff --git a/libtest.png b/libtest.png
index 97d9d7d..1a43167 100644
Binary files a/libtest.png and b/libtest.png differ
diff --git a/libtest.scad b/libtest.scad
index f923465..b8b1b6b 100644
--- a/libtest.scad
+++ b/libtest.scad
@@ -171,8 +171,8 @@ hot_ends_y = pulleys_y + 60;
linear_bearings_y = hot_ends_y + 50;
sheets_y = linear_bearings_y + 100;
pcbs_y = sheets_y + 40;
-displays_y = pcbs_y + 150;
-fans_y = displays_y + 100;
+displays_y = pcbs_y + 170;
+fans_y = displays_y + 80;
transformers_y = fans_y + 120;
psus_y = transformers_y + 190;
@@ -380,7 +380,7 @@ translate([x4 + 150, belts_y + 58]) {
translate([x4, rails_y + 130])
rails();
-translate([800, fans_y])
+translate([800, fans_y + 50])
cable_strips();
translate([x4, kp_pillow_blocks_y])
diff --git a/readme.md b/readme.md
index 2f860f4..1b4d5f4 100644
--- a/readme.md
+++ b/readme.md
@@ -2033,6 +2033,7 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
| 1 | ```pcb(EnviroPlus)``` | Enviro+ |
| 1 | ```pcb(ExtruderPCB)``` | Extruder connection PCB |
| 1 | ```pcb(Keyes5p1)``` | Keyes5.1 Arduino Uno expansion board |
+| 1 | ```pcb(MT3608)``` | MT3608 boost converter module |
| 1 | ```pcb(Melzi)``` | Melzi electronics |
| 4 | | Micro SD card |
| 1 | ```molex_254(2)``` | Molex KK header 2 way |
@@ -2052,15 +2053,20 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
| 1 | ```pcb(RAMPSEndstop)``` | RAMPS Endstop Switch |
| 1 | ```pcb(RPI3)``` | Raspberry Pi 3 |
| 1 | ```pcb(RPI0)``` | Raspberry Pi Zero |
-| 16 | ```screw(M2_cap_screw, 25)``` | Screw M2 cap x 25mm |
+| 12 | ```screw(M2_cap_screw, 16)``` | Screw M2 cap x 16mm |
+| 4 | ```screw(M2_cap_screw, 20)``` | Screw M2 cap x 20mm |
| 2 | ```screw(M2p5_cap_screw, 16)``` | Screw M2.5 cap x 16mm |
-| 12 | ```screw(M2p5_cap_screw, 20)``` | Screw M2.5 cap x 20mm |
+| 4 | ```screw(M2p5_cap_screw, 20)``` | Screw M2.5 cap x 20mm |
+| 4 | ```screw(M2p5_cap_screw, 25)``` | Screw M2.5 cap x 25mm |
+| 4 | ```screw(M2p5_cap_screw, 30)``` | Screw M2.5 cap x 30mm |
| 4 | ```screw(M2p5_pan_screw, 20)``` | Screw M2.5 pan x 20mm |
-| 8 | ```screw(M2p5_pan_screw, 25)``` | Screw M2.5 pan x 25mm |
-| 4 | ```screw(M2p5_pan_screw, 35)``` | Screw M2.5 pan x 35mm |
-| 8 | ```screw(M3_cap_screw, 30)``` | Screw M3 cap x 30mm |
+| 12 | ```screw(M2p5_pan_screw, 25)``` | Screw M2.5 pan x 25mm |
+| 4 | ```screw(M3_cap_screw, 16)``` | Screw M3 cap x 16mm |
+| 4 | ```screw(M3_cap_screw, 30)``` | Screw M3 cap x 30mm |
| 4 | ```screw(M3_cap_screw, 35)``` | Screw M3 cap x 35mm |
-| 12 | ```screw(M4_cap_screw, 35)``` | Screw M4 cap x 35mm |
+| 8 | ```screw(M4_cap_screw, 30)``` | Screw M4 cap x 30mm |
+| 4 | ```screw(M4_cap_screw, 35)``` | Screw M4 cap x 35mm |
+| 1 | ```pcb(TP4056)``` | TP4056 Li-lon Battery charger module |
| 3 | ```terminal_35(2)``` | Terminal block 2 way 3.5mm |
| 2 | ```green_terminal(gt_2p54, 4)``` | Terminal block 4 way 0.1" |
| 1 | | USB A to Mini B lead |
@@ -2073,24 +2079,24 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
### Printed
| Qty | Filename |
| ---:|:--- |
-| 4 | pcb_spacer20140.stl |
-| 4 | pcb_spacer20150.stl |
-| 4 | pcb_spacer20160.stl |
-| 4 | pcb_spacer20170.stl |
+| 4 | pcb_spacer2060.stl |
+| 4 | pcb_spacer2070.stl |
+| 4 | pcb_spacer2080.stl |
+| 4 | pcb_spacer2090.stl |
| 4 | pcb_spacer25100.stl |
-| 4 | pcb_spacer25110_2.stl |
-| 4 | pcb_spacer25120_2.stl |
+| 4 | pcb_spacer25110.stl |
+| 4 | pcb_spacer25120.stl |
| 4 | pcb_spacer25130_2.stl |
-| 4 | pcb_spacer25240.stl |
-| 2 | pcb_spacer2550.stl |
-| 4 | pcb_spacer2580.stl |
-| 4 | pcb_spacer2590.stl |
-| 4 | pcb_spacer30180.stl |
-| 4 | pcb_spacer30190.stl |
-| 4 | pcb_spacer30230.stl |
+| 4 | pcb_spacer25140_2.stl |
+| 4 | pcb_spacer25150_2.stl |
+| 4 | pcb_spacer25170.stl |
+| 2 | pcb_spacer2570.stl |
+| 4 | pcb_spacer30160.stl |
+| 4 | pcb_spacer30210.stl |
+| 4 | pcb_spacer3050.stl |
+| 4 | pcb_spacer40180.stl |
+| 4 | pcb_spacer40190.stl |
| 4 | pcb_spacer40200.stl |
-| 4 | pcb_spacer40210.stl |
-| 4 | pcb_spacer40220.stl |
Top
diff --git a/tests/PCBs.scad b/tests/PCBs.scad
index 7493ad9..ce09067 100644
--- a/tests/PCBs.scad
+++ b/tests/PCBs.scad
@@ -21,11 +21,16 @@ include <../vitamins/pcbs.scad>
use <../utils/layout.scad>
-module pcbs()
+module pcbs() {
layout([for(p = pcbs) pcb_width(p)], 10)
translate([0, pcb_length(pcbs[$i]) / 2])
rotate(90)
pcb_assembly(pcbs[$i], 5 + $i, 3);
+ translate([0, 120])
+ layout([for(p = perfboards) pcb_length(p)], 10)
+ translate([0, -pcb_width(perfboards[$i]) / 2])
+ pcb_assembly(perfboards[$i], 5 + $i, 3);
+}
if($preview)
pcbs();
diff --git a/tests/png/pcbs.png b/tests/png/pcbs.png
index cabdb16..eaa22e7 100644
Binary files a/tests/png/pcbs.png and b/tests/png/pcbs.png differ
diff --git a/vitamins/pcbs.scad b/vitamins/pcbs.scad
index 23c9922..4af9b2a 100644
--- a/vitamins/pcbs.scad
+++ b/vitamins/pcbs.scad
@@ -327,6 +327,16 @@ ZC_A0591 = ["ZC_A0591", "ZC-A0591 ULN2003 driver PCB", 35, 32, 1.6, 0, 2.5, 0, "
[], [], [], [], M2p5_pan_screw];
+MT3608 = ["MT3608", "MT3608 boost converter module", 37, 17, 1.2, 2, 1.5, [5, 3], "#2140BE", false, [[3.0725, 5.095], [3.0725, -5.095], [-3.0725, 5.095], [-3.0725, -5.095]],
+ [ [-12.05 , -6.8, 180, "trimpot10"]
+ ]];
+
+TP4056 = ["TP4056", "TP4056 Li-lon Battery charger module", 26.2, 17.5, 1.0, 0, 1.0, [2.4, 2.4], "#2140BE", false,
+ [[1.67, 1.8], [1.67, -1.8], [-1.67, 1.8], [-1.67, -1.8], [-1.67, -4.98], [-1.67, 4.98]],
+ [ [ 2, 17.5 / 2, 180, "usb_uA"],
+
+ ]];
+
PERF80x20 = ["PERF80x20", "Perfboard 80 x 20mm", 80, 20, 1.6, 0, 2.3, 0, "green", true, [[2,2],[-2,2],[2,-2],[-2,-2]], [], [], [5.87, 3.49]];
PERF70x50 = ["PERF70x50", "Perfboard 70 x 50mm", 70, 50, 1.6, 0, 2.3, 0, "green", true, [[2,2],[-2,2],[2,-2],[-2,-2]], [], [], [5.87, 3.49]];
@@ -352,6 +362,8 @@ RAMPSEndstop = ["RAMPSEndstop", "RAMPS Endstop Switch",
[]];
-pcbs = [RAMPSEndstop, ExtruderPCB, PI_IO, RPI0, EnviroPlus, RPI3, ArduinoUno3, ArduinoLeonardo, Keyes5p1, PERF80x20, PERF70x50, PERF70x30, PERF60x40, PERF74x51, PSU12V1A, DuetE, Duex2, Duex5, Melzi, ZC_A0591];
+pcbs = [TP4056, MT3608, RAMPSEndstop, ExtruderPCB, PI_IO, ZC_A0591, RPI0, EnviroPlus, ArduinoUno3, ArduinoLeonardo, Keyes5p1, PSU12V1A, RPI3, DuetE, Duex2, Duex5, Melzi];
+
+perfboards = [PERF74x51, PERF70x50, PERF60x40, PERF70x30, PERF80x20];
use