Compare commits
14 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
491d85156c | ||
|
c89ce6843f | ||
|
1915dae034 | ||
|
05e8055ce2 | ||
|
21822b9abb | ||
|
d83d4b89bf | ||
|
613152f589 | ||
|
d90c00d140 | ||
|
b52ca9589a | ||
|
0d024060fc | ||
|
c4fe1d1098 | ||
|
812fbc106c | ||
|
dd38fa6e5d | ||
|
22b7aa956c |
BIN
libtest.png
Before Width: | Height: | Size: 875 KiB After Width: | Height: | Size: 882 KiB |
31
readme.md
@@ -288,6 +288,8 @@ Models of radial blowers.
|
||||
| `blower_screw_holes(type)` | List of XY coordinates of the screw holes |
|
||||
| `blower_top(type)` | Thickness of the top |
|
||||
| `blower_wall(type)` | Side wall thickness |
|
||||
| `blower_wall_left(type)` | Left side wall thickness |
|
||||
| `blower_wall_right(type)` | Right wall thickness (for square fans) |
|
||||
| `blower_width(type)` | Width of enclosing rectangle |
|
||||
|
||||
### Functions
|
||||
@@ -311,10 +313,12 @@ Models of radial blowers.
|
||||
| 1 | `blower(PE4020)` | Blower Pengda Technology 4020 |
|
||||
| 1 | `blower(RB5015)` | Blower Runda RB5015 |
|
||||
| 4 | `screw(M2_cap_screw, 8)` | Screw M2 cap x 8mm |
|
||||
| 2 | `screw(M2_cap_screw, 10)` | Screw M2 cap x 10mm |
|
||||
| 3 | `screw(M3_cap_screw, 20)` | Screw M3 cap x 20mm |
|
||||
| 2 | `screw(M4_cap_screw, 25)` | Screw M4 cap x 25mm |
|
||||
| 1 | `blower(BL30x10)` | Square radial fan 3010 |
|
||||
| 1 | `blower(BL40x10)` | Square radial fan 4010 |
|
||||
| 4 | `washer(M2_washer)` | Washer M2 x 5mm x 0.3mm |
|
||||
| 6 | `washer(M2_washer)` | Washer M2 x 5mm x 0.3mm |
|
||||
| 3 | `washer(M3_washer)` | Washer M3 x 7mm x 0.5mm |
|
||||
| 2 | `washer(M4_washer)` | Washer M4 x 9mm x 0.8mm |
|
||||
|
||||
@@ -2311,6 +2315,7 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
|
||||
| ---:|:--- |:---|
|
||||
| 1 | `pcb(ArduinoLeonardo)` | Arduino Leonardo |
|
||||
| 1 | `pcb(ArduinoUno3)` | Arduino Uno R3 |
|
||||
| 1 | `pcb(BTT_SKR_E3_TURBO)` | BigTreeTech SKR E3 Turbo |
|
||||
| 1 | `pcb(BTT_SKR_MINI_E3_V2_0)` | BigTreeTech SKR Mini E3 v2.0 |
|
||||
| 1 | `pcb(BTT_SKR_V1_4_TURBO)` | BigTreeTech SKR v1.4 Turbo |
|
||||
| 1 | | Cat 5 patch cable 300mm |
|
||||
@@ -2321,7 +2326,7 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
|
||||
| 1 | `pcb(ESP-01)` | ESP-01 |
|
||||
| 1 | `pcb(EnviroPlus)` | Enviro+ |
|
||||
| 1 | `pcb(ExtruderPCB)` | Extruder connection PCB |
|
||||
| 1 | `pcb(Keyes5p1)` | Keyes5.1 Arduino Uno expansion board |
|
||||
| 1 | `pcb(Keyes5p1)` | Keyes5.1 Arduino Uno expansion board - not shown |
|
||||
| 1 | `pcb(MP1584EN)` | MP1584EN 3A buck converter |
|
||||
| 1 | `pcb(MT3608)` | MT3608 boost converter module |
|
||||
| 1 | `pcb(Melzi)` | Melzi electronics - not shown |
|
||||
@@ -2330,8 +2335,8 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
|
||||
| 1 | `molex_254(2)` | Molex KK header 2 way |
|
||||
| 1 | `molex_254(3)` | Molex KK header 3 way |
|
||||
| 16 | `nut(M2_nut, nyloc = true)` | Nut M2 x 1.6mm nyloc |
|
||||
| 34 | `nut(M2p5_nut, nyloc = true)` | Nut M2.5 x 2.2mm nyloc |
|
||||
| 17 | `nut(M3_nut, nyloc = true)` | Nut M3 x 2.4mm nyloc |
|
||||
| 30 | `nut(M2p5_nut, nyloc = true)` | Nut M2.5 x 2.2mm nyloc |
|
||||
| 22 | `nut(M3_nut, nyloc = true)` | Nut M3 x 2.4mm nyloc |
|
||||
| 8 | `nut(M4_nut, nyloc = true)` | Nut M4 x 3.2mm nyloc |
|
||||
| 1 | `pcb(PI_IO)` | PI_IO V2 |
|
||||
| 1 | `pcb(PSU12V1A)` | PSU 12V 1A - not shown |
|
||||
@@ -2351,9 +2356,8 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
|
||||
| 8 | `screw(M2p5_cap_screw, 25)` | Screw M2.5 cap x 25mm |
|
||||
| 8 | `screw(M2p5_cap_screw, 30)` | Screw M2.5 cap x 30mm |
|
||||
| 12 | `screw(M2p5_pan_screw, 25)` | Screw M2.5 pan x 25mm |
|
||||
| 4 | `screw(M2p5_pan_screw, 30)` | Screw M2.5 pan x 30mm |
|
||||
| 4 | `screw(M3_cap_screw, 16)` | Screw M3 cap x 16mm |
|
||||
| 4 | `screw(M3_cap_screw, 30)` | Screw M3 cap x 30mm |
|
||||
| 9 | `screw(M3_cap_screw, 30)` | Screw M3 cap x 30mm |
|
||||
| 9 | `screw(M3_cap_screw, 35)` | Screw M3 cap x 35mm |
|
||||
| 8 | `screw(M4_cap_screw, 35)` | Screw M4 cap x 35mm |
|
||||
| 1 | `pcb(TP4056)` | TP4056 Li-lon Battery charger module |
|
||||
@@ -2362,8 +2366,8 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
|
||||
| 1 | | USB A to Mini B lead - not shown |
|
||||
| 1 | `pcb(WD2002SJ)` | WD2002SJ Buck Boost DC-DC converter |
|
||||
| 16 | `washer(M2_washer)` | Washer M2 x 5mm x 0.3mm |
|
||||
| 34 | `washer(M2p5_washer)` | Washer M2.5 x 5.9mm x 0.5mm |
|
||||
| 17 | `washer(M3_washer)` | Washer M3 x 7mm x 0.5mm |
|
||||
| 30 | `washer(M2p5_washer)` | Washer M2.5 x 5.9mm x 0.5mm |
|
||||
| 22 | `washer(M3_washer)` | Washer M3 x 7mm x 0.5mm |
|
||||
| 8 | `washer(M4_washer)` | Washer M4 x 9mm x 0.8mm |
|
||||
| 1 | `pcb(ZC_A0591)` | ZC-A0591 ULN2003 driver PCB |
|
||||
|
||||
@@ -2379,11 +2383,11 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
|
||||
| 4 | pcb_spacer25140.stl |
|
||||
| 4 | pcb_spacer25150_2.stl |
|
||||
| 4 | pcb_spacer25160_2.stl |
|
||||
| 4 | pcb_spacer25170_2.stl |
|
||||
| 4 | pcb_spacer25180.stl |
|
||||
| 4 | pcb_spacer25190.stl |
|
||||
| 4 | pcb_spacer25200.stl |
|
||||
| 2 | pcb_spacer2580.stl |
|
||||
| 4 | pcb_spacer30180.stl |
|
||||
| 4 | pcb_spacer30170.stl |
|
||||
| 5 | pcb_spacer30200.stl |
|
||||
| 5 | pcb_spacer30210.stl |
|
||||
| 4 | pcb_spacer30220.stl |
|
||||
| 4 | pcb_spacer3050.stl |
|
||||
@@ -6232,9 +6236,10 @@ Rectangle with rounded corners.
|
||||
### Modules
|
||||
| Module | Description |
|
||||
|:--- |:--- |
|
||||
| `rounded_cube_xy(size, r = 0, xy_center = false, z_center = false)` | Like `cube()` but corners rounded in XY plane and separate centre options for xy and z. |
|
||||
| `rounded_cube_xz(size, r = 0, xy_center = false, z_center = false)` | Like `cube()` but corners rounded in XZ plane and separate centre options for xy and z. |
|
||||
| `rounded_cube_yz(size, r = 0, xy_center = false, z_center = false)` | Like `cube()` but corners rounded in YX plane and separate centre options for xy and z. |
|
||||
| `rounded_rectangle(size, r, center = true, xy_center = true)` | Like `cube()` but corners rounded in XY plane and separate centre options for xy and z. |
|
||||
| `rounded_rectangle_xz(size, r, center = true, xy_center = true)` | Like `cube()` but corners rounded in XZ plane and separate centre options for xy and z. |
|
||||
| `rounded_rectangle_yz(size, r, center = true, xy_center = true)` | Like `cube()` but corners rounded in YX plane and separate centre options for xy and z. |
|
||||
| `rounded_square(size, r, center = true)` | Like `square()` but with with rounded corners |
|
||||
|
||||

|
||||
|
@@ -22,7 +22,7 @@ use <../utils/layout.scad>
|
||||
include <../vitamins/blowers.scad>
|
||||
|
||||
module blowers()
|
||||
layout([for(b = blowers) blower_width(b)], 10, true) let(b = blowers[$i]){
|
||||
layout([for(b = blowers) blower_width(b)], 5, true) let(b = blowers[$i]){
|
||||
screw = blower_screw(b);
|
||||
h = blower_lug(b);
|
||||
|
||||
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 153 KiB After Width: | Height: | Size: 153 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 39 KiB |
@@ -27,10 +27,13 @@ module rounded_rectangles() {
|
||||
rounded_rectangle([30, 20, 10], 3);
|
||||
|
||||
translate([80, 0])
|
||||
rounded_rectangle_xz([30, 20, 10], 3);
|
||||
rounded_cube_xy([30, 20, 10], 3);
|
||||
|
||||
translate([120, 0])
|
||||
rounded_rectangle_yz([30, 20, 10], 3);
|
||||
rounded_cube_xz([30, 20, 10], 3);
|
||||
|
||||
translate([160, 0])
|
||||
rounded_cube_yz([30, 20, 10], 3);
|
||||
}
|
||||
|
||||
rounded_rectangles();
|
||||
|
@@ -22,26 +22,33 @@
|
||||
//
|
||||
module rounded_square(size, r, center = true) //! Like `square()` but with with rounded corners
|
||||
{
|
||||
assert(r < min(size.x, size.y) / 2);
|
||||
$fn = r2sides4n(r);
|
||||
offset(r) offset(-r) square(size, center = center);
|
||||
}
|
||||
|
||||
module rounded_rectangle(size, r, center = true, xy_center = true) //! Like `cube()` but corners rounded in XY plane and separate centre options for xy and z.
|
||||
{
|
||||
linear_extrude(size.z, center = center)
|
||||
extrude_if(size.z, center = center)
|
||||
rounded_square([size.x, size.y], r, xy_center);
|
||||
}
|
||||
|
||||
module rounded_rectangle_xz(size, r, center = true, xy_center = true) //! Like `cube()` but corners rounded in XZ plane and separate centre options for xy and z.
|
||||
module rounded_cube_xy(size, r = 0, xy_center = false, z_center = false) //! Like `cube()` but corners rounded in XY plane and separate centre options for xy and z.
|
||||
{
|
||||
translate([xy_center ? 0 : size.x / 2, xy_center ? 0 : size.y / 2, center ? 0 : size.z / 2])
|
||||
rotate([90, 0, 0])
|
||||
rounded_rectangle([size.x, size.z, size.y], r, center = true, xy_center = true);
|
||||
extrude_if(size.z, center = z_center)
|
||||
rounded_square([size.x, size.y], r, xy_center);
|
||||
}
|
||||
|
||||
module rounded_rectangle_yz(size, r, center = true, xy_center = true) //! Like `cube()` but corners rounded in YX plane and separate centre options for xy and z.
|
||||
module rounded_cube_xz(size, r = 0, xy_center = false, z_center = false) //! Like `cube()` but corners rounded in XZ plane and separate centre options for xy and z.
|
||||
{
|
||||
translate([xy_center ? 0 : size.x / 2, xy_center ? 0 : size.y / 2, center ? 0 : size.z / 2])
|
||||
rotate([90, 0, 90])
|
||||
rounded_rectangle([size.y, size.z, size.x], r, center = true, xy_center = true);
|
||||
translate([xy_center ? 0 : size.x / 2, xy_center ? 0 : size.y / 2, z_center ? 0 : size.z / 2])
|
||||
rotate([90, 0, 0])
|
||||
rounded_cube_xy([size.x, size.z, size.y], r, xy_center = true, z_center = true);
|
||||
}
|
||||
|
||||
module rounded_cube_yz(size, r = 0, xy_center = false, z_center = false) //! Like `cube()` but corners rounded in YX plane and separate centre options for xy and z.
|
||||
{
|
||||
translate([xy_center ? 0 : size.x / 2, xy_center ? 0 : size.y / 2, z_center ? 0 : size.z / 2])
|
||||
rotate([90, 0, 90])
|
||||
rounded_cube_xy([size.y, size.z, size.x], r, xy_center = true, z_center = true);
|
||||
}
|
||||
|
@@ -40,8 +40,10 @@ function blower_base(type) = type[13]; //! Thickness of the base
|
||||
function blower_top(type) = type[14]; //! Thickness of the top
|
||||
function blower_wall(type) = type[15]; //! Side wall thickness
|
||||
function blower_lug(type) = type[16]; //! Height of the lugs
|
||||
function blower_wall_left(type) = type[15]; //! Left side wall thickness
|
||||
function blower_wall_right(type) = type[17]; //! Right wall thickness (for square fans)
|
||||
|
||||
function blower_casing_is_square(type) = len(blower_screw_holes(type)) > 3; //! True for square radial fans, false for spiral shape radial blowers
|
||||
function blower_casing_is_square(type) = blower_depth(type) < 15; //! True for square radial fans, false for spiral shape radial blowers
|
||||
function blower_exit_offset(type) = blower_casing_is_square(type) ? blower_length(type) / 2 : blower_exit(type) / 2; //! Offset of exit's centre from the edge
|
||||
|
||||
fan_colour = grey(20);
|
||||
@@ -74,41 +76,54 @@ module blower_fan(type, casing_is_square) {
|
||||
module blower_square(type) { //! Draw a square blower
|
||||
width = blower_width(type);
|
||||
depth = blower_depth(type);
|
||||
wall = blower_wall(type);
|
||||
wall_left = blower_wall_left(type);
|
||||
wall_right = blower_wall_right(type);
|
||||
hole_count = len(blower_screw_holes(type));
|
||||
hole_pitch = (blower_screw_holes(type)[1].x - blower_screw_holes(type)[0].x) / 2;
|
||||
corner_radius = width / 2 - hole_pitch;
|
||||
corner_inset = (width - blower_exit(type)) / 2;
|
||||
corner_inset = (width - blower_exit(type) - wall_left - wall_right) / (hole_count == 2 ? 1 : 2);
|
||||
|
||||
module inset_corners()
|
||||
translate([width / 2, width / 2])
|
||||
for(i = hole_count == 2 ? [1, 3] : [0 : 3])
|
||||
rotate(i * 90)
|
||||
translate([-width / 2 - eps, -width/ 2 - eps])
|
||||
quadrant(corner_inset, corner_inset - corner_radius);
|
||||
|
||||
module square_inset_corners(remove_center = false)
|
||||
difference() {
|
||||
//overall outside
|
||||
square([width, width], center = false);
|
||||
rounded_square([width, width], corner_radius, center = false);
|
||||
|
||||
if (remove_center) {
|
||||
// cut out the inside, leaving the corners
|
||||
translate([corner_inset + wall, -eps])
|
||||
square([width - 2 * (wall + corner_inset), width - wall + eps], center = false);
|
||||
|
||||
translate([wall, corner_inset + wall])
|
||||
square([width - 2 * wall, width - 2 * (wall + corner_inset)], center = false);
|
||||
translate([hole_count == 2 ? wall_left : corner_inset + wall_left, -eps])
|
||||
square([blower_exit(type), width / 2], center = false);
|
||||
translate(blower_axis(type))
|
||||
circle(d = blower_bore(type) + 1);
|
||||
} else {
|
||||
// cut out the bore for the fan
|
||||
translate(blower_axis(type))
|
||||
circle(d = blower_bore(type));
|
||||
}
|
||||
// corner inset
|
||||
translate([width / 2, width / 2])
|
||||
for(i = [0 : 3])
|
||||
rotate(i * 90)
|
||||
translate([-width / 2 - eps, -width/ 2 - eps])
|
||||
quadrant(corner_inset, corner_inset - corner_radius);
|
||||
inset_corners();
|
||||
}
|
||||
|
||||
base_height = blower_base(type);
|
||||
linear_extrude(base_height)
|
||||
difference () {
|
||||
rounded_square([width, width], corner_radius, center = false);
|
||||
blower_hole_positions(type)
|
||||
circle(d = blower_screw_hole(type));
|
||||
}
|
||||
|
||||
// add the lugs which may be higher than the base
|
||||
linear_extrude(blower_lug(type))
|
||||
difference () {
|
||||
intersection() {
|
||||
rounded_square([width, width], corner_radius, center = false);
|
||||
inset_corners();
|
||||
}
|
||||
blower_hole_positions(type)
|
||||
circle(d = blower_screw_hole(type));
|
||||
}
|
||||
|
@@ -24,8 +24,9 @@
|
||||
// h h s t t
|
||||
RB5015 = ["RB5015", "Blower Runda RB5015", 51.3, 51, 15, 31.5, M4_cap_screw, 26, [27.3, 25.4], 4.5, [[4.3, 45.4], [47.3,7.4]], 20, 14, 1.5, 1.3, 1.2, 15];
|
||||
PE4020 = ["PE4020", "Blower Pengda Technology 4020", 40, 40, 20, 27.5, M3_cap_screw, 22, [21.5, 20 ], 3.2, [[37,3],[3,37],[37,37]], 29.3, 17, 1.7, 1.2, 1.3, 13];
|
||||
BL40x10 =["BL40x10","Square radial fan 4010", 40, 40,9.5, 27, M2_cap_screw, 16, [24, 20 ], 2.4, [[2,2],[38,2],[2,38],[38,38]], 30 , 9.5, 1.5, 1.5, 1.1, 1.5];
|
||||
BL30x10 =["BL30x10","Square radial fan 3010", 30, 30,10.1,25, M2_cap_screw, 16, [16, 15 ], 2.4, [[3,27],[27,3]], 21.2, 9.5, 1.1, 1.2, 2.5, 2.8, 0.9];
|
||||
BL40x10 =["BL40x10","Square radial fan 4010", 40, 40,9.5, 27, M2_cap_screw, 16, [24, 20 ], 2.4, [[2,2],[38,2],[2,38],[38,38]], 27.8, 9.5, 1.5, 1.5, 1.1, 1.5, 1.1];
|
||||
|
||||
blowers = [BL40x10, PE4020, RB5015];
|
||||
blowers = [BL30x10, BL40x10, PE4020, RB5015];
|
||||
|
||||
use <blower.scad>
|
||||
|
@@ -292,6 +292,99 @@ BTT_SKR_MINI_E3_V2_0 = [
|
||||
[] // accessories
|
||||
];
|
||||
|
||||
BTT_SKR_E3_TURBO = [
|
||||
"BTT_SKR_E3_TURBO", "BigTreeTech SKR E3 Turbo",
|
||||
102, 90.25, 1.6, // size
|
||||
1, // corner radius
|
||||
3.5, // mounting hole diameter
|
||||
5, // pad around mounting hole
|
||||
grey(30), // color
|
||||
false, // true if parts should be separate BOM items
|
||||
[ // hole positions
|
||||
for ( i=[ [0, 0], [62.15, 0.25] ])
|
||||
(i + [21.6, -13.3]),
|
||||
for( i=[ [0, -34.98 ], [31.80, -37.62 ], [95.68, -64.47] ])
|
||||
(i + [3.75, -13.25])
|
||||
],
|
||||
[ // components
|
||||
// cpu
|
||||
[ 62.8, 42.5, 0, "chip", 14, 14, 1, grey(15) ],
|
||||
// driver chips
|
||||
for (x = [8.5, 27.5, 43.2, 58.5, 74])
|
||||
[x, -20, 0, "chip", 5, 5, 1, grey(15)],
|
||||
// mock up heat sinks over the chips
|
||||
for (x = [8.5, 27.5, 43.2, 58.5, 74])
|
||||
[x, -20, 0, "chip", 9, 8.5, 2, "DeepSkyBlue" ],
|
||||
for (x = [8.5, 27.5, 43.2, 58.5, 74], y = [-4,-2,0,2,4])
|
||||
[x, -20 + y, 0, "chip", 9, 0.75, 11, "DeepSkyBlue" ],
|
||||
// heat dissipation for drivers under board
|
||||
[ 43, -21, 0, "-block", 85, 8, 0.1, gold ],
|
||||
// hotend and heated bed
|
||||
[ 25.5, 20, 0, "chip", 10, 8.5, 4, grey(15) ],
|
||||
[ 25.5, 20, 0, "-block", 11, 11, 0.1, gold ],
|
||||
[ 36.25, 16.75, 0, "chip", 6.5, 6, 2.5, grey(15) ],
|
||||
[ 36.25, 17, 0, "-block", 7.5, 7.5, 0.1, gold ],
|
||||
[ 44.25, 16.75, 0, "chip", 6.5, 6, 2.5, grey(15) ],
|
||||
[ 44.25, 17, 0, "-block", 7.5, 7.5, 0.1, gold ],
|
||||
// voltage regulator
|
||||
[ 15.1, 44.2, 0, "chip", 4, 5, 2, grey(15) ],
|
||||
[ 12.1, 44.2, 0, "-block", 10, 10, 0.1, gold ],
|
||||
|
||||
// terminals
|
||||
[ 5.25, 5.3, 180, "gterm", gt_5x17, 2, undef, grey(20) ],
|
||||
[ 16.25, 5.4, -90, "gterm", gt_5x17, 2, undef, grey(20) ],
|
||||
[ 26.25, 5.4, -90, "gterm", gt_5x17, 2, undef, grey(20) ],
|
||||
[ 36.1, 6.7, -90, "gterm", gt_5x11, 2, undef, "lightgreen" ],
|
||||
[ 45.0, 6.7, -90, "gterm", gt_5x11, 2, undef, "lightgreen" ],
|
||||
[ -3, -(32.27 + 39.92)/2, 0, "usb_uA" ],
|
||||
[ -8, -(12.13 + 27.17)/2, 0, "uSD", [17.17 - 2.13, 16, 2] ],
|
||||
[ -22.2, 51.6, 0, "button_6mm" ],
|
||||
// EXP
|
||||
[ -4.45, 27.2, -90, "2p54boxhdr", 5, 2 ],
|
||||
// AUX-2
|
||||
[ -3.4, 42.5, -90, "2p54header", 4, 2 ],
|
||||
// TFT
|
||||
[ 73.7, 21, 0, "2p54header", 5, 1 ],
|
||||
// FAN0
|
||||
[ 52.1, 15.3, 180, "jst_xh", 2, false, grey(20) ],
|
||||
// FAN1
|
||||
[ 60.1, 15.3, 180, "jst_xh", 2, false, grey(20) ],
|
||||
// PS-ON
|
||||
[ 67.9, 15.3, 180, "jst_xh", 2, false, grey(20) ],
|
||||
// E0-STOP
|
||||
[ 77.1, 15.3, 180, "jst_xh", 3, false, grey(20) ],
|
||||
// E1-STOP
|
||||
[ 87.5, 15.3, 180, "jst_xh", 3, false, grey(20) ],
|
||||
// Z-PROBE
|
||||
[ 85.05, 34.6, 180, "jst_xh", 5, false, grey(20) ],
|
||||
// NEO Pixel
|
||||
[ 77, 26.8, 180, "jst_xh", 3, false, grey(20) ],
|
||||
// PWR-DET
|
||||
[ 87.7, 26.8, 180, "jst_xh", 3, false, grey(20) ],
|
||||
// FAN2
|
||||
[ 52.1, 3.8, 0, "2p54header", 1, 2],
|
||||
// end stops and thermistors
|
||||
for (x = [58.5 : 7.9 : 98.1])
|
||||
[x, 3.7, 180, "jst_xh", 2, false, grey(20)],
|
||||
// motor connections
|
||||
for (x = [7, 27.1, 47.3, 67.5, 87.9])
|
||||
[x, -3.9, 0, "jst_xh", 4, false, grey(20)],
|
||||
[47.3, -10.4, 0, "jst_xh", 4, false, grey(20)], // second Z connector
|
||||
// motor jumpers
|
||||
for (x = [9.4, 26.4, 42.5, 58.7, 75.3])
|
||||
[x, -33.7, 0, "2p54header", 2, 1],
|
||||
// SWD
|
||||
[ 45.4, 35.7, 0, "2p54header", 5, 1 ],
|
||||
// USB power jumber
|
||||
[ -12.6, 40.3, 0, "2p54header", 3, 1 ],
|
||||
// VOUT
|
||||
[ -13.9, 44.5, 0, "2p54header", 2, 2 ],
|
||||
// VIN
|
||||
[ 18.6, 29.8, 0, "2p54header", 2, 2 ],
|
||||
],
|
||||
[] // accessories
|
||||
];
|
||||
|
||||
TMC2130 = [
|
||||
"TMC2130", "TMC2130",
|
||||
20, 14, 1.6, // size
|
||||
@@ -654,9 +747,9 @@ ESP_01 = [
|
||||
[] // accessories
|
||||
];
|
||||
|
||||
pcbs = [MP1584EN, TP4056, ESP_01, RAMPSEndstop, MT3608, PI_IO, ExtruderPCB, ZC_A0591, RPI0, EnviroPlus, ArduinoUno3, ArduinoLeonardo, Keyes5p1, WD2002SJ, RPI3, RPI4, BTT_SKR_MINI_E3_V2_0, BTT_SKR_V1_4_TURBO, DuetE, Duex5];
|
||||
pcbs = [MP1584EN, TP4056, ESP_01, RAMPSEndstop, MT3608, PI_IO, ExtruderPCB, ZC_A0591, RPI0, EnviroPlus, ArduinoUno3, ArduinoLeonardo, WD2002SJ, RPI3, RPI4, BTT_SKR_MINI_E3_V2_0, BTT_SKR_E3_TURBO, BTT_SKR_V1_4_TURBO, DuetE, Duex5];
|
||||
|
||||
pcbs_not_shown = [Melzi, Duex2, PSU12V1A];
|
||||
pcbs_not_shown = [Melzi, Duex2, PSU12V1A, Keyes5p1];
|
||||
|
||||
perfboards = [PERF74x51, PERF70x50, PERF60x40, PERF70x30, PERF80x20];
|
||||
|
||||
|