Compare commits
No commits in common. "2bd01a1ff2d30ca3cff647bbf3b80645437cc07c" and "4675f71e05fc19d3608ee6e5061bbe79ae432fb7" have entirely different histories.
2bd01a1ff2
...
4675f71e05
6 changed files with 0 additions and 31933 deletions
|
|
@ -1,393 +0,0 @@
|
||||||
/* [Default values] */
|
|
||||||
// Line segments for circles
|
|
||||||
FN = 60; // [1:1:360]
|
|
||||||
// Unit size (mm)
|
|
||||||
U = 44.45;
|
|
||||||
// Horizontal pitch size (mm)
|
|
||||||
HP = 5.075; // 5.07 for a little bit of margin
|
|
||||||
// Futura Light typeface for labels
|
|
||||||
default_label_font = "Futura Md BT:style=Medium";
|
|
||||||
font_for_title = "QuentinEF:style=Medium";
|
|
||||||
title_font_size = 12;
|
|
||||||
label_font_size = 5;
|
|
||||||
|
|
||||||
$fn=FN;
|
|
||||||
footprint_depth = .25; //non-printing, barely-visible outline of component footprints
|
|
||||||
|
|
||||||
|
|
||||||
/* [Panel] */
|
|
||||||
// Height of module (mm) - Would not change this if you are using Eurorack
|
|
||||||
height = 128.5; // A little less then 3U
|
|
||||||
// Thickness of module (mm) - Would not change this if you are using Eurorack
|
|
||||||
thickness = 2; // Website specifies a thickness of 2mm - but adjust to fit printer specs - often the first layer will be thinner than this
|
|
||||||
printer_z_fix = 0.25; // this gets added to the base panel's thickness to account for squishing
|
|
||||||
tolerance = 0.25;
|
|
||||||
|
|
||||||
// for inset labels, translating to this height controls label depth
|
|
||||||
label_inset_height = thickness-1;
|
|
||||||
|
|
||||||
// Width of module (HP)
|
|
||||||
width = 12; // [1:1:84]
|
|
||||||
|
|
||||||
/* [Holes] */
|
|
||||||
// Four hole threshold (HP)
|
|
||||||
four_hole_threshold = 10;
|
|
||||||
// Center two holes
|
|
||||||
two_holes_type = "opposite"; // [center, opposite, mirror]
|
|
||||||
// Hole radius (mm)
|
|
||||||
hole_r = 1.7;
|
|
||||||
// Hole distance from the side (HP)
|
|
||||||
hole_dist_side = hp_mm(1.5);
|
|
||||||
// Hole distance from the top (mm)
|
|
||||||
hole_dist_top = 2.5;
|
|
||||||
|
|
||||||
rail_clearance = 8.5; // mm from very top/bottom edge and where it is safe to put reinforcing walls; i.e. the thickness of the rail + a safety margin
|
|
||||||
|
|
||||||
// margins from edges
|
|
||||||
h_margin = thickness*2;
|
|
||||||
v_margin = hole_dist_top*2 + thickness;
|
|
||||||
|
|
||||||
width_mm = hp_mm(width); // where to put the output jacks
|
|
||||||
|
|
||||||
working_height = height - v_margin;
|
|
||||||
working_increment = working_height / (8+tolerance/3); // generally-useful spacing amount for vertical columns of stuff
|
|
||||||
|
|
||||||
right_rib_thickness = 2;
|
|
||||||
|
|
||||||
center_adjust = 5; //mm
|
|
||||||
left_col = 10 + center_adjust;
|
|
||||||
right_col = width_mm - 10 - center_adjust;
|
|
||||||
center_col = width_mm/2;
|
|
||||||
|
|
||||||
vertical_space = height - 25;
|
|
||||||
|
|
||||||
// build up seven rows; middle one unused
|
|
||||||
row_1 = vertical_space/7;
|
|
||||||
row_2 = row_1 + vertical_space/7;
|
|
||||||
row_3 = row_2 + vertical_space/7;
|
|
||||||
row_4 = row_3 + vertical_space/7;
|
|
||||||
row_5 = row_4 + vertical_space/7;
|
|
||||||
row_6 = row_5 + vertical_space/7;
|
|
||||||
row_7 = row_6 + vertical_space/7;
|
|
||||||
|
|
||||||
cv_in_1a = [left_col, row_7, 0];
|
|
||||||
cv_in_1b = [right_col, row_7, 0];
|
|
||||||
manual_1 = [left_col, row_6, 0];
|
|
||||||
cv_1b_atten = [right_col, row_6, 0];
|
|
||||||
audio_in_1 = [left_col, row_5, 0];
|
|
||||||
audio_out_1 = [right_col, row_5, 0];
|
|
||||||
|
|
||||||
cv_in_2a = [left_col, row_3, 0];
|
|
||||||
cv_in_2b = [right_col, row_3, 0];
|
|
||||||
manual_2 = [left_col, row_2, 0];
|
|
||||||
cv_2b_atten = [right_col, row_2, 0];
|
|
||||||
audio_in_2 = [left_col, row_1, 0];
|
|
||||||
audio_out_2 = [right_col, row_1, 0];
|
|
||||||
|
|
||||||
|
|
||||||
left_rib_x = 0;
|
|
||||||
right_rib_x = width_mm - right_rib_thickness;
|
|
||||||
|
|
||||||
// projection: make a 2d version
|
|
||||||
//projection(){
|
|
||||||
//translate([0, 50, 0])
|
|
||||||
// draw panel, subtract holes
|
|
||||||
union() {
|
|
||||||
difference(){
|
|
||||||
color([.1,.1,.1])
|
|
||||||
panel(width);
|
|
||||||
|
|
||||||
translate(cv_in_1a) audio_jack_3_5mm(vertical=false);
|
|
||||||
translate(cv_in_1b) audio_jack_3_5mm(vertical=false);
|
|
||||||
translate(manual_1) rotate([0, 0, 90]) pot_p160(anchor_hole="left");
|
|
||||||
translate(cv_1b_atten) rotate([0, 0, -90]) pot_p160(anchor_hole="left");
|
|
||||||
translate(audio_in_1) audio_jack_3_5mm(vertical=false);
|
|
||||||
translate(audio_out_1) audio_jack_3_5mm(vertical=false);
|
|
||||||
|
|
||||||
translate(cv_in_2a) audio_jack_3_5mm(vertical=false);
|
|
||||||
translate(cv_in_2b) audio_jack_3_5mm(vertical=false);
|
|
||||||
translate(manual_2) rotate([0, 0, 90]) pot_p160(anchor_hole="left");
|
|
||||||
translate(cv_2b_atten) rotate([0, 0, -90]) pot_p160(anchor_hole="left");
|
|
||||||
translate(audio_in_2) audio_jack_3_5mm(vertical=false);
|
|
||||||
translate(audio_out_2) audio_jack_3_5mm(vertical=false);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
translate([width_mm/2, rail_clearance, 0]) pcb_holder(h=8, l=height-rail_clearance*2, th=2, wall_thickness=thickness);
|
|
||||||
|
|
||||||
// ribs - reinforcements and barriers against shorts on the rails
|
|
||||||
translate([left_rib_x, rail_clearance, 0])
|
|
||||||
v_wall(h=4, l=height-rail_clearance*2-thickness, th=thickness*1.25);
|
|
||||||
translate([right_rib_x, rail_clearance, 0])
|
|
||||||
v_wall(h=4, l=height-rail_clearance*2, th=right_rib_thickness);
|
|
||||||
|
|
||||||
// top horizontal rib
|
|
||||||
translate([left_rib_x, height-rail_clearance-thickness, 0])
|
|
||||||
h_wall(h=4, l=right_rib_x+thickness);
|
|
||||||
// bottom horizontal rib
|
|
||||||
translate([left_rib_x, rail_clearance, 0])
|
|
||||||
h_wall(h=4, l=right_rib_x+1);
|
|
||||||
|
|
||||||
|
|
||||||
//outline of whole PCB
|
|
||||||
/* difference(){
|
|
||||||
translate([slider_center, height/2+4, 0])
|
|
||||||
cube([137.5, 97, 1], center=true);
|
|
||||||
translate([hole_left, hole_top, thickness-20])
|
|
||||||
mounting_hole_m3(h=24);
|
|
||||||
translate([hole_right, hole_bottom, -24])
|
|
||||||
mounting_hole_m3(h=24);
|
|
||||||
} */
|
|
||||||
}
|
|
||||||
|
|
||||||
//end: projection
|
|
||||||
//}
|
|
||||||
|
|
||||||
module make_surface(filename, h) {
|
|
||||||
for (a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16])
|
|
||||||
linear_extrude(height=a/h, convexity=10)
|
|
||||||
projection(cut = true)
|
|
||||||
surface(filename, center=true);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// h[p]
|
|
||||||
module panel(h) {
|
|
||||||
width_mm = hp_mm(h);
|
|
||||||
difference() {
|
|
||||||
// translate([0, 0, -printer_z_fix])
|
|
||||||
cube(size = [width_mm, height, thickness+printer_z_fix]);
|
|
||||||
|
|
||||||
if (h < four_hole_threshold) {
|
|
||||||
if (two_holes_type == "center") {
|
|
||||||
translate([width_mm/2, hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
|
|
||||||
translate([width_mm/2, height-hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
} else if (two_holes_type == "opposite") {
|
|
||||||
translate([hole_dist_side, hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
|
|
||||||
translate([width_mm - hole_dist_side, height-hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
} else if (two_holes_type == "mirror") {
|
|
||||||
translate([hole_dist_side, hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
|
|
||||||
translate([hole_dist_side, height-hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
echo("Putting a hole with radius: ", hole_r , " at ", hole_dist_side, hole_dist_top);
|
|
||||||
translate([hole_dist_side, hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
|
|
||||||
echo("Putting a hole with radius: ", hole_r , " at ", hole_dist_side, height - hole_dist_top);
|
|
||||||
translate([hole_dist_side, height - hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
|
|
||||||
echo("Putting a hole with radius: ", hole_r , " at ", width_mm - hole_dist_side, hole_dist_top);
|
|
||||||
translate([width_mm - hole_dist_side, hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
|
|
||||||
echo("Putting a hole with radius: ", hole_r , " at ", width_mm - hole_dist_side, height - hole_dist_top);
|
|
||||||
translate([width_mm - hole_dist_side, height - hole_dist_top, -1])
|
|
||||||
cylinder(r=hole_r, h=thickness*2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// http://www.rean-connectors.com/en/products/din-chassis-connectors/nys325
|
|
||||||
module nys325_midi_socket() {
|
|
||||||
cylinder(r=7.55, h=thickness*2+1);
|
|
||||||
translate([0, 11.3, -1])
|
|
||||||
cylinder(r=1.6, h=thickness*2+1);
|
|
||||||
translate([0, -11.3, -1])
|
|
||||||
cylinder(r=1.6, h=thickness*2+1);
|
|
||||||
}
|
|
||||||
|
|
||||||
module audio_jack_3_5mm(vertical=true) {
|
|
||||||
translate([0, 0, -1]) cylinder(r=3+tolerance/2, h=thickness*2+1);
|
|
||||||
if (vertical) {
|
|
||||||
translate([-9/2, -10.5/2, -footprint_depth/2]) cube([9, 10.5, footprint_depth]);
|
|
||||||
} else {
|
|
||||||
translate([-10.5/2, -9/2, -footprint_depth/2]) cube([10.5, 9, footprint_depth]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module mounting_hole_m3(h=thickness, flange=8, style="nut"){
|
|
||||||
difference() {
|
|
||||||
translate([0,0,-h+thickness])
|
|
||||||
cube([flange, flange, h], center=true);
|
|
||||||
|
|
||||||
if (style == "nut"){
|
|
||||||
// a hexagonal cutout (undersize to melt an m3 nut into)
|
|
||||||
translate([0,0,-h-2]) cylinder(r=2.25, h=h+3, $fn=6);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// a round cutout (to use an m3 heat-set insert)
|
|
||||||
translate([0,0,-h-2]) cylinder(r=2.05, h=h+3);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
module toggle_switch_6mm() {
|
|
||||||
translate([0, 0, -1]) cylinder(r=3+tolerance/2, h=thickness*2+1);
|
|
||||||
translate([-8/2, -13/2, -footprint_depth/2]) cube([8, 13.15, footprint_depth]);
|
|
||||||
}
|
|
||||||
|
|
||||||
module pushbutton_switch_6mm() {
|
|
||||||
translate([0, 0, -1]) cylinder(r=3+tolerance/2, h=thickness*2+1);
|
|
||||||
translate([0, 0, -footprint_depth/2]) cylinder(d=9.75, h=footprint_depth);
|
|
||||||
}
|
|
||||||
|
|
||||||
module toggle_switch_6_8mm() {
|
|
||||||
translate([0, 0, -1]) cylinder(r=3.4, h=thickness*2+1);
|
|
||||||
}
|
|
||||||
|
|
||||||
module rotary_switch(){
|
|
||||||
translate([0, 0, -1]) cylinder(r=5, h=thickness*2);
|
|
||||||
//hole(s) for anchor
|
|
||||||
translate([17/2 + 3/2, 0, -1]) cylinder(r=1.6+tolerance, h=thickness+0.5);
|
|
||||||
translate([17/2 + 3, 0, -1]) cylinder(r=1.6+tolerance, h=thickness+0.5);
|
|
||||||
// visual indicator of space switch takes up
|
|
||||||
translate([0, 0, -footprint_depth/2]) cylinder(r=13+tolerance, h=footprint_depth);
|
|
||||||
}
|
|
||||||
//
|
|
||||||
module pot_p160(anchor_hole="left") {
|
|
||||||
translate([0, 0, -1]) cylinder(r=3.75, h=thickness*2);
|
|
||||||
// hole for anchor; with translate() ends up being h-1 deep
|
|
||||||
if (anchor_hole=="left" || anchor_hole=="both") {
|
|
||||||
translate([7.8, 0, -1]) cylinder(r=1.5, h=thickness);
|
|
||||||
translate([0, 12/2, -footprint_depth/2]) cube([15.25, 12, footprint_depth], center=true);
|
|
||||||
}
|
|
||||||
if (anchor_hole=="right" || anchor_hole=="both") {
|
|
||||||
translate([-7.8, 0, -1]) cylinder(r=1.5, h=thickness);
|
|
||||||
translate([0, -12/2, -footprint_depth/2]) cube([15.25, 12, footprint_depth], center=true);
|
|
||||||
}
|
|
||||||
// visual indicator of space pot body takes up
|
|
||||||
translate([0, 0, -footprint_depth/2]) cylinder(r=17/2, h=footprint_depth);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
module pot_wh148() {
|
|
||||||
translate([0, 0, -1]) cylinder(r=3.6, h=thickness*2);
|
|
||||||
// hole for anchor; with translate() ends up being h-1 deep
|
|
||||||
translate([7.8, 0, -1]) cylinder(r=1.3, h=thickness);
|
|
||||||
}
|
|
||||||
|
|
||||||
module pot_0547() {
|
|
||||||
// slider pot slit
|
|
||||||
translate([-1.25, 0, -1]) cube([2.5, 52, thickness*2]);
|
|
||||||
// visual indicator
|
|
||||||
translate([-8.8/2, -4, -footprint_depth/2]) cube([8.8, 60.25, footprint_depth]);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
module led_5mm() {
|
|
||||||
// make a hole for a 5mm led, with a hair of margin
|
|
||||||
translate([0, 0, -1]) cylinder(r=2.575, h=thickness*2+2);
|
|
||||||
}
|
|
||||||
|
|
||||||
module make_step(bottom_element="switch") {
|
|
||||||
// generate holes for a pot, an LED, and a switch
|
|
||||||
if (bottom_element=="pot"){
|
|
||||||
pot_0547();
|
|
||||||
translate([0, 55+8, 0]) led_5mm();
|
|
||||||
translate([0, 55+24, 0]) toggle_switch_6mm();
|
|
||||||
} else if (bottom_element=="switch") {
|
|
||||||
toggle_switch_6mm();
|
|
||||||
// translate([0, 16, 0]) pot_0547();
|
|
||||||
// translate([0, 55+24, 0]) led_5mm();
|
|
||||||
translate([0, 13, 0]) pot_0547();
|
|
||||||
translate([0, 56+20, 0]) led_5mm();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
module label(string, size=4, halign="center", height=thickness+1, font=default_label_font) {
|
|
||||||
color([1,0,0])
|
|
||||||
linear_extrude(height)
|
|
||||||
text(string, size, halign=halign, font=font);
|
|
||||||
}
|
|
||||||
|
|
||||||
module title(string, size=12, halign="center", font=font_for_title) {
|
|
||||||
color([1,0,0])
|
|
||||||
linear_extrude(thickness+1)
|
|
||||||
text(string, size, halign=halign, font=font);
|
|
||||||
}
|
|
||||||
|
|
||||||
// draw a "vertical" wall
|
|
||||||
// h = z height, i.e. how tall the wall is coming out of the panel
|
|
||||||
// l = length of the wall along the panel
|
|
||||||
module v_wall(h, l, th=thickness) {
|
|
||||||
translate([0, 0, -h]) cube(size = [th, l, h]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// draw a horizontal wall (across the panel)
|
|
||||||
// h = z height, how far the wall comes out of the panel
|
|
||||||
// l = length of the wall along the panel
|
|
||||||
module h_wall(h, l, th=thickness) {
|
|
||||||
translate([0, 0, -h]) cube(size = [l, th, h]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// draws two walls in parallel, close together so a PCB can fit between
|
|
||||||
// h = how deep to make the walls; a little extra is probably good
|
|
||||||
// l = length of the side of the board that will be seated in the slit, with tolerances
|
|
||||||
// th = thickness of the PCB, with tolerances
|
|
||||||
// wall_thickness = how thick to make each wall of the holder
|
|
||||||
// e.g.: Radio Shaek is 51mm x 70mm and 1.2mm thick
|
|
||||||
module pcb_holder(h, l, th, wall_thickness=thickness) {
|
|
||||||
translate([0-(wall_thickness+th)/2, 0, 0])
|
|
||||||
v_wall(h, l, wall_thickness);
|
|
||||||
|
|
||||||
translate([(wall_thickness+th)/2, 0, 0])
|
|
||||||
v_wall(h, l, wall_thickness);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// https://www.elfa.se/Web/Downloads/_t/ds/els-511sygwa-s530-e1_eng_tds.pdf
|
|
||||||
module x1_7seg_14_22mm_display() {
|
|
||||||
cube([12.25, 19.25, thickness]);
|
|
||||||
}
|
|
||||||
|
|
||||||
module x2_7seg_14_22mm_display() {
|
|
||||||
cube([25, 19.25, thickness]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// https://www.elfa.se/Web/Downloads/2e/wa/qmCC56-12EWA.pdf
|
|
||||||
module x4_7seg_14_22mm_display() {
|
|
||||||
cube([50.5, 19.25, thickness]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// https://cdn.sparkfun.com/datasheets/Components/Switches/MX%20Series.pdf
|
|
||||||
module cherry_mx_button() {
|
|
||||||
union(){
|
|
||||||
cube([14,14,thickness]);
|
|
||||||
|
|
||||||
translate([-1,1,0])
|
|
||||||
cube([14+2*1,thickness,thickness]);
|
|
||||||
|
|
||||||
translate([-1,14-1-3,0])
|
|
||||||
cube([14+2*1,3,thickness]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// 1U = 1.75" = 44.45mm
|
|
||||||
// 1HP = 1/5" = 5.08mm
|
|
||||||
|
|
||||||
// u[nits]
|
|
||||||
function units_mm(u) = u * U;
|
|
||||||
|
|
||||||
// h[p]
|
|
||||||
function hp_mm(h) = h * HP;
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,77 +0,0 @@
|
||||||
{
|
|
||||||
"board": {
|
|
||||||
"active_layer": 36,
|
|
||||||
"active_layer_preset": "All Layers",
|
|
||||||
"auto_track_width": true,
|
|
||||||
"hidden_netclasses": [],
|
|
||||||
"hidden_nets": [],
|
|
||||||
"high_contrast_mode": 0,
|
|
||||||
"net_color_mode": 1,
|
|
||||||
"opacity": {
|
|
||||||
"images": 0.6,
|
|
||||||
"pads": 1.0,
|
|
||||||
"tracks": 1.0,
|
|
||||||
"vias": 1.0,
|
|
||||||
"zones": 0.6
|
|
||||||
},
|
|
||||||
"selection_filter": {
|
|
||||||
"dimensions": true,
|
|
||||||
"footprints": true,
|
|
||||||
"graphics": true,
|
|
||||||
"keepouts": true,
|
|
||||||
"lockedItems": false,
|
|
||||||
"otherItems": true,
|
|
||||||
"pads": true,
|
|
||||||
"text": true,
|
|
||||||
"tracks": true,
|
|
||||||
"vias": true,
|
|
||||||
"zones": true
|
|
||||||
},
|
|
||||||
"visible_items": [
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
2,
|
|
||||||
3,
|
|
||||||
4,
|
|
||||||
5,
|
|
||||||
8,
|
|
||||||
9,
|
|
||||||
10,
|
|
||||||
11,
|
|
||||||
12,
|
|
||||||
13,
|
|
||||||
15,
|
|
||||||
16,
|
|
||||||
17,
|
|
||||||
18,
|
|
||||||
19,
|
|
||||||
20,
|
|
||||||
21,
|
|
||||||
22,
|
|
||||||
23,
|
|
||||||
24,
|
|
||||||
25,
|
|
||||||
26,
|
|
||||||
27,
|
|
||||||
28,
|
|
||||||
29,
|
|
||||||
30,
|
|
||||||
32,
|
|
||||||
33,
|
|
||||||
34,
|
|
||||||
35,
|
|
||||||
36,
|
|
||||||
39,
|
|
||||||
40
|
|
||||||
],
|
|
||||||
"visible_layers": "fffffff_ffffffff",
|
|
||||||
"zone_display_mode": 0
|
|
||||||
},
|
|
||||||
"meta": {
|
|
||||||
"filename": "Enlarge.kicad_prl",
|
|
||||||
"version": 3
|
|
||||||
},
|
|
||||||
"project": {
|
|
||||||
"files": []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,475 +0,0 @@
|
||||||
{
|
|
||||||
"board": {
|
|
||||||
"3dviewports": [],
|
|
||||||
"design_settings": {
|
|
||||||
"defaults": {
|
|
||||||
"board_outline_line_width": 0.049999999999999996,
|
|
||||||
"copper_line_width": 0.19999999999999998,
|
|
||||||
"copper_text_italic": false,
|
|
||||||
"copper_text_size_h": 1.5,
|
|
||||||
"copper_text_size_v": 1.5,
|
|
||||||
"copper_text_thickness": 0.3,
|
|
||||||
"copper_text_upright": false,
|
|
||||||
"courtyard_line_width": 0.049999999999999996,
|
|
||||||
"dimension_precision": 4,
|
|
||||||
"dimension_units": 3,
|
|
||||||
"dimensions": {
|
|
||||||
"arrow_length": 1270000,
|
|
||||||
"extension_offset": 500000,
|
|
||||||
"keep_text_aligned": true,
|
|
||||||
"suppress_zeroes": false,
|
|
||||||
"text_position": 0,
|
|
||||||
"units_format": 1
|
|
||||||
},
|
|
||||||
"fab_line_width": 0.09999999999999999,
|
|
||||||
"fab_text_italic": false,
|
|
||||||
"fab_text_size_h": 1.0,
|
|
||||||
"fab_text_size_v": 1.0,
|
|
||||||
"fab_text_thickness": 0.15,
|
|
||||||
"fab_text_upright": false,
|
|
||||||
"other_line_width": 0.09999999999999999,
|
|
||||||
"other_text_italic": false,
|
|
||||||
"other_text_size_h": 1.0,
|
|
||||||
"other_text_size_v": 1.0,
|
|
||||||
"other_text_thickness": 0.15,
|
|
||||||
"other_text_upright": false,
|
|
||||||
"pads": {
|
|
||||||
"drill": 0.762,
|
|
||||||
"height": 1.524,
|
|
||||||
"width": 1.524
|
|
||||||
},
|
|
||||||
"silk_line_width": 0.09999999999999999,
|
|
||||||
"silk_text_italic": false,
|
|
||||||
"silk_text_size_h": 1.0,
|
|
||||||
"silk_text_size_v": 1.0,
|
|
||||||
"silk_text_thickness": 0.09999999999999999,
|
|
||||||
"silk_text_upright": false,
|
|
||||||
"zones": {
|
|
||||||
"min_clearance": 0.5
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"diff_pair_dimensions": [],
|
|
||||||
"drc_exclusions": [],
|
|
||||||
"meta": {
|
|
||||||
"version": 2
|
|
||||||
},
|
|
||||||
"rule_severities": {
|
|
||||||
"annular_width": "error",
|
|
||||||
"clearance": "error",
|
|
||||||
"connection_width": "warning",
|
|
||||||
"copper_edge_clearance": "error",
|
|
||||||
"copper_sliver": "warning",
|
|
||||||
"courtyards_overlap": "error",
|
|
||||||
"diff_pair_gap_out_of_range": "error",
|
|
||||||
"diff_pair_uncoupled_length_too_long": "error",
|
|
||||||
"drill_out_of_range": "error",
|
|
||||||
"duplicate_footprints": "warning",
|
|
||||||
"extra_footprint": "warning",
|
|
||||||
"footprint": "error",
|
|
||||||
"footprint_type_mismatch": "ignore",
|
|
||||||
"hole_clearance": "error",
|
|
||||||
"hole_near_hole": "error",
|
|
||||||
"invalid_outline": "error",
|
|
||||||
"isolated_copper": "warning",
|
|
||||||
"item_on_disabled_layer": "error",
|
|
||||||
"items_not_allowed": "error",
|
|
||||||
"length_out_of_range": "error",
|
|
||||||
"lib_footprint_issues": "warning",
|
|
||||||
"lib_footprint_mismatch": "warning",
|
|
||||||
"malformed_courtyard": "error",
|
|
||||||
"microvia_drill_out_of_range": "error",
|
|
||||||
"missing_courtyard": "ignore",
|
|
||||||
"missing_footprint": "warning",
|
|
||||||
"net_conflict": "warning",
|
|
||||||
"npth_inside_courtyard": "ignore",
|
|
||||||
"padstack": "warning",
|
|
||||||
"pth_inside_courtyard": "ignore",
|
|
||||||
"shorting_items": "error",
|
|
||||||
"silk_edge_clearance": "warning",
|
|
||||||
"silk_over_copper": "warning",
|
|
||||||
"silk_overlap": "warning",
|
|
||||||
"skew_out_of_range": "error",
|
|
||||||
"solder_mask_bridge": "error",
|
|
||||||
"starved_thermal": "error",
|
|
||||||
"text_height": "warning",
|
|
||||||
"text_thickness": "warning",
|
|
||||||
"through_hole_pad_without_hole": "error",
|
|
||||||
"too_many_vias": "error",
|
|
||||||
"track_dangling": "warning",
|
|
||||||
"track_width": "error",
|
|
||||||
"tracks_crossing": "error",
|
|
||||||
"unconnected_items": "error",
|
|
||||||
"unresolved_variable": "error",
|
|
||||||
"via_dangling": "warning",
|
|
||||||
"zones_intersect": "error"
|
|
||||||
},
|
|
||||||
"rules": {
|
|
||||||
"max_error": 0.005,
|
|
||||||
"min_clearance": 0.0,
|
|
||||||
"min_connection": 0.0,
|
|
||||||
"min_copper_edge_clearance": 0.5,
|
|
||||||
"min_hole_clearance": 0.25,
|
|
||||||
"min_hole_to_hole": 0.25,
|
|
||||||
"min_microvia_diameter": 0.19999999999999998,
|
|
||||||
"min_microvia_drill": 0.09999999999999999,
|
|
||||||
"min_resolved_spokes": 2,
|
|
||||||
"min_silk_clearance": 0.0,
|
|
||||||
"min_text_height": 0.7999999999999999,
|
|
||||||
"min_text_thickness": 0.08,
|
|
||||||
"min_through_hole_diameter": 0.3,
|
|
||||||
"min_track_width": 0.0,
|
|
||||||
"min_via_annular_width": 0.09999999999999999,
|
|
||||||
"min_via_diameter": 0.5,
|
|
||||||
"solder_mask_to_copper_clearance": 0.0,
|
|
||||||
"use_height_for_length_calcs": true
|
|
||||||
},
|
|
||||||
"teardrop_options": [
|
|
||||||
{
|
|
||||||
"td_allow_use_two_tracks": true,
|
|
||||||
"td_curve_segcount": 5,
|
|
||||||
"td_on_pad_in_zone": false,
|
|
||||||
"td_onpadsmd": true,
|
|
||||||
"td_onroundshapesonly": false,
|
|
||||||
"td_ontrackend": false,
|
|
||||||
"td_onviapad": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"teardrop_parameters": [
|
|
||||||
{
|
|
||||||
"td_curve_segcount": 0,
|
|
||||||
"td_height_ratio": 1.0,
|
|
||||||
"td_length_ratio": 0.5,
|
|
||||||
"td_maxheight": 2.0,
|
|
||||||
"td_maxlen": 1.0,
|
|
||||||
"td_target_name": "td_round_shape",
|
|
||||||
"td_width_to_size_filter_ratio": 0.9
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"td_curve_segcount": 0,
|
|
||||||
"td_height_ratio": 1.0,
|
|
||||||
"td_length_ratio": 0.5,
|
|
||||||
"td_maxheight": 2.0,
|
|
||||||
"td_maxlen": 1.0,
|
|
||||||
"td_target_name": "td_rect_shape",
|
|
||||||
"td_width_to_size_filter_ratio": 0.9
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"td_curve_segcount": 0,
|
|
||||||
"td_height_ratio": 1.0,
|
|
||||||
"td_length_ratio": 0.5,
|
|
||||||
"td_maxheight": 2.0,
|
|
||||||
"td_maxlen": 1.0,
|
|
||||||
"td_target_name": "td_track_end",
|
|
||||||
"td_width_to_size_filter_ratio": 0.9
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"track_widths": [],
|
|
||||||
"via_dimensions": [],
|
|
||||||
"zones_allow_external_fillets": false
|
|
||||||
},
|
|
||||||
"layer_presets": [],
|
|
||||||
"viewports": []
|
|
||||||
},
|
|
||||||
"boards": [],
|
|
||||||
"cvpcb": {
|
|
||||||
"equivalence_files": []
|
|
||||||
},
|
|
||||||
"erc": {
|
|
||||||
"erc_exclusions": [],
|
|
||||||
"meta": {
|
|
||||||
"version": 0
|
|
||||||
},
|
|
||||||
"pin_map": [
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
2,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
1,
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
1,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
1,
|
|
||||||
0,
|
|
||||||
2,
|
|
||||||
0,
|
|
||||||
0,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
[
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2,
|
|
||||||
2
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"rule_severities": {
|
|
||||||
"bus_definition_conflict": "error",
|
|
||||||
"bus_entry_needed": "error",
|
|
||||||
"bus_to_bus_conflict": "error",
|
|
||||||
"bus_to_net_conflict": "error",
|
|
||||||
"conflicting_netclasses": "error",
|
|
||||||
"different_unit_footprint": "error",
|
|
||||||
"different_unit_net": "error",
|
|
||||||
"duplicate_reference": "error",
|
|
||||||
"duplicate_sheet_names": "error",
|
|
||||||
"endpoint_off_grid": "warning",
|
|
||||||
"extra_units": "error",
|
|
||||||
"global_label_dangling": "warning",
|
|
||||||
"hier_label_mismatch": "error",
|
|
||||||
"label_dangling": "error",
|
|
||||||
"lib_symbol_issues": "warning",
|
|
||||||
"missing_bidi_pin": "warning",
|
|
||||||
"missing_input_pin": "warning",
|
|
||||||
"missing_power_pin": "error",
|
|
||||||
"missing_unit": "warning",
|
|
||||||
"multiple_net_names": "warning",
|
|
||||||
"net_not_bus_member": "warning",
|
|
||||||
"no_connect_connected": "warning",
|
|
||||||
"no_connect_dangling": "warning",
|
|
||||||
"pin_not_connected": "error",
|
|
||||||
"pin_not_driven": "error",
|
|
||||||
"pin_to_pin": "warning",
|
|
||||||
"power_pin_not_driven": "error",
|
|
||||||
"similar_labels": "warning",
|
|
||||||
"simulation_model_issue": "ignore",
|
|
||||||
"unannotated": "error",
|
|
||||||
"unit_value_mismatch": "error",
|
|
||||||
"unresolved_variable": "error",
|
|
||||||
"wire_dangling": "error"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"libraries": {
|
|
||||||
"pinned_footprint_libs": [],
|
|
||||||
"pinned_symbol_libs": []
|
|
||||||
},
|
|
||||||
"meta": {
|
|
||||||
"filename": "Enlarge.kicad_pro",
|
|
||||||
"version": 1
|
|
||||||
},
|
|
||||||
"net_settings": {
|
|
||||||
"classes": [
|
|
||||||
{
|
|
||||||
"bus_width": 12,
|
|
||||||
"clearance": 0.25,
|
|
||||||
"diff_pair_gap": 0.25,
|
|
||||||
"diff_pair_via_gap": 0.25,
|
|
||||||
"diff_pair_width": 0.2,
|
|
||||||
"line_style": 0,
|
|
||||||
"microvia_diameter": 0.3,
|
|
||||||
"microvia_drill": 0.1,
|
|
||||||
"name": "Default",
|
|
||||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
|
||||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
|
||||||
"track_width": 0.3,
|
|
||||||
"via_diameter": 0.6,
|
|
||||||
"via_drill": 0.3,
|
|
||||||
"wire_width": 6
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meta": {
|
|
||||||
"version": 3
|
|
||||||
},
|
|
||||||
"net_colors": null,
|
|
||||||
"netclass_assignments": null,
|
|
||||||
"netclass_patterns": []
|
|
||||||
},
|
|
||||||
"pcbnew": {
|
|
||||||
"last_paths": {
|
|
||||||
"gencad": "",
|
|
||||||
"idf": "",
|
|
||||||
"netlist": "",
|
|
||||||
"specctra_dsn": "",
|
|
||||||
"step": "",
|
|
||||||
"vrml": ""
|
|
||||||
},
|
|
||||||
"page_layout_descr_file": ""
|
|
||||||
},
|
|
||||||
"schematic": {
|
|
||||||
"annotate_start_num": 0,
|
|
||||||
"drawing": {
|
|
||||||
"dashed_lines_dash_length_ratio": 12.0,
|
|
||||||
"dashed_lines_gap_length_ratio": 3.0,
|
|
||||||
"default_line_thickness": 6.0,
|
|
||||||
"default_text_size": 50.0,
|
|
||||||
"field_names": [],
|
|
||||||
"intersheets_ref_own_page": false,
|
|
||||||
"intersheets_ref_prefix": "",
|
|
||||||
"intersheets_ref_short": false,
|
|
||||||
"intersheets_ref_show": false,
|
|
||||||
"intersheets_ref_suffix": "",
|
|
||||||
"junction_size_choice": 3,
|
|
||||||
"label_size_ratio": 0.375,
|
|
||||||
"pin_symbol_size": 25.0,
|
|
||||||
"text_offset_ratio": 0.15
|
|
||||||
},
|
|
||||||
"legacy_lib_dir": "",
|
|
||||||
"legacy_lib_list": [],
|
|
||||||
"meta": {
|
|
||||||
"version": 1
|
|
||||||
},
|
|
||||||
"net_format_name": "",
|
|
||||||
"page_layout_descr_file": "",
|
|
||||||
"plot_directory": "",
|
|
||||||
"spice_current_sheet_as_root": false,
|
|
||||||
"spice_external_command": "spice \"%I\"",
|
|
||||||
"spice_model_current_sheet_as_root": true,
|
|
||||||
"spice_save_all_currents": false,
|
|
||||||
"spice_save_all_voltages": false,
|
|
||||||
"subpart_first_id": 65,
|
|
||||||
"subpart_id_separator": 0
|
|
||||||
},
|
|
||||||
"sheets": [
|
|
||||||
[
|
|
||||||
"eec547f8-9df8-469d-b219-9d3b20f3059a",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"text_variables": {}
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue