pixalynx/edge-connector
Configures USB-A, Micro-USB, and USB-C PCB-edge connectors with exposed copper contacts and automatically shaped, positioned board tongues.
- Version
- 1.0.0
- License
- GPL-3.0-only
- Stars
- 0
dist/examples/micro-usb/circuit.json
PCB
Schematic
[
{
"type": "source_group",
"source_group_id": "source_group_0",
"is_subcircuit": true,
"was_automatically_named": true,
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_port",
"source_port_id": "source_port_0",
"name": "VBUS",
"pin_number": 1,
"port_hints": [
"VBUS",
"pin1",
"1"
],
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_port",
"source_port_id": "source_port_1",
"name": "DM",
"pin_number": 2,
"port_hints": [
"DM",
"D_MINUS",
"pin2",
"2"
],
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_port",
"source_port_id": "source_port_2",
"name": "DP",
"pin_number": 3,
"port_hints": [
"DP",
"D_PLUS",
"pin3",
"3"
],
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_port",
"source_port_id": "source_port_3",
"name": "ID",
"pin_number": 4,
"port_hints": [
"ID",
"pin4",
"4"
],
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_port",
"source_port_id": "source_port_4",
"name": "GND",
"pin_number": 5,
"port_hints": [
"GND",
"pin5",
"5"
],
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_component",
"source_component_id": "source_component_0",
"ftype": "simple_connector",
"name": "J1",
"source_group_id": "source_group_0"
},
{
"type": "source_board",
"source_board_id": "source_board_0",
"source_group_id": "source_group_0"
},
{
"type": "source_pin_missing_trace_warning",
"source_pin_missing_trace_warning_id": "source_pin_missing_trace_warning_0",
"message": "Port VBUS on J1 is missing a trace",
"source_component_id": "source_component_0",
"source_port_id": "source_port_0",
"subcircuit_id": "subcircuit_source_group_0",
"warning_type": "source_pin_missing_trace_warning"
},
{
"type": "source_pin_missing_trace_warning",
"source_pin_missing_trace_warning_id": "source_pin_missing_trace_warning_1",
"message": "Port DM on J1 is missing a trace",
"source_component_id": "source_component_0",
"source_port_id": "source_port_1",
"subcircuit_id": "subcircuit_source_group_0",
"warning_type": "source_pin_missing_trace_warning"
},
{
"type": "source_pin_missing_trace_warning",
"source_pin_missing_trace_warning_id": "source_pin_missing_trace_warning_2",
"message": "Port DP on J1 is missing a trace",
"source_component_id": "source_component_0",
"source_port_id": "source_port_2",
"subcircuit_id": "subcircuit_source_group_0",
"warning_type": "source_pin_missing_trace_warning"
},
{
"type": "source_pin_missing_trace_warning",
"source_pin_missing_trace_warning_id": "source_pin_missing_trace_warning_3",
"message": "Port ID on J1 is missing a trace",
"source_component_id": "source_component_0",
"source_port_id": "source_port_3",
"subcircuit_id": "subcircuit_source_group_0",
"warning_type": "source_pin_missing_trace_warning"
},
{
"type": "source_pin_missing_trace_warning",
"source_pin_missing_trace_warning_id": "source_pin_missing_trace_warning_4",
"message": "Port GND on J1 is missing a trace",
"source_component_id": "source_component_0",
"source_port_id": "source_port_4",
"subcircuit_id": "subcircuit_source_group_0",
"warning_type": "source_pin_missing_trace_warning"
},
{
"type": "schematic_component",
"schematic_component_id": "schematic_component_0",
"center": {
"x": 0,
"y": 0
},
"rotation": 0,
"size": {
"width": 2.2,
"height": 1.2
},
"port_arrangement": {
"right_side": {
"pins": [
1,
2,
3,
4,
5
],
"direction": "top-to-bottom"
}
},
"pin_spacing": 0.2,
"port_labels": {
"pin1": "VBUS",
"pin2": "DM",
"pin3": "DP",
"pin4": "ID",
"pin5": "GND"
},
"source_component_id": "source_component_0",
"schematic_group_id": "schematic_group_0"
},
{
"type": "schematic_text",
"schematic_text_id": "schematic_text_0",
"text": "",
"schematic_component_id": "schematic_component_0",
"anchor": "left",
"rotation": 0,
"position": {
"x": -1.1,
"y": -0.73
},
"color": "#006464",
"font_size": 0.18
},
{
"type": "schematic_text",
"schematic_text_id": "schematic_text_1",
"text": "J1",
"schematic_component_id": "schematic_component_0",
"anchor": "left",
"rotation": 0,
"position": {
"x": -1.1,
"y": 0.73
},
"color": "#006464",
"font_size": 0.18
},
{
"type": "schematic_group",
"schematic_group_id": "schematic_group_0",
"is_subcircuit": true,
"subcircuit_id": "subcircuit_source_group_0",
"name": "unnamed_board1",
"center": {
"x": 0,
"y": 0
},
"width": 0,
"height": 0,
"schematic_component_ids": [],
"source_group_id": "source_group_0",
"show_as_schematic_box": false
},
{
"type": "schematic_port",
"schematic_port_id": "schematic_port_0",
"schematic_component_id": "schematic_component_0",
"center": {
"x": 1.5,
"y": 0.4
},
"source_port_id": "source_port_0",
"facing_direction": "right",
"distance_from_component_edge": 0.4,
"side_of_component": "right",
"pin_number": 1,
"true_ccw_index": 0,
"display_pin_label": "VBUS",
"is_connected": false
},
{
"type": "schematic_port",
"schematic_port_id": "schematic_port_1",
"schematic_component_id": "schematic_component_0",
"center": {
"x": 1.5,
"y": 0.20000000000000007
},
"source_port_id": "source_port_1",
"facing_direction": "right",
"distance_from_component_edge": 0.4,
"side_of_component": "right",
"pin_number": 2,
"true_ccw_index": 1,
"display_pin_label": "DM/D_MINUS",
"is_connected": false
},
{
"type": "schematic_port",
"schematic_port_id": "schematic_port_2",
"schematic_component_id": "schematic_component_0",
"center": {
"x": 1.5,
"y": 0
},
"source_port_id": "source_port_2",
"facing_direction": "right",
"distance_from_component_edge": 0.4,
"side_of_component": "right",
"pin_number": 3,
"true_ccw_index": 2,
"display_pin_label": "DP/D_PLUS",
"is_connected": false
},
{
"type": "schematic_port",
"schematic_port_id": "schematic_port_3",
"schematic_component_id": "schematic_component_0",
"center": {
"x": 1.5,
"y": -0.2
},
"source_port_id": "source_port_3",
"facing_direction": "right",
"distance_from_component_edge": 0.4,
"side_of_component": "right",
"pin_number": 4,
"true_ccw_index": 3,
"display_pin_label": "ID",
"is_connected": false
},
{
"type": "schematic_port",
"schematic_port_id": "schematic_port_4",
"schematic_component_id": "schematic_component_0",
"center": {
"x": 1.5,
"y": -0.4
},
"source_port_id": "source_port_4",
"facing_direction": "right",
"distance_from_component_edge": 0.4,
"side_of_component": "right",
"pin_number": 5,
"true_ccw_index": 4,
"display_pin_label": "GND",
"is_connected": false
},
{
"type": "schematic_missing_sheet_warning",
"schematic_missing_sheet_warning_id": "schematic_missing_sheet_warning_0",
"warning_type": "schematic_missing_sheet_warning",
"message": "No <schematicsheet> was found. Add a <schematicsheet> to define the schematic drawing area."
},
{
"type": "pcb_component",
"pcb_component_id": "pcb_component_0",
"center": {
"x": 0,
"y": 4.21
},
"width": 2.95,
"height": 2.7000000000000006,
"layer": "top",
"rotation": 0,
"insertion_direction": "from_top",
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0",
"do_not_place": true,
"obstructs_within_bounds": true,
"is_allowed_to_be_off_board": false,
"cable_insertion_center": {
"x": 0,
"y": 5.960000000000001
},
"position_mode": "relative_to_group_anchor",
"positioned_relative_to_pcb_board_id": "pcb_board_0",
"display_offset_x": 0,
"display_offset_y": 4.21
},
{
"type": "pcb_board",
"pcb_board_id": "pcb_board_0",
"source_board_id": "source_board_0",
"subcircuit_id": "subcircuit_source_group_0",
"center": {
"x": 0,
"y": 0
},
"thickness": 0.6,
"num_layers": 2,
"width": 16,
"height": 11.58,
"outline": [
{
"x": -8,
"y": -5.79
},
{
"x": -8,
"y": 5.79
},
{
"x": -3.905,
"y": 5.79
},
{
"x": -3.87027,
"y": 5.786961
},
{
"x": -3.836596,
"y": 5.777938
},
{
"x": -3.805,
"y": 5.763205
},
{
"x": -3.776443,
"y": 5.743209
},
{
"x": -3.751791,
"y": 5.718557
},
{
"x": -3.731795,
"y": 5.6899999999999995
},
{
"x": -3.717062,
"y": 5.658404
},
{
"x": -3.708039,
"y": 5.62473
},
{
"x": -3.705,
"y": 5.59
},
{
"x": -3.705,
"y": 2.29
},
{
"x": -3.692688,
"y": 2.133565
},
{
"x": -3.656057,
"y": 1.9809830000000002
},
{
"x": -3.596007,
"y": 1.8360089999999998
},
{
"x": -3.514017,
"y": 1.7022149999999998
},
{
"x": -3.412107,
"y": 1.5828929999999999
},
{
"x": -3.292785,
"y": 1.4809830000000002
},
{
"x": -3.158991,
"y": 1.398993
},
{
"x": -3.014017,
"y": 1.338943
},
{
"x": -2.861435,
"y": 1.3023120000000001
},
{
"x": -2.705,
"y": 1.29
},
{
"x": -2.548565,
"y": 1.3023120000000001
},
{
"x": -2.395983,
"y": 1.338943
},
{
"x": -2.251009,
"y": 1.398993
},
{
"x": -2.117215,
"y": 1.4809830000000002
},
{
"x": -1.997893,
"y": 1.5828929999999999
},
{
"x": -1.895983,
"y": 1.7022149999999998
},
{
"x": -1.813993,
"y": 1.8360089999999998
},
{
"x": -1.753943,
"y": 1.9809830000000002
},
{
"x": -1.717312,
"y": 2.133565
},
{
"x": -1.705,
"y": 2.29
},
{
"x": -1.705,
"y": 5.59
},
{
"x": -1.701961,
"y": 5.62473
},
{
"x": -1.692938,
"y": 5.658404
},
{
"x": -1.678205,
"y": 5.6899999999999995
},
{
"x": -1.658209,
"y": 5.718557
},
{
"x": -1.633557,
"y": 5.743209
},
{
"x": -1.605,
"y": 5.763205
},
{
"x": -1.573404,
"y": 5.777938
},
{
"x": -1.53973,
"y": 5.786961
},
{
"x": -1.505,
"y": 5.79
},
{
"x": 1.505,
"y": 5.79
},
{
"x": 1.53973,
"y": 5.786961
},
{
"x": 1.573404,
"y": 5.777938
},
{
"x": 1.605,
"y": 5.763205
},
{
"x": 1.633557,
"y": 5.743209
},
{
"x": 1.658209,
"y": 5.718557
},
{
"x": 1.678205,
"y": 5.6899999999999995
},
{
"x": 1.692938,
"y": 5.658404
},
{
"x": 1.701961,
"y": 5.62473
},
{
"x": 1.705,
"y": 5.59
},
{
"x": 1.705,
"y": 2.29
},
{
"x": 1.717312,
"y": 2.133565
},
{
"x": 1.753943,
"y": 1.9809830000000002
},
{
"x": 1.813993,
"y": 1.8360089999999998
},
{
"x": 1.895983,
"y": 1.7022149999999998
},
{
"x": 1.997893,
"y": 1.5828929999999999
},
{
"x": 2.117215,
"y": 1.4809830000000002
},
{
"x": 2.251009,
"y": 1.398993
},
{
"x": 2.395983,
"y": 1.338943
},
{
"x": 2.548565,
"y": 1.3023120000000001
},
{
"x": 2.705,
"y": 1.29
},
{
"x": 2.861435,
"y": 1.3023120000000001
},
{
"x": 3.014017,
"y": 1.338943
},
{
"x": 3.158991,
"y": 1.398993
},
{
"x": 3.292785,
"y": 1.4809830000000002
},
{
"x": 3.412107,
"y": 1.5828929999999999
},
{
"x": 3.514017,
"y": 1.7022149999999998
},
{
"x": 3.596007,
"y": 1.8360089999999998
},
{
"x": 3.656057,
"y": 1.9809830000000002
},
{
"x": 3.692688,
"y": 2.133565
},
{
"x": 3.705,
"y": 2.29
},
{
"x": 3.705,
"y": 5.59
},
{
"x": 3.708039,
"y": 5.62473
},
{
"x": 3.717062,
"y": 5.658404
},
{
"x": 3.731795,
"y": 5.6899999999999995
},
{
"x": 3.751791,
"y": 5.718557
},
{
"x": 3.776443,
"y": 5.743209
},
{
"x": 3.805,
"y": 5.763205
},
{
"x": 3.836596,
"y": 5.777938
},
{
"x": 3.87027,
"y": 5.786961
},
{
"x": 3.905,
"y": 5.79
},
{
"x": 8,
"y": 5.79
},
{
"x": 8,
"y": -5.79
}
],
"material": "fr4",
"min_trace_width": 0.1,
"min_via_hole_diameter": 0.2,
"min_via_pad_diameter": 0.3,
"min_via_hole_edge_to_via_hole_edge_clearance": 0.1,
"min_trace_to_pad_edge_clearance": 0.1,
"min_pad_edge_to_pad_edge_clearance": 0.1,
"min_plated_hole_drill_edge_to_drill_edge_clearance": 0.15,
"min_board_edge_clearance": 0.2
},
{
"type": "pcb_smtpad",
"pcb_smtpad_id": "pcb_smtpad_0",
"pcb_component_id": "pcb_component_0",
"pcb_port_id": "pcb_port_0",
"layer": "top",
"shape": "rect",
"width": 0.35,
"height": 2.7,
"port_hints": [
"1"
],
"is_covered_with_solder_mask": false,
"soldermask_margin": 0.025,
"x": -1.3,
"y": 4.21,
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "pcb_smtpad",
"pcb_smtpad_id": "pcb_smtpad_1",
"pcb_component_id": "pcb_component_0",
"pcb_port_id": "pcb_port_1",
"layer": "top",
"shape": "rect",
"width": 0.35,
"height": 2.7,
"port_hints": [
"2"
],
"is_covered_with_solder_mask": false,
"soldermask_margin": 0.025,
"x": -0.65,
"y": 4.21,
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "pcb_smtpad",
"pcb_smtpad_id": "pcb_smtpad_2",
"pcb_component_id": "pcb_component_0",
"pcb_port_id": "pcb_port_2",
"layer": "top",
"shape": "rect",
"width": 0.35,
"height": 2.7,
"port_hints": [
"3"
],
"is_covered_with_solder_mask": false,
"soldermask_margin": 0.025,
"x": 0,
"y": 4.21,
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "pcb_smtpad",
"pcb_smtpad_id": "pcb_smtpad_3",
"pcb_component_id": "pcb_component_0",
"pcb_port_id": "pcb_port_3",
"layer": "top",
"shape": "rect",
"width": 0.35,
"height": 2.7,
"port_hints": [
"4"
],
"is_covered_with_solder_mask": false,
"soldermask_margin": 0.025,
"x": 0.65,
"y": 4.21,
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "pcb_smtpad",
"pcb_smtpad_id": "pcb_smtpad_4",
"pcb_component_id": "pcb_component_0",
"pcb_port_id": "pcb_port_4",
"layer": "top",
"shape": "rect",
"width": 0.35,
"height": 2.7,
"port_hints": [
"5"
],
"is_covered_with_solder_mask": false,
"soldermask_margin": 0.025,
"x": 1.3,
"y": 4.21,
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "pcb_port",
"pcb_port_id": "pcb_port_0",
"pcb_component_id": "pcb_component_0",
"layers": [
"top"
],
"subcircuit_id": "subcircuit_source_group_0",
"x": -1.3,
"y": 4.21,
"source_port_id": "source_port_0"
},
{
"type": "pcb_port",
"pcb_port_id": "pcb_port_1",
"pcb_component_id": "pcb_component_0",
"layers": [
"top"
],
"subcircuit_id": "subcircuit_source_group_0",
"x": -0.65,
"y": 4.21,
"source_port_id": "source_port_1"
},
{
"type": "pcb_port",
"pcb_port_id": "pcb_port_2",
"pcb_component_id": "pcb_component_0",
"layers": [
"top"
],
"subcircuit_id": "subcircuit_source_group_0",
"x": 0,
"y": 4.21,
"source_port_id": "source_port_2"
},
{
"type": "pcb_port",
"pcb_port_id": "pcb_port_3",
"pcb_component_id": "pcb_component_0",
"layers": [
"top"
],
"subcircuit_id": "subcircuit_source_group_0",
"x": 0.65,
"y": 4.21,
"source_port_id": "source_port_3"
},
{
"type": "pcb_port",
"pcb_port_id": "pcb_port_4",
"pcb_component_id": "pcb_component_0",
"layers": [
"top"
],
"subcircuit_id": "subcircuit_source_group_0",
"x": 1.3,
"y": 4.21,
"source_port_id": "source_port_4"
},
{
"type": "pcb_component_missing_courtyard_warning",
"pcb_component_missing_courtyard_warning_id": "pcb_component_missing_courtyard_warning_0",
"warning_type": "pcb_component_missing_courtyard_warning",
"message": "J1 has no courtyard",
"pcb_component_id": "pcb_component_0",
"source_component_id": "source_component_0",
"subcircuit_id": "subcircuit_source_group_0"
},
{
"type": "source_project_metadata",
"source_filesystem_md5_hash": "98006b18a3453546d79afeffe98c26ca"
}
]