Add KiCad design
This commit is contained in:
parent
554d702279
commit
4e0f3a9d3c
21 changed files with 14684 additions and 0 deletions
29
kicad/.gitignore
vendored
Normal file
29
kicad/.gitignore
vendored
Normal file
|
@ -0,0 +1,29 @@
|
|||
# For PCBs designed using KiCad: https://www.kicad.org/
|
||||
# Format documentation: https://kicad.org/help/file-formats/
|
||||
|
||||
# Temporary files
|
||||
*.000
|
||||
*.bak
|
||||
*.bck
|
||||
*.kicad_pcb-bak
|
||||
*.kicad_sch-bak
|
||||
*-backups
|
||||
*.kicad_prl
|
||||
*.sch-bak
|
||||
*~
|
||||
_autosave-*
|
||||
*.tmp
|
||||
*-save.pro
|
||||
*-save.kicad_pcb
|
||||
fp-info-cache
|
||||
|
||||
# Netlist files (exported from Eeschema)
|
||||
*.net
|
||||
|
||||
# Autorouter files (exported from Pcbnew)
|
||||
*.dsn
|
||||
*.ses
|
||||
|
||||
# Exported BOM files
|
||||
*.xml
|
||||
*.csv
|
BIN
kicad/22060b.pdf
Normal file
BIN
kicad/22060b.pdf
Normal file
Binary file not shown.
1649
kicad/Digital Audio Switch.kicad_pcb
Normal file
1649
kicad/Digital Audio Switch.kicad_pcb
Normal file
File diff suppressed because it is too large
Load diff
490
kicad/Digital Audio Switch.kicad_pro
Normal file
490
kicad/Digital Audio Switch.kicad_pro
Normal file
|
@ -0,0 +1,490 @@
|
|||
{
|
||||
"board": {
|
||||
"3dviewports": [],
|
||||
"design_settings": {
|
||||
"defaults": {
|
||||
"board_outline_line_width": 0.09999999999999999,
|
||||
"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.15,
|
||||
"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": 3.0,
|
||||
"height": 5.0,
|
||||
"width": 3.5
|
||||
},
|
||||
"silk_line_width": 0.16,
|
||||
"silk_text_italic": false,
|
||||
"silk_text_size_h": 1.0,
|
||||
"silk_text_size_v": 1.0,
|
||||
"silk_text_thickness": 0.16,
|
||||
"silk_text_upright": false,
|
||||
"zones": {
|
||||
"min_clearance": 0.5
|
||||
}
|
||||
},
|
||||
"diff_pair_dimensions": [
|
||||
{
|
||||
"gap": 0.0,
|
||||
"via_gap": 0.0,
|
||||
"width": 0.0
|
||||
}
|
||||
],
|
||||
"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.0,
|
||||
"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.15,
|
||||
"min_text_height": 1.0,
|
||||
"min_text_thickness": 0.153,
|
||||
"min_through_hole_diameter": 0.3,
|
||||
"min_track_width": 0.0,
|
||||
"min_via_annular_width": 0.09999999999999999,
|
||||
"min_via_diameter": 0.5,
|
||||
"solder_mask_clearance": 0.0,
|
||||
"solder_mask_min_width": 0.0,
|
||||
"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": [
|
||||
0.0
|
||||
],
|
||||
"via_dimensions": [
|
||||
{
|
||||
"diameter": 0.0,
|
||||
"drill": 0.0
|
||||
}
|
||||
],
|
||||
"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": "error",
|
||||
"unannotated": "error",
|
||||
"unit_value_mismatch": "error",
|
||||
"unresolved_variable": "error",
|
||||
"wire_dangling": "error"
|
||||
}
|
||||
},
|
||||
"libraries": {
|
||||
"pinned_footprint_libs": [],
|
||||
"pinned_symbol_libs": []
|
||||
},
|
||||
"meta": {
|
||||
"filename": "Digital Audio Switch.kicad_pro",
|
||||
"version": 1
|
||||
},
|
||||
"net_settings": {
|
||||
"classes": [
|
||||
{
|
||||
"bus_width": 12,
|
||||
"clearance": 0.2,
|
||||
"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.25,
|
||||
"via_diameter": 0.8,
|
||||
"via_drill": 0.4,
|
||||
"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": [
|
||||
[
|
||||
"02af8df3-a318-4624-b925-4cd8474ced9c",
|
||||
""
|
||||
]
|
||||
],
|
||||
"text_variables": {}
|
||||
}
|
2285
kicad/Digital Audio Switch.kicad_sch
Normal file
2285
kicad/Digital Audio Switch.kicad_sch
Normal file
File diff suppressed because it is too large
Load diff
229
kicad/Digital Audio Switch.kicad_sym
Normal file
229
kicad/Digital Audio Switch.kicad_sym
Normal file
|
@ -0,0 +1,229 @@
|
|||
(kicad_symbol_lib (version 20220914) (generator kicad_symbol_editor)
|
||||
(symbol "ESP32_DevKit_V1_DOIT" (in_bom yes) (on_board yes)
|
||||
(property "Reference" "U" (at -11.43 34.29 0)
|
||||
(effects (font (size 1.27 1.27)))
|
||||
)
|
||||
(property "Value" "ESP32_DevKit_V1_DOIT" (at 11.43 34.29 0)
|
||||
(effects (font (size 1.27 1.27)))
|
||||
)
|
||||
(property "Footprint" "ESP32_DevKit_V1_DOIT:esp32_devkit_v1_doit" (at -11.43 34.29 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(property "Datasheet" "https://aliexpress.com/item/32864722159.html" (at -11.43 34.29 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(property "ki_keywords" "ESP32-WROOM-32 WiFi and Bluetooth microcontroller" (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(property "ki_description" "32-bit microcontroller module with WiFi and Bluetooth" (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(property "ki_fp_filters" "esp32?devkit?v1?doit*" (at 0 0 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(symbol "ESP32_DevKit_V1_DOIT_1_1"
|
||||
(rectangle (start -12.7 33.02) (end 12.7 -33.02)
|
||||
(stroke (width 0.254) (type solid))
|
||||
(fill (type background))
|
||||
)
|
||||
(pin input line (at -15.24 30.48 0) (length 2.54)
|
||||
(name "EN" (effects (font (size 1.27 1.27))))
|
||||
(number "1" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -17.78 180) (length 2.54)
|
||||
(name "IO27" (effects (font (size 1.27 1.27))))
|
||||
(number "10" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 10.16 180) (length 2.54)
|
||||
(name "IO14" (effects (font (size 1.27 1.27))))
|
||||
(number "11" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 15.24 180) (length 2.54)
|
||||
(name "IO12" (effects (font (size 1.27 1.27))))
|
||||
(number "12" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 12.7 180) (length 2.54)
|
||||
(name "IO13" (effects (font (size 1.27 1.27))))
|
||||
(number "13" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin power_in line (at -2.54 -35.56 90) (length 2.54)
|
||||
(name "GND" (effects (font (size 1.27 1.27))))
|
||||
(number "14" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin power_in line (at -2.54 35.56 270) (length 2.54)
|
||||
(name "VIN" (effects (font (size 1.27 1.27))))
|
||||
(number "15" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin power_in line (at 0 35.56 270) (length 2.54)
|
||||
(name "3V3" (effects (font (size 1.27 1.27))))
|
||||
(number "16" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin power_in line (at 0 -35.56 90) (length 2.54)
|
||||
(name "GND" (effects (font (size 1.27 1.27))))
|
||||
(number "17" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 7.62 180) (length 2.54)
|
||||
(name "IO15" (effects (font (size 1.27 1.27))))
|
||||
(number "18" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 25.4 180) (length 2.54)
|
||||
(name "IO2" (effects (font (size 1.27 1.27))))
|
||||
(number "19" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at -15.24 25.4 0) (length 2.54)
|
||||
(name "SENSOR_VP" (effects (font (size 1.27 1.27))))
|
||||
(number "2" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 20.32 180) (length 2.54)
|
||||
(name "IO4" (effects (font (size 1.27 1.27))))
|
||||
(number "20" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 5.08 180) (length 2.54)
|
||||
(name "IO16" (effects (font (size 1.27 1.27))))
|
||||
(number "21" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 2.54 180) (length 2.54)
|
||||
(name "IO17" (effects (font (size 1.27 1.27))))
|
||||
(number "22" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 17.78 180) (length 2.54)
|
||||
(name "IO5" (effects (font (size 1.27 1.27))))
|
||||
(number "23" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 0 180) (length 2.54)
|
||||
(name "IO18" (effects (font (size 1.27 1.27))))
|
||||
(number "24" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -2.54 180) (length 2.54)
|
||||
(name "IO19" (effects (font (size 1.27 1.27))))
|
||||
(number "25" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -5.08 180) (length 2.54)
|
||||
(name "IO21" (effects (font (size 1.27 1.27))))
|
||||
(number "26" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 22.86 180) (length 2.54)
|
||||
(name "RXD0/IO3" (effects (font (size 1.27 1.27))))
|
||||
(number "27" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 27.94 180) (length 2.54)
|
||||
(name "TXD0/IO1" (effects (font (size 1.27 1.27))))
|
||||
(number "28" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -7.62 180) (length 2.54)
|
||||
(name "IO22" (effects (font (size 1.27 1.27))))
|
||||
(number "29" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at -15.24 22.86 0) (length 2.54)
|
||||
(name "SENSOR_VN" (effects (font (size 1.27 1.27))))
|
||||
(number "3" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -10.16 180) (length 2.54)
|
||||
(name "IO23" (effects (font (size 1.27 1.27))))
|
||||
(number "30" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at 15.24 -25.4 180) (length 2.54)
|
||||
(name "IO34" (effects (font (size 1.27 1.27))))
|
||||
(number "4" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at 15.24 -27.94 180) (length 2.54)
|
||||
(name "IO35" (effects (font (size 1.27 1.27))))
|
||||
(number "5" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -20.32 180) (length 2.54)
|
||||
(name "IO32" (effects (font (size 1.27 1.27))))
|
||||
(number "6" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -22.86 180) (length 2.54)
|
||||
(name "IO33" (effects (font (size 1.27 1.27))))
|
||||
(number "7" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -12.7 180) (length 2.54)
|
||||
(name "IO25" (effects (font (size 1.27 1.27))))
|
||||
(number "8" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin bidirectional line (at 15.24 -15.24 180) (length 2.54)
|
||||
(name "IO26" (effects (font (size 1.27 1.27))))
|
||||
(number "9" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
)
|
||||
)
|
||||
(symbol "MCP42X1" (in_bom yes) (on_board yes)
|
||||
(property "Reference" "U" (at -6.35 11.43 0)
|
||||
(effects (font (size 1.27 1.27)))
|
||||
)
|
||||
(property "Value" "MCP42X1" (at 5.08 -8.89 0)
|
||||
(effects (font (size 1.27 1.27)))
|
||||
)
|
||||
(property "Footprint" "" (at -3.81 10.16 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(property "Datasheet" "" (at -3.81 10.16 0)
|
||||
(effects (font (size 1.27 1.27)) hide)
|
||||
)
|
||||
(symbol "MCP42X1_0_1"
|
||||
(rectangle (start -8.89 10.16) (end 8.89 -7.62)
|
||||
(stroke (width 0) (type default))
|
||||
(fill (type none))
|
||||
)
|
||||
)
|
||||
(symbol "MCP42X1_1_1"
|
||||
(pin input line (at -11.43 7.62 0) (length 2.54)
|
||||
(name "~{CS}" (effects (font (size 1.27 1.27))))
|
||||
(number "1" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at 11.43 0 180) (length 2.54)
|
||||
(name "P0B" (effects (font (size 1.27 1.27))))
|
||||
(number "10" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at 11.43 2.54 180) (length 2.54)
|
||||
(name "~{WP}" (effects (font (size 1.27 1.27))))
|
||||
(number "11" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at 11.43 5.08 180) (length 2.54)
|
||||
(name "~{SHDN}" (effects (font (size 1.27 1.27))))
|
||||
(number "12" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin output line (at 11.43 7.62 180) (length 2.54)
|
||||
(name "SDO" (effects (font (size 1.27 1.27))))
|
||||
(number "13" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin power_in line (at 0 12.7 270) (length 2.54)
|
||||
(name "V_{DD}" (effects (font (size 1.27 1.27))))
|
||||
(number "14" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at -11.43 5.08 0) (length 2.54)
|
||||
(name "SCK" (effects (font (size 1.27 1.27))))
|
||||
(number "2" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin input line (at -11.43 2.54 0) (length 2.54)
|
||||
(name "SDI" (effects (font (size 1.27 1.27))))
|
||||
(number "3" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin power_in line (at 0 -10.16 90) (length 2.54)
|
||||
(name "V_{SS}" (effects (font (size 1.27 1.27))))
|
||||
(number "4" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at -11.43 0 0) (length 2.54)
|
||||
(name "P1B" (effects (font (size 1.27 1.27))))
|
||||
(number "5" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at -11.43 -2.54 0) (length 2.54)
|
||||
(name "P1W" (effects (font (size 1.27 1.27))))
|
||||
(number "6" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at -11.43 -5.08 0) (length 2.54)
|
||||
(name "P1A" (effects (font (size 1.27 1.27))))
|
||||
(number "7" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at 11.43 -5.08 180) (length 2.54)
|
||||
(name "P0A" (effects (font (size 1.27 1.27))))
|
||||
(number "8" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
(pin passive line (at 11.43 -2.54 180) (length 2.54)
|
||||
(name "P0W" (effects (font (size 1.27 1.27))))
|
||||
(number "9" (effects (font (size 1.27 1.27))))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
|
@ -0,0 +1,60 @@
|
|||
(footprint "Jack_3.5mm_CUI_SJ1-3533NG_Horizontal" (version 20221018) (generator pcbnew)
|
||||
(layer "F.Cu")
|
||||
(descr "TRS 3.5mm, horizontal, through-hole, https://www.cui.com/product/resource/sj1-353xng.pdf")
|
||||
(tags "TRS audio jack stereo horizontal")
|
||||
(attr through_hole)
|
||||
(fp_text reference "REF**" (at 0.1 10.16) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 854a9a99-f6c4-4143-a6d3-02da7318c23b)
|
||||
)
|
||||
(fp_text value "Jack_3.5mm_CUI_SJ1-3533NG_Horizontal" (at 0.1 14.05) (layer "F.Fab")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 55dfc0bd-c69c-4611-a803-1ffefe4487c9)
|
||||
)
|
||||
(fp_text user "${REFERENCE}" (at 0.1 3.8) (layer "F.Fab")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 8671f380-15ec-41e5-8ff6-edcdc5f740b4)
|
||||
)
|
||||
(fp_line (start -4.12 -1.32) (end -2.22 -1.32)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 8f18a51e-2972-401c-9b96-321e5df21c2c))
|
||||
(fp_line (start -4.12 12.92) (end -4.12 -1.32)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp c0550477-1811-4868-b0c2-a05bea957f97))
|
||||
(fp_line (start 4.02 -1.32) (end 4.32 -1.32)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 71dbacd6-eb81-49d1-b247-835383521fbb))
|
||||
(fp_line (start 4.32 -1.32) (end 4.32 12.92)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 52218331-e05f-44b7-b44f-b6c3248c17c0))
|
||||
(fp_line (start 4.32 12.92) (end -4.12 12.92)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp e23ee627-313d-4008-9ccf-a69cd80ce24f))
|
||||
(fp_line (start -4.5 -5.7) (end -4.5 13.3)
|
||||
(stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp ae840f76-9142-4f13-8141-e19d9052d14e))
|
||||
(fp_line (start -4.5 13.3) (end 4.7 13.3)
|
||||
(stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 54ca7057-6d5e-4682-b3f4-76994b0e79d9))
|
||||
(fp_line (start 4.7 -5.7) (end -4.5 -5.7)
|
||||
(stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp 476869ce-3522-430a-a105-ce6effa4154a))
|
||||
(fp_line (start 4.7 13.3) (end 4.7 -5.7)
|
||||
(stroke (width 0.05) (type solid)) (layer "F.CrtYd") (tstamp e1d5ee48-ad6a-4191-8f37-e5ecd1b2e5c1))
|
||||
(fp_line (start -4 -1.2) (end -2.1 -1.2)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 0eb79afd-7bc9-4449-8d31-9d4c17d37b81))
|
||||
(fp_line (start -4 12.8) (end -4 -1.2)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 21164d22-3a42-4ba1-a680-b6a07b0a4909))
|
||||
(fp_line (start -2.1 -5.2) (end 3.9 -5.2)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 76425166-ffd7-495c-8b94-48f306f15d3b))
|
||||
(fp_line (start -2.1 -1.2) (end -2.1 -5.2)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp f9ba5d4d-a033-4a67-a498-cc27f7f3518d))
|
||||
(fp_line (start 3.9 -5.2) (end 3.9 -1.2)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 9c6ffd4f-7dd3-4ff2-9f39-84bbaad7a20b))
|
||||
(fp_line (start 3.9 -1.2) (end 4.2 -1.2)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 1887c5a3-4b0d-4f0f-a451-7198e098b00d))
|
||||
(fp_line (start 4.2 -1.2) (end 4.2 12.8)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp 93b52435-d2a1-4889-b985-dbf2447a2317))
|
||||
(fp_line (start 4.2 12.8) (end -4 12.8)
|
||||
(stroke (width 0.1) (type solid)) (layer "F.Fab") (tstamp d56fef3e-d89f-490f-8d91-ac27b0f6043e))
|
||||
(pad "R" thru_hole oval (at 2 7.9) (size 2.8 1.8) (drill oval 2 1) (layers "*.Cu" "*.Mask") (tstamp afeca3cb-7a59-4c3b-84e2-3246b021463c))
|
||||
(pad "S" thru_hole oval (at 0 0) (size 2.8 1.8) (drill oval 2 1) (layers "*.Cu" "*.Mask") (tstamp d153ceb8-d226-47b6-b4db-97af2987640a))
|
||||
(pad "T" thru_hole oval (at 2 2.4) (size 2.8 1.8) (drill oval 2 1) (layers "*.Cu" "*.Mask") (tstamp e69cb755-bd96-4e61-b0a1-7f9cc3b114cb))
|
||||
(model "${KICAD6_3DMODEL_DIR}/Connector_Audio.3dshapes/Jack_3.5mm_CUI_SJ1-3533NG_Horizontal.wrl"
|
||||
(offset (xyz 0 0 0))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
)
|
38
kicad/Digital Audio Switch.pretty/KLPX-0848A.kicad_mod
Normal file
38
kicad/Digital Audio Switch.pretty/KLPX-0848A.kicad_mod
Normal file
|
@ -0,0 +1,38 @@
|
|||
(footprint "KLPX-0848A" (version 20221018) (generator pcbnew)
|
||||
(layer "F.Cu")
|
||||
(descr "RCA-Connector, Chinch, Kycon KLPX-0848A-2-x")
|
||||
(tags "RCA-Connector, Chinch, Kycon KLPX-0848A-2-x, ")
|
||||
(attr through_hole)
|
||||
(fp_text reference "X" (at -7.95 -7) (layer "F.SilkS")
|
||||
(effects (font (size 1.524 1.524) (thickness 0.3048)))
|
||||
(tstamp a687cc6a-2b96-4772-98d4-aa4a58eb8034)
|
||||
)
|
||||
(fp_text value "KLPX-0848A" (at -3 8.45) (layer "F.SilkS")
|
||||
(effects (font (size 1.524 1.524) (thickness 0.3048)))
|
||||
(tstamp 628d058b-d400-4ef4-bccb-5ad40fb45485)
|
||||
)
|
||||
(fp_line (start -13.5 -4.15) (end -13.5 4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 20e78102-02a7-4a81-8826-511e355f42a2))
|
||||
(fp_line (start -12.3 4.15) (end -13.5 4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp c16ff088-996a-4115-be4e-58003a60747a))
|
||||
(fp_line (start -9.5 -4.15) (end -13.5 -4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 56a703dc-ff13-43e6-8ee3-39049cce5920))
|
||||
(fp_line (start -4 -5) (end -4 -4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp a2532430-9bab-4951-b7f6-4b76ade94936))
|
||||
(fp_line (start -4 -4.15) (end -9.5 -4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 05015997-3eac-4707-8f8e-cb027639a35a))
|
||||
(fp_line (start -4 4.15) (end -12.3 4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 6657e264-86bc-4352-94b0-c049d0533332))
|
||||
(fp_line (start -4 5) (end -4 4.15)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 7de1cfb9-da6f-496c-8eed-83fa7b2f6751))
|
||||
(fp_line (start 6 -5) (end -4 -5)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp fc8939b4-aa45-4484-86a2-495a3ba7977c))
|
||||
(fp_line (start 6 -5) (end 6 -3)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 8a5d2af4-e7c4-44d2-a720-df1ef6efdcb4))
|
||||
(fp_line (start 6 3) (end 6 5)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 916de666-35f0-462e-b476-20114b3ceadd))
|
||||
(fp_line (start 6 5) (end -4 5)
|
||||
(stroke (width 0.381) (type solid)) (layer "F.SilkS") (tstamp 527f6269-7347-44e6-8d95-0bf6756cedec))
|
||||
(pad "1" thru_hole oval (at 4.5 0) (size 3.5 5) (drill 3) (layers "*.Cu" "*.Mask") (tstamp 6581fcd8-0963-4571-8504-46e1cabe73a8))
|
||||
(pad "2" thru_hole oval (at 0 0) (size 4 5.5) (drill 3.3) (layers "*.Cu" "*.Mask") (tstamp 82f22a68-97aa-4238-84cd-c8df978d2858))
|
||||
)
|
175
kicad/Digital Audio Switch.pretty/PCM5102.kicad_mod
Normal file
175
kicad/Digital Audio Switch.pretty/PCM5102.kicad_mod
Normal file
|
@ -0,0 +1,175 @@
|
|||
(footprint "PCM5102" (version 20221018) (generator pcbnew)
|
||||
(layer "F.Cu")
|
||||
(attr through_hole)
|
||||
(fp_text reference "IC3" (at -9.7415 1.5845) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp d6cf878b-36a6-4ed9-9f1a-282cef0b5647)
|
||||
)
|
||||
(fp_text value "PCM5102 Audio Stereo DAC" (at -3.9 11.1 90) (layer "F.Fab")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp f29bacc3-c525-4387-aaa9-93d83096b240)
|
||||
)
|
||||
(fp_line (start -7.9 -1.4) (end -7.9 15.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 1b2e2618-85e1-4add-b374-a86391f560eb))
|
||||
(fp_line (start -7.9 15.6) (end 24.1 15.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 24b4ecc0-5bae-41f7-8001-f7eea6d42ea5))
|
||||
(fp_line (start -2.15 5.1) (end -0.9 5.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 07fc2dde-d4c3-43ee-8b83-6ca47f42c0b3))
|
||||
(fp_line (start -2.15 13.35) (end -2.15 5.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp b72bc4d1-094c-4b3b-bc98-8cbee512a7a9))
|
||||
(fp_line (start -0.9 5.1) (end -0.9 13.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 837d4a35-e770-4f98-9a47-9c1a84b1f4ec))
|
||||
(fp_line (start -0.9 13.35) (end -2.15 13.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp cc6c6453-a803-4cf0-bbc6-d1ab7caac4ab))
|
||||
(fp_line (start 0.6 2.85) (end 1.6 2.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp ffb60a81-bdbb-49d8-9a45-18905702432d))
|
||||
(fp_line (start 0.6 4.35) (end 0.6 2.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 25e4afb1-4552-471a-9fcf-58b3cc4f14c5))
|
||||
(fp_line (start 1.1 12.35) (end 1.1 12.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 6de3c35e-8ecb-4767-bc45-4830afe9d7f0))
|
||||
(fp_line (start 1.1 12.6) (end 1.1 14.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp cdcf28d4-19e5-4a43-8700-cbd66a0a831c))
|
||||
(fp_line (start 1.1 14.6) (end 1.85 14.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 44f5e737-0233-4b9a-b5a5-96c147776c14))
|
||||
(fp_line (start 1.6 2.85) (end 1.6 4.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp ae45f963-f6be-43e7-9992-8965ad8dbfa9))
|
||||
(fp_line (start 1.6 4.35) (end 0.6 4.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4eedadb4-5586-4b0b-b0fa-fc15630d7841))
|
||||
(fp_line (start 1.85 12.35) (end 1.1 12.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 183e1662-66b1-46fb-af9a-a65e4612beb8))
|
||||
(fp_line (start 1.85 14.6) (end 1.85 12.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp c98416f2-0dde-4de3-803a-a203ea95c19e))
|
||||
(fp_line (start 2.1 5.1) (end 7.1 5.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 28ce6f57-039b-490f-adc7-d2573891d649))
|
||||
(fp_line (start 2.1 11.6) (end 2.1 5.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 493deeb5-6ab7-4ff8-9323-20d646a0bc96))
|
||||
(fp_line (start 3.1 2.1) (end 3.1 4.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 3900625c-b087-46cc-848a-4db8d4ebc10d))
|
||||
(fp_line (start 3.1 4.6) (end 5.1 4.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp b014ced0-056e-44bb-95a4-fec42c229609))
|
||||
(fp_line (start 3.1 12.1) (end 3.1 14.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 3f03a04e-3a6f-47c1-a74f-f2895dc6227e))
|
||||
(fp_line (start 3.1 14.85) (end 4.35 14.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp fb706836-dee8-4c10-a067-1684e019674c))
|
||||
(fp_line (start 4.35 12.1) (end 3.1 12.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp eec9b750-4d9f-4795-8226-8a39ac99c238))
|
||||
(fp_line (start 4.35 12.1) (end 5.1 12.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp d63c1199-9cde-42c7-a44b-9d9424ee51f5))
|
||||
(fp_line (start 5.1 2.1) (end 3.1 2.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4fce0f7e-5c8d-4e98-83d4-fe2ccbde35cb))
|
||||
(fp_line (start 5.1 4.6) (end 5.1 2.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 1c2da1b4-d1b0-4104-aa52-4426a0cf0b62))
|
||||
(fp_line (start 5.1 12.1) (end 5.1 14.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp fef0cc2a-3656-4f42-a01e-59e482b0ba55))
|
||||
(fp_line (start 5.1 14.85) (end 4.35 14.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 8511dc06-e9df-400e-acf5-381196202551))
|
||||
(fp_line (start 7.1 5.1) (end 7.1 11.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp a6758c38-2f57-42f2-b723-da0adb247e7b))
|
||||
(fp_line (start 7.1 11.6) (end 2.1 11.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 3b30484f-11a6-4c36-a99a-249dc197d1b6))
|
||||
(fp_line (start 7.85 12.85) (end 7.85 13.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 0df9b53a-cf22-49b9-8969-bd23f8f7441c))
|
||||
(fp_line (start 7.85 13.1) (end 7.85 13.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 349dd35a-76b1-4f50-ba4e-a0e75a9df773))
|
||||
(fp_line (start 7.85 13.35) (end 7.85 14.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 67b89b78-e21a-4b13-81a9-3b708364192e))
|
||||
(fp_line (start 7.85 14.35) (end 8.6 14.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 85aa5c27-7295-427c-9b15-0cdb33d22a9d))
|
||||
(fp_line (start 8.35 3.1) (end 8.35 4.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp c3bf8ebc-9eb1-4b29-b544-6e776be4ecfc))
|
||||
(fp_line (start 8.35 4.35) (end 8.85 4.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 40e2e9ac-515c-4fb8-aa0a-ac7a0d67a0f8))
|
||||
(fp_line (start 8.6 12.85) (end 7.85 12.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp d503d011-5ebe-403e-a34d-bf01e822ba55))
|
||||
(fp_line (start 8.6 14.35) (end 8.6 12.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 390b2b54-ceef-492a-9a93-a7b7b8012170))
|
||||
(fp_line (start 8.85 3.1) (end 8.35 3.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 630bafc9-78b4-4865-928b-ff08e5137dd8))
|
||||
(fp_line (start 8.85 4.35) (end 8.85 3.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp a0b738d1-a170-4a83-9337-1f7534f02245))
|
||||
(fp_line (start 9.35 12.35) (end 9.35 14.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 1c3a4576-5638-423b-af34-02524fcc9e72))
|
||||
(fp_line (start 9.35 14.85) (end 10.85 14.85)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp e72b3d3d-a876-4841-a687-132825d30e65))
|
||||
(fp_line (start 9.6 2.6) (end 9.6 3.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp d655c20d-f717-4529-9897-5c9d60ffae75))
|
||||
(fp_line (start 9.6 2.85) (end 9.6 4.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp af1d2ee8-58c4-4b08-be96-385a398fa96f))
|
||||
(fp_line (start 9.6 4.6) (end 10.6 4.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 8ce2dfa0-6779-4787-8378-fc2326311e45))
|
||||
(fp_line (start 9.6 12.35) (end 9.35 12.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 26966920-b8c7-403d-a9a1-e0b331b69957))
|
||||
(fp_line (start 10.6 2.6) (end 9.6 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp dd32f672-6f8d-4e38-acb5-733157b76e57))
|
||||
(fp_line (start 10.6 4.6) (end 10.6 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 7baf7403-25c8-4463-a964-1e2b7b5ef974))
|
||||
(fp_line (start 10.85 12.35) (end 9.6 12.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4ee4e860-9719-42ed-aad4-44f6af111f2f))
|
||||
(fp_line (start 10.85 14.85) (end 10.85 12.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 30887242-34dc-4977-bd3c-097cf584240e))
|
||||
(fp_line (start 11.85 2.6) (end 11.85 15.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 68a5f817-48f9-4534-bbfa-953fe79b7477))
|
||||
(fp_line (start 11.85 15.1) (end 13.1 15.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp f3f02d38-0b24-46a2-a8b0-d0e995d7409a))
|
||||
(fp_line (start 13.1 2.6) (end 11.85 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 2f69ee00-508b-4dea-8e2a-38dac12accb3))
|
||||
(fp_line (start 13.1 15.1) (end 13.1 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp f3c5179c-0452-4c83-8b32-2876598168f2))
|
||||
(fp_line (start 14.1 2.1) (end 15.85 2.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 720a08eb-8b8c-4843-a21a-14c83597ef06))
|
||||
(fp_line (start 14.1 3.1) (end 14.1 2.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp b92fdb08-2e13-43a2-869c-887b8f1a898b))
|
||||
(fp_line (start 14.1 9.6) (end 15.6 9.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 244163c8-6d02-4a7a-8d19-759af8834cb7))
|
||||
(fp_line (start 14.1 10.6) (end 14.1 9.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp b292d55f-1adf-4495-9c91-8f4a388be66c))
|
||||
(fp_line (start 14.1 13.6) (end 15.6 13.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp a704ead3-ccef-4a6e-8c07-f7d2cce9c0d1))
|
||||
(fp_line (start 14.1 14.6) (end 14.1 13.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4df64dbc-47f1-460b-83b1-2bb9a532b69a))
|
||||
(fp_line (start 15.6 2.6) (end 21.6 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4db13f88-19d6-461e-9101-946210b3c368))
|
||||
(fp_line (start 15.6 3.1) (end 14.1 3.1)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 3241784e-3595-4549-868c-a8283c26215a))
|
||||
(fp_line (start 15.6 10.6) (end 14.1 10.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 1c2927b5-1006-491a-89ba-1534351cdd0d))
|
||||
(fp_line (start 15.6 14.6) (end 14.1 14.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 9ccab5b7-15d1-4681-a2e1-39de4033e493))
|
||||
(fp_line (start 15.6 15.6) (end 15.6 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp d5c3dd83-8abe-4956-ae20-2503cc9f8146))
|
||||
(fp_line (start 15.85 2.1) (end 15.85 2.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 847ceef1-3f7d-47c5-9e68-47ea9faa9e29))
|
||||
(fp_line (start 21.6 2.6) (end 21.6 15.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp d4a34f95-657f-48d9-ac63-ba2e83462337))
|
||||
(fp_line (start 21.6 3.35) (end 23.1 3.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 1e2d07ff-df56-4b19-9f52-f6489a9d608e))
|
||||
(fp_line (start 21.6 13.6) (end 23.1 13.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 0118a61e-5cc8-468b-b016-db1e2c540cd4))
|
||||
(fp_line (start 23.1 3.35) (end 23.1 4.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4dee0874-7c56-4cd4-ba84-df5652ad2945))
|
||||
(fp_line (start 23.1 4.35) (end 21.6 4.35)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 0dbea7c1-684f-4100-946b-398ab487c654))
|
||||
(fp_line (start 23.1 13.6) (end 23.1 14.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp abe20fec-d49f-4964-b263-cdd2025c750a))
|
||||
(fp_line (start 23.1 14.6) (end 21.6 14.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp b5d48905-6496-4eaa-aa6b-d794fca6daff))
|
||||
(fp_line (start 24.1 -1.4) (end -7.9 -1.4)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 4dd83648-8aa4-4684-ad9a-36b47cf635c6))
|
||||
(fp_line (start 24.1 -1.4) (end 24.1 15.6)
|
||||
(stroke (width 0.15) (type solid)) (layer "F.SilkS") (tstamp 575eb5d4-d480-4244-9d4d-2e0cb266f16e))
|
||||
(pad "1" thru_hole circle (at -6.5 13.45) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 6cd2cc95-c4d0-4d5a-b4a6-93e88584b5c5))
|
||||
(pad "2" thru_hole circle (at -6.5 10.91) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 2acd624f-66a8-4274-95ec-be4ed104d56c))
|
||||
(pad "3" thru_hole circle (at -6.5 8.37) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 41b0aa87-c037-4461-bc45-6934de8b9315))
|
||||
(pad "4" thru_hole circle (at -6.5 5.83) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 849b5895-b529-4b94-9a79-5535ab27a308))
|
||||
(pad "5" thru_hole circle (at -6.5 3.29) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 14badc96-c5bd-4fa1-bc85-0f4b2e4be8c3))
|
||||
(pad "6" thru_hole circle (at -6.5 0.75) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 4fda2274-c82d-4087-a753-f003186265cc))
|
||||
(pad "7" thru_hole circle (at 0 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp d70aafd5-d4db-48cf-add3-dc4bb6affa63))
|
||||
(pad "8" thru_hole circle (at 2.54 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 0b8febbc-db68-46e3-a861-a17184965bc2))
|
||||
(pad "9" thru_hole circle (at 5.08 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 03af928c-d90a-4d22-9950-13a072ba7cfe))
|
||||
(pad "10" thru_hole circle (at 7.62 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp fb7630bf-4033-4a2c-b311-de6eef642605))
|
||||
(pad "11" thru_hole circle (at 10.16 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 303dce5e-3520-4a66-b286-c7a1c9892bde))
|
||||
(pad "12" thru_hole circle (at 12.7 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 91e732b4-3c67-4adf-a8b1-898886e05875))
|
||||
(pad "13" thru_hole circle (at 15.24 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp 78b66ec9-19c8-44f0-992a-0721cc8ac532))
|
||||
(pad "14" thru_hole circle (at 17.78 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp b41a1ac0-3e01-4237-8b82-00d892a615fe))
|
||||
(pad "15" thru_hole circle (at 20.32 0) (size 1.75 1.75) (drill 1) (layers "*.Cu" "*.Mask") (tstamp f6d1aefa-c91b-460b-bd68-3da36c62731c))
|
||||
)
|
297
kicad/Digital Audio Switch.pretty/esp32_devkit_v1_doit.kicad_mod
Normal file
297
kicad/Digital Audio Switch.pretty/esp32_devkit_v1_doit.kicad_mod
Normal file
|
@ -0,0 +1,297 @@
|
|||
(footprint "esp32_devkit_v1_doit" (version 20221018) (generator pcbnew)
|
||||
(layer "F.Cu")
|
||||
(descr "ESPWROOM32, ESP32, 30 GPIOs version")
|
||||
(attr smd)
|
||||
(fp_text reference "REF**" (at 0 10.47) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp d69bf47a-fd01-4c12-b97b-92e0632a88c6)
|
||||
)
|
||||
(fp_text value "ESP32-DevKit-V1-DOIT" (at 0 8.7) (layer "F.Fab")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp b4d0ffa0-94af-46fd-8c38-6e55720faf34)
|
||||
)
|
||||
(fp_text user "USB" (at 0 43.49) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 53b7601b-93b6-44da-9315-3b6496ddebc0)
|
||||
)
|
||||
(fp_text user "Enable" (at -7.62 39.68) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp 6498ecc6-2c6c-4ee7-a6e7-8b623f122ef4)
|
||||
)
|
||||
(fp_text user "Boot" (at 7.62 39.68) (layer "F.SilkS")
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
(tstamp c54f0397-22cf-4c05-8075-ad5613abe0da)
|
||||
)
|
||||
(fp_line (start -14 -4.04) (end -14 43.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp ecf83049-7331-4b47-b4ac-46861a298284))
|
||||
(fp_line (start -12 -6.04) (end 12 -6.04)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp bc87dac0-2dc6-4b2f-b1ee-764ed7dc9872))
|
||||
(fp_line (start -12 45.46) (end 12 45.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 910713b1-3be2-4d83-8c7d-49a033a88583))
|
||||
(fp_line (start -8.89 -4.77) (end 8.89 -4.77)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 5c7e463f-4627-48bd-bcfd-14a2c5f4f4d7))
|
||||
(fp_line (start -8.89 0.31) (end -8.89 -4.77)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp e0916111-11ea-42c5-98e6-190f0ef432b9))
|
||||
(fp_line (start -8.89 40.95) (end -6.35 40.95)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 3d6204cc-fe42-4870-b127-cd0c33fc3522))
|
||||
(fp_line (start -8.89 44.76) (end -8.89 40.95)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 9e0edbcb-bb56-4d28-8154-df40c3b23eb8))
|
||||
(fp_line (start -7.62 -4.008) (end -5.08 -4.008)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp f716b05e-34ce-4e69-9015-46e4247aae63))
|
||||
(fp_line (start -7.62 -0.452) (end -7.62 -4.008)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 7bb83ce2-a23f-4587-851d-b7ba3770a954))
|
||||
(fp_line (start -7.5 0.96) (end 7.5 0.96)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 46514d9f-9266-47d3-bb62-2a5871b5b166))
|
||||
(fp_line (start -7.5 18.96) (end -7.5 0.96)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 3981393d-a88f-4be0-81f6-cf2d9dfc42a3))
|
||||
(fp_line (start -6.35 40.95) (end -6.35 44.76)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp a25b48c4-2db3-4587-a827-3975fbbd8fc9))
|
||||
(fp_line (start -6.35 44.76) (end -8.89 44.76)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 7a2a0bb8-6b98-4efc-91b4-a0f62b7a6442))
|
||||
(fp_line (start -5.08 -4.008) (end -5.08 -1.976)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 5a592a60-6235-4962-8eaa-1b66dd1dc171))
|
||||
(fp_line (start -5.08 -1.976) (end -2.54 -1.976)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 84bb1fc7-b61e-4031-a2df-15b38a708636))
|
||||
(fp_line (start -4 39.46) (end -4 45.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 83f7faeb-0f7f-4a5c-8fe7-07e564fcc387))
|
||||
(fp_line (start -4 39.46) (end 4 39.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp b1919601-64dc-4bef-9052-bd67dd694ea2))
|
||||
(fp_line (start -2.54 -4.008) (end 0 -4.008)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp fa5e97fa-15fc-4293-9ae6-0033c803b087))
|
||||
(fp_line (start -2.54 -1.976) (end -2.54 -4.008)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 19e86872-7ea1-4185-b8fb-4c34e9618324))
|
||||
(fp_line (start 0 -4.008) (end 0 -1.976)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp e8403213-6697-402d-9289-dc98701d12fc))
|
||||
(fp_line (start 0 -1.976) (end 2.54 -1.976)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 487343dd-4517-4bc8-bdd9-5a46e0d9babc))
|
||||
(fp_line (start 2.54 -4.008) (end 7.62 -4.008)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 58cca438-71a7-4053-a91f-42baccb8d16e))
|
||||
(fp_line (start 2.54 -1.976) (end 2.54 -4.008)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 01e38a92-bff7-44c3-a2c5-8843f99e2a2f))
|
||||
(fp_line (start 4 39.46) (end 4 45.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 6179a967-24a1-4dc1-9c72-93624cccf6fa))
|
||||
(fp_line (start 5.08 -4.008) (end 5.08 -0.452)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 5620a175-fbaf-4f13-a632-3850402779be))
|
||||
(fp_line (start 6.35 40.95) (end 8.89 40.95)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 64e6b266-de08-4033-9b93-a11713ee9c96))
|
||||
(fp_line (start 6.35 44.76) (end 6.35 40.95)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 1d94b482-081f-4ec7-b71a-213a180c7933))
|
||||
(fp_line (start 7.5 0.96) (end 7.5 18.96)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 9aca596b-2181-47a2-8cde-244ff3dc9878))
|
||||
(fp_line (start 7.5 18.96) (end -7.5 18.96)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 478cc487-087e-4671-a188-b8f05ab2320e))
|
||||
(fp_line (start 7.62 -4.008) (end 7.62 -0.452)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 87125f54-e368-4f1c-ab64-98a8e0730187))
|
||||
(fp_line (start 8.89 -4.77) (end 8.89 0.31)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 6ef8f91f-8479-4adb-947a-bc59e23a3669))
|
||||
(fp_line (start 8.89 0.31) (end -8.89 0.31)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp d7df8fd5-080d-4466-8bc7-65e5e9516158))
|
||||
(fp_line (start 8.89 40.95) (end 8.89 44.76)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 0234794d-085a-4386-89b7-d4a34bbcf482))
|
||||
(fp_line (start 8.89 44.76) (end 6.35 44.76)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp b6c774c4-080a-4700-b5f4-1f97889e0061))
|
||||
(fp_line (start 14 43.46) (end 14 -4.04)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 3580e8cb-69c7-4cb5-9079-21730307138a))
|
||||
(fp_arc (start -14 -4.04) (mid -13.414214 -5.454214) (end -12 -6.04)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp a85ac094-a7d1-4b1f-ae69-0926c0b64d8c))
|
||||
(fp_arc (start -12 45.46) (mid -13.414214 44.874214) (end -14 43.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 35a1625b-5320-4ab8-af92-c13c7718c176))
|
||||
(fp_arc (start 12 -6.04) (mid 13.414214 -5.454214) (end 14 -4.04)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp 954312ad-49bd-4cc1-9e8b-38a383195250))
|
||||
(fp_arc (start 14 43.46) (mid 13.414214 44.874214) (end 12 45.46)
|
||||
(stroke (width 0.12) (type solid)) (layer "F.SilkS") (tstamp b9bb448e-86a3-4d67-b310-8db9f3ab492d))
|
||||
(fp_circle (center -11.7 -4.04) (end -10.2 -4.04)
|
||||
(stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS") (tstamp b9ef1cb0-03d6-40cd-94a5-9097f1e95a51))
|
||||
(fp_circle (center -11.7 43.46) (end -10.2 43.46)
|
||||
(stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS") (tstamp 2efe322c-6fbf-4e5f-9832-5de9dfef1830))
|
||||
(fp_circle (center -7.62 42.855) (end -7.32 42.855)
|
||||
(stroke (width 1) (type solid)) (fill none) (layer "F.SilkS") (tstamp e9315b12-e1b1-4990-b06c-fe6c2542e0d7))
|
||||
(fp_circle (center -5.08 16.82) (end -4.68 16.82)
|
||||
(stroke (width 0.8) (type solid)) (fill none) (layer "F.SilkS") (tstamp 2c6e282f-b719-4b09-9305-3975963c5202))
|
||||
(fp_circle (center 7.62 42.855) (end 7.92 42.855)
|
||||
(stroke (width 1) (type solid)) (fill none) (layer "F.SilkS") (tstamp f06bb9da-2ac9-48cc-8d71-70e9ea7a9fa0))
|
||||
(fp_circle (center 11.7 -4.04) (end 13.2 -4.04)
|
||||
(stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS") (tstamp bb5e2333-7eeb-4749-9f32-d89f63ad7aaf))
|
||||
(fp_circle (center 11.7 43.46) (end 13.2 43.46)
|
||||
(stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS") (tstamp 3307419d-9405-4d7e-a4b5-3621ee2b0df6))
|
||||
(pad "1" thru_hole rect (at -12.7 0) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 7821671d-d6e5-47f6-a528-9c5454eb4de1))
|
||||
(pad "2" thru_hole circle (at -12.7 2.54) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 1f394081-c7f4-4582-bfa2-aaaefeb198ea))
|
||||
(pad "3" thru_hole circle (at -12.7 5.08) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 7dcd3ebe-3bdf-4bb8-8e22-370a2e718dad))
|
||||
(pad "4" thru_hole circle (at -12.7 7.62) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp c36d9335-6ad8-4ae9-8e58-2e81071c9e39))
|
||||
(pad "5" thru_hole circle (at -12.7 10.16) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 102554a3-8e91-47b7-b765-2eab127d836e))
|
||||
(pad "6" thru_hole circle (at -12.7 12.7) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp edc5c1e5-26b7-4586-a243-42fedd6bf278))
|
||||
(pad "7" thru_hole circle (at -12.7 15.24) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp fdca7585-3de0-4e74-87a3-dd1ae2689a54))
|
||||
(pad "8" thru_hole circle (at -12.7 17.78) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp c7cac3a8-3459-42a6-ba86-9c215da14d0f))
|
||||
(pad "9" thru_hole circle (at -12.7 20.32) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 15c99939-c0cd-4842-ab2b-54f7b5968e97))
|
||||
(pad "10" thru_hole circle (at -12.7 22.86) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 173d27b7-6862-441e-a36d-9c362698e1c5))
|
||||
(pad "11" thru_hole circle (at -12.7 25.4) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp e0d38ed8-e068-45de-8d27-b8ef9d8a0b01))
|
||||
(pad "12" thru_hole circle (at -12.7 27.94) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp db71a40b-ba46-480d-890a-b6f4d7ee60e9))
|
||||
(pad "13" thru_hole circle (at -12.7 30.48) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp d3d371f3-91e9-43e2-9556-45ef5680402a))
|
||||
(pad "14" thru_hole circle (at -12.7 33.02) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp d2314704-2413-49f2-907b-5cfd8f6e5e7d))
|
||||
(pad "15" thru_hole circle (at -12.7 35.56) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp ca17c61d-7a23-4c92-be81-27096b12f93c))
|
||||
(pad "16" thru_hole circle (at 12.7 35.56) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 1c16fdc1-4ec5-415e-837d-fe9a7f646c06))
|
||||
(pad "17" thru_hole circle (at 12.7 33.02) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp c3a470bd-e551-495a-97cc-c4c15be1ddd1))
|
||||
(pad "18" thru_hole circle (at 12.7 30.48) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp ee4f88ff-46b6-4c16-b5cc-25ba7aa1a79c))
|
||||
(pad "19" thru_hole circle (at 12.7 27.94) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 2d6474ce-5b4c-405f-a98f-decf02245be0))
|
||||
(pad "20" thru_hole circle (at 12.7 25.4) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 73913004-0c69-4b46-a5eb-c3a1666c9d59))
|
||||
(pad "21" thru_hole circle (at 12.7 22.86) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 04ab3815-76b7-41c0-9faf-0e9dc4f6e544))
|
||||
(pad "22" thru_hole circle (at 12.7 20.32) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp f66550bd-ae4a-417d-8617-dc13501bcd7c))
|
||||
(pad "23" thru_hole circle (at 12.7 17.78) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 1c42f703-e590-4c8c-aa59-ad4070d0b7df))
|
||||
(pad "24" thru_hole circle (at 12.7 15.24) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 20d4da6c-68c4-45f8-ac57-ddb1acd2c2f0))
|
||||
(pad "25" thru_hole circle (at 12.7 12.7) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 03088fae-e1bd-42c2-b1a1-bea22438fb32))
|
||||
(pad "26" thru_hole circle (at 12.7 10.16) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp f7e92b4f-aed2-40e2-941c-477f97c9f6da))
|
||||
(pad "27" thru_hole circle (at 12.7 7.62) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 356a6717-48d5-4663-97e1-0ade5147876c))
|
||||
(pad "28" thru_hole circle (at 12.7 5.08) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 6f7c837d-32f0-4382-8e5d-01ee70ce0ff3))
|
||||
(pad "29" thru_hole circle (at 12.7 2.54) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 0e2882c6-f145-48d6-bf17-b13a55fcdac4))
|
||||
(pad "30" thru_hole circle (at 12.7 0) (size 1.524 1.524) (drill 0.762) (layers "*.Cu" "*.Mask") (tstamp 8a4b0972-f26e-47de-9a0d-1c8038da7e36))
|
||||
(model "${KISYS3DMOD}/Button_Switch_SMD.3dshapes/SW_SPST_B3U-1000P-B.wrl"
|
||||
(offset (xyz 7.5 -43 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Button_Switch_SMD.3dshapes/SW_SPST_B3U-1000P-B.wrl"
|
||||
(offset (xyz -7.5 -43 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x15_P2.54mm_Vertical.wrl"
|
||||
(offset (xyz -12.7 0 2.5))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 180 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Connector_PinHeader_2.54mm.3dshapes/PinHeader_1x15_P2.54mm_Vertical.wrl"
|
||||
(offset (xyz 12.7 0 2.5))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 180 0))
|
||||
)
|
||||
(model "${VL_PACKAGES3D}/esp32_devkit_v1_doit.3dshapes/esp32_devkit_v1_doit.step"
|
||||
(offset (xyz -12.7 0 2.5))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Connector_USB.3dshapes/USB_Micro-B_Molex_47346-0001.wrl"
|
||||
(offset (xyz 0 -42 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/LED_SMD.3dshapes/LED_1206_3216Metric.wrl"
|
||||
(offset (xyz -6 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 -90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/LED_SMD.3dshapes/LED_1206_3216Metric.wrl"
|
||||
(offset (xyz 6 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 -90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Capacitor_Tantalum_SMD.3dshapes/CP_EIA-2012-15_AVX-P.wrl"
|
||||
(offset (xyz -6.5 -27.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Package_TO_SOT_SMD.3dshapes/SOT-223.wrl"
|
||||
(offset (xyz -6 -33 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 -180))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz -7 -38.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 8.5 -38.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 5.5 -38.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Package_TO_SOT_SMD.3dshapes/SOT-23.wrl"
|
||||
(offset (xyz -0.5 -27.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Package_TO_SOT_SMD.3dshapes/SOT-23.wrl"
|
||||
(offset (xyz 6 -27.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 -180))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 9 -27.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz -3.5 -27.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.wrl"
|
||||
(offset (xyz -0.5 -38.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Diode_SMD.3dshapes/D_0603_1608Metric.wrl"
|
||||
(offset (xyz -3 -38.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz -3 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz -1.5 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 0 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 1.5 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 3 -23 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 90))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Package_DFN_QFN.3dshapes/QFN-28-1EP_5x5mm_P0.5mm_EP3.35x3.35mm.wrl"
|
||||
(offset (xyz 7 -33.5 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 8.5 -22 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Resistor_SMD.3dshapes/R_0603_1608Metric.wrl"
|
||||
(offset (xyz 8.5 -24 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.wrl"
|
||||
(offset (xyz -8.5 -22 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/Capacitor_SMD.3dshapes/C_0603_1608Metric.wrl"
|
||||
(offset (xyz -8.5 -24 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
(model "${KISYS3DMOD}/RF_Module.3dshapes/ESP32-WROOM-32.wrl"
|
||||
(offset (xyz 0 -10 4))
|
||||
(scale (xyz 1 1 1))
|
||||
(rotate (xyz 0 0 0))
|
||||
)
|
||||
)
|
BIN
kicad/ESP32-Pinout.png
Normal file
BIN
kicad/ESP32-Pinout.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 39 KiB |
8944
kicad/KLPX-0848A-2-x.IGS
Normal file
8944
kicad/KLPX-0848A-2-x.IGS
Normal file
File diff suppressed because it is too large
Load diff
23
kicad/KLPX-0848A.kicad_mod
Normal file
23
kicad/KLPX-0848A.kicad_mod
Normal file
|
@ -0,0 +1,23 @@
|
|||
(module KLPX-0848A (layer F.Cu) (tedit 5A808D6D)
|
||||
(descr "RCA-Connector, Chinch, Kycon KLPX-0848A-2-x")
|
||||
(tags "RCA-Connector, Chinch, Kycon KLPX-0848A-2-x, ")
|
||||
(fp_text reference X (at -7.95 -7) (layer F.SilkS)
|
||||
(effects (font (thickness 0.3048)))
|
||||
)
|
||||
(fp_text value KLPX-0848A (at -3 8.45) (layer F.SilkS)
|
||||
(effects (font (thickness 0.3048)))
|
||||
)
|
||||
(fp_line (start -13.5 -4.15) (end -13.5 4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start -4 -4.15) (end -9.5 -4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start -9.5 -4.15) (end -13.5 -4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start -4 -5) (end -4 -4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start -12.3 4.15) (end -13.5 4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start -4 5) (end -4 4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start -4 4.15) (end -12.3 4.15) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start 6 -5) (end -4 -5) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start 6 3) (end 6 5) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start 6 5) (end -4 5) (layer F.SilkS) (width 0.381))
|
||||
(fp_line (start 6 -5) (end 6 -3) (layer F.SilkS) (width 0.381))
|
||||
(pad 2 thru_hole oval (at 0 0) (size 4 5.5) (drill 3.3) (layers *.Cu *.Mask F.SilkS))
|
||||
(pad 1 thru_hole oval (at 4.5 0) (size 3.5 5) (drill 3) (layers *.Cu *.Mask F.SilkS))
|
||||
)
|
97
kicad/PCM5102.kicad_mod
Normal file
97
kicad/PCM5102.kicad_mod
Normal file
|
@ -0,0 +1,97 @@
|
|||
(module PCM5102 (layer F.Cu) (tedit 5ABC1B22)
|
||||
(fp_text reference IC3 (at -9.7415 1.5845) (layer F.SilkS)
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
)
|
||||
(fp_text value "PCM5102 Audio Stereo DAC" (at -3.9 11.1 90) (layer F.Fab)
|
||||
(effects (font (size 1 1) (thickness 0.15)))
|
||||
)
|
||||
(fp_line (start 9.6 2.85) (end 9.6 4.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 9.6 4.6) (end 10.6 4.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 10.6 4.6) (end 10.6 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 10.6 2.6) (end 9.6 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 9.6 2.6) (end 9.6 3.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 8.35 3.1) (end 8.35 4.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 8.35 4.35) (end 8.85 4.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 8.85 4.35) (end 8.85 3.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 8.85 3.1) (end 8.35 3.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.6 4.35) (end 0.6 4.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 0.6 4.35) (end 0.6 2.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 0.6 2.85) (end 1.6 2.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.6 2.85) (end 1.6 4.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 3.1 4.6) (end 5.1 4.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 5.1 4.6) (end 5.1 2.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 5.1 2.1) (end 3.1 2.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 3.1 2.1) (end 3.1 4.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 11.85 15.1) (end 13.1 15.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 13.1 15.1) (end 13.1 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 13.1 2.6) (end 11.85 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 11.85 2.6) (end 11.85 15.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 9.35 12.35) (end 9.35 14.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 9.35 14.85) (end 10.85 14.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 10.85 14.85) (end 10.85 12.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 10.85 12.35) (end 9.6 12.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 9.6 12.35) (end 9.35 12.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 15.6 3.1) (end 14.1 3.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 14.1 3.1) (end 14.1 2.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 14.1 2.1) (end 15.85 2.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 15.85 2.1) (end 15.85 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start -0.9 5.1) (end -0.9 13.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start -0.9 13.35) (end -2.15 13.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start -2.15 13.35) (end -2.15 5.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start -2.15 5.1) (end -0.9 5.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 4.35 12.1) (end 5.1 12.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 5.1 12.1) (end 5.1 14.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 5.1 14.85) (end 4.35 14.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 21.6 3.35) (end 23.1 3.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 23.1 3.35) (end 23.1 4.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 23.1 4.35) (end 21.6 4.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 15.6 10.6) (end 14.1 10.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 14.1 10.6) (end 14.1 9.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 14.1 9.6) (end 15.6 9.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 21.6 13.6) (end 23.1 13.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 23.1 13.6) (end 23.1 14.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 23.1 14.6) (end 21.6 14.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 15.6 14.6) (end 14.1 14.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 14.1 14.6) (end 14.1 13.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 14.1 13.6) (end 15.6 13.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 7.85 13.35) (end 7.85 14.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 7.85 14.35) (end 8.6 14.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 8.6 14.35) (end 8.6 12.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 8.6 12.85) (end 7.85 12.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 7.85 12.85) (end 7.85 13.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 7.85 13.1) (end 7.85 13.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 3.1 12.1) (end 3.1 14.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 3.1 14.85) (end 4.35 14.85) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 4.35 12.1) (end 3.1 12.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.1 12.6) (end 1.1 14.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.1 14.6) (end 1.85 14.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.85 14.6) (end 1.85 12.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.85 12.35) (end 1.1 12.35) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 1.1 12.35) (end 1.1 12.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 2.1 5.1) (end 7.1 5.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 7.1 5.1) (end 7.1 11.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 7.1 11.6) (end 2.1 11.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 2.1 11.6) (end 2.1 5.1) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 15.6 15.6) (end 15.6 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 15.6 2.6) (end 21.6 2.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 21.6 2.6) (end 21.6 15.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start -7.9 15.6) (end 24.1 15.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 24.1 -1.4) (end 24.1 15.6) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start 24.1 -1.4) (end -7.9 -1.4) (layer F.SilkS) (width 0.15))
|
||||
(fp_line (start -7.9 -1.4) (end -7.9 15.6) (layer F.SilkS) (width 0.15))
|
||||
(pad 1 thru_hole circle (at -6.5 13.45) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 2 thru_hole circle (at -6.5 10.91) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 3 thru_hole circle (at -6.5 8.37) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 4 thru_hole circle (at -6.5 5.83) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 5 thru_hole circle (at -6.5 3.29) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 6 thru_hole circle (at -6.5 0.75) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 7 thru_hole circle (at 0 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 8 thru_hole circle (at 2.54 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 9 thru_hole circle (at 5.08 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 10 thru_hole circle (at 7.62 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 11 thru_hole circle (at 10.16 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 12 thru_hole circle (at 12.7 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 13 thru_hole circle (at 15.24 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 14 thru_hole circle (at 17.78 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
(pad 15 thru_hole circle (at 20.32 0) (size 1.75 1.75) (drill 1) (layers *.Cu *.Mask))
|
||||
)
|
BIN
kicad/Prototype.xcf
Normal file
BIN
kicad/Prototype.xcf
Normal file
Binary file not shown.
BIN
kicad/cd4051b.pdf
Normal file
BIN
kicad/cd4051b.pdf
Normal file
Binary file not shown.
4
kicad/fp-lib-table
Normal file
4
kicad/fp-lib-table
Normal file
|
@ -0,0 +1,4 @@
|
|||
(fp_lib_table
|
||||
(version 7)
|
||||
(lib (name "Digital Audio Switch")(type "KiCad")(uri "${KIPRJMOD}/Digital Audio Switch.pretty")(options "")(descr ""))
|
||||
)
|
29
kicad/main.py
Normal file
29
kicad/main.py
Normal file
|
@ -0,0 +1,29 @@
|
|||
from machine import Pin, SPI, SoftI2C
|
||||
import framebuf
|
||||
import ssd1306
|
||||
import mcp4
|
||||
|
||||
|
||||
i2c = SoftI2C(sda=Pin(2), scl=Pin(16))
|
||||
oled_width = 128
|
||||
oled_height = 32
|
||||
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)
|
||||
buf = bytearray((oled_height // 8) * oled_width)
|
||||
fbuf = framebuf.FrameBuffer1(buf, oled_width, oled_height)
|
||||
|
||||
|
||||
spi = SPI(1)
|
||||
cs = Pin(15, mode=Pin.OUT, value=1)
|
||||
pot = mcp4.MCP4(spi, cs)
|
||||
|
||||
|
||||
def update():
|
||||
PW0 = pot.read(0)
|
||||
PW1 = pot.read(1)
|
||||
oled.fill(0)
|
||||
oled.text(f"PW0: {PW0}", 0, 0)
|
||||
oled.text(f"PW1: {PW1}", 0, 10)
|
||||
oled.show()
|
||||
|
||||
|
||||
update()
|
164
kicad/mcp4.py
Normal file
164
kicad/mcp4.py
Normal file
|
@ -0,0 +1,164 @@
|
|||
"""MicroPython MCP413X/415X/423X/425X SPI driver
|
||||
|
||||
Driver for the 7/8-Bit Single/Dual SPI Digital POT with Volatile Memory from
|
||||
Microchip. (https://ww1.microchip.com/downloads/en/DeviceDoc/22060b.pdf)
|
||||
|
||||
Copyright 2023 Correl Roush
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the “Software”), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
"""
|
||||
|
||||
from machine import Pin, SPI
|
||||
|
||||
|
||||
class NetworkControl:
|
||||
def __init__(self, hw=True, a=True, w=True, b=True) -> None:
|
||||
self.forced_hardware_shutdown = hw
|
||||
self.terminal_a_connected = a
|
||||
self.wiper_connected = w
|
||||
self.terminal_b_connected = b
|
||||
|
||||
@staticmethod
|
||||
def from_bin(data: int) -> "NetworkControl":
|
||||
return NetworkControl(
|
||||
hw=bool(data & 0b1000),
|
||||
a=bool(data & 0b0100),
|
||||
w=bool(data & 0b0010),
|
||||
b=bool(data & 0b0001),
|
||||
)
|
||||
|
||||
def __repr__(self):
|
||||
return "<Network HW={hw} A={a} W={w} B={b}".format(
|
||||
hw=self.forced_hardware_shutdown,
|
||||
a=self.terminal_a_connected,
|
||||
w=self.wiper_connected,
|
||||
b=self.terminal_b_connected,
|
||||
)
|
||||
|
||||
|
||||
class TerminalControl:
|
||||
def __init__(self, resistor_0: NetworkControl, resistor_1: NetworkControl) -> None:
|
||||
self.resistor_0 = resistor_0
|
||||
self.resistor_1 = resistor_1
|
||||
|
||||
@staticmethod
|
||||
def from_bin(data: int) -> "TerminalControl":
|
||||
return TerminalControl(
|
||||
resistor_0=NetworkControl.from_bin(data),
|
||||
resistor_1=NetworkControl.from_bin(data >> 4),
|
||||
)
|
||||
|
||||
def __repr__(self):
|
||||
return "<Terminals 0:{r0} 1:{r1}>".format(
|
||||
r0=self.resistor_0,
|
||||
r1=self.resistor_1,
|
||||
)
|
||||
|
||||
|
||||
class MCP4:
|
||||
"""MicroPython MCP413X/415X/423X/425X SPI driver"""
|
||||
|
||||
ADDRESS_WIPER_0 = 0x00
|
||||
ADDRESS_WIPER_1 = 0x01
|
||||
ADDRESS_TCON = 0x04
|
||||
ADDRESS_STATUS = 0x05
|
||||
|
||||
CMD_WRITE = 0b00
|
||||
CMD_INCREMENT = 0b01
|
||||
CMD_DECREMENT = 0b10
|
||||
CMD_READ = 0b11
|
||||
|
||||
def __init__(self, spi: SPI, cs: Pin) -> None:
|
||||
self.spi = spi
|
||||
self.cs = cs
|
||||
|
||||
def _bytes(self, address: int, command: int, data: int = 0x0) -> bytearray:
|
||||
"""Translate an address, command, and data into bytes to send.
|
||||
|
||||
- Address is a 4-bit memory address.
|
||||
- Command is a 2-bit command code.
|
||||
- Data is 2 bits for increment and decrement operations (ignored), and
|
||||
10 bits for read and write operations.
|
||||
|
||||
"""
|
||||
command_byte = address << 4 & 0b11110000 | command << 2 & 0b00001100
|
||||
if command in (0b00, 0b11):
|
||||
# Include data byte for 10 total bits of data
|
||||
return bytearray([command_byte | (0b11 & data >> 8), data & 0xFF])
|
||||
return bytearray([command_byte])
|
||||
|
||||
def _write(self, data: bytearray) -> bytearray:
|
||||
"""Write data to the SPI interface, returning its output."""
|
||||
output = bytearray(len(data))
|
||||
self.spi.write_readinto(data, output)
|
||||
return output
|
||||
|
||||
def do(self, address: int, command: int, data: int = 0x0) -> int:
|
||||
"""Execute a command on the MCP4, returning its integer result."""
|
||||
self.cs(0)
|
||||
output = self._write(self._bytes(address, command, data))
|
||||
self.cs(1)
|
||||
|
||||
OK = 0b11111110
|
||||
if OK != output[0] & OK:
|
||||
self.cs(0)
|
||||
raise ValueError("Invalid command")
|
||||
result = output[0] & 0b01
|
||||
if len(output) > 1:
|
||||
result <<= 8
|
||||
result |= output[1]
|
||||
return result
|
||||
|
||||
def increment(self, wiper: int = 0) -> int:
|
||||
"""Increment a wiper."""
|
||||
return self.do(
|
||||
address=self.ADDRESS_WIPER_1 if wiper == 1 else self.ADDRESS_WIPER_0,
|
||||
command=self.CMD_INCREMENT,
|
||||
)
|
||||
|
||||
def decrement(self, wiper: int = 0) -> int:
|
||||
"""Decrement a wiper."""
|
||||
return self.do(
|
||||
address=self.ADDRESS_WIPER_1 if wiper == 1 else self.ADDRESS_WIPER_0,
|
||||
command=self.CMD_DECREMENT,
|
||||
)
|
||||
|
||||
def read(self, wiper: int = 0) -> int:
|
||||
"""Read the current value of a wiper."""
|
||||
return self.do(
|
||||
address=self.ADDRESS_WIPER_1 if wiper == 1 else self.ADDRESS_WIPER_0,
|
||||
command=self.CMD_READ,
|
||||
)
|
||||
|
||||
def write(self, wiper: int = 0, data: int = 0x00) -> int:
|
||||
"""Set a value for a wiper."""
|
||||
return self.do(
|
||||
address=self.ADDRESS_WIPER_1 if wiper == 1 else self.ADDRESS_WIPER_0,
|
||||
command=self.CMD_WRITE,
|
||||
data=data,
|
||||
)
|
||||
|
||||
def is_shutdown(self) -> bool:
|
||||
status = self.do(address=self.ADDRESS_STATUS, command=self.CMD_READ)
|
||||
return status & 0b10 == 0b10
|
||||
|
||||
@property
|
||||
def control(self) -> TerminalControl:
|
||||
data = self.do(address=self.ADDRESS_TCON, command=self.CMD_READ)
|
||||
return TerminalControl.from_bin(data)
|
167
kicad/ssd1306.py
Normal file
167
kicad/ssd1306.py
Normal file
|
@ -0,0 +1,167 @@
|
|||
#MicroPython SSD1306 OLED driver, I2C and SPI interfaces created by Adafruit
|
||||
|
||||
import time
|
||||
import framebuf
|
||||
|
||||
# register definitions
|
||||
SET_CONTRAST = const(0x81)
|
||||
SET_ENTIRE_ON = const(0xa4)
|
||||
SET_NORM_INV = const(0xa6)
|
||||
SET_DISP = const(0xae)
|
||||
SET_MEM_ADDR = const(0x20)
|
||||
SET_COL_ADDR = const(0x21)
|
||||
SET_PAGE_ADDR = const(0x22)
|
||||
SET_DISP_START_LINE = const(0x40)
|
||||
SET_SEG_REMAP = const(0xa0)
|
||||
SET_MUX_RATIO = const(0xa8)
|
||||
SET_COM_OUT_DIR = const(0xc0)
|
||||
SET_DISP_OFFSET = const(0xd3)
|
||||
SET_COM_PIN_CFG = const(0xda)
|
||||
SET_DISP_CLK_DIV = const(0xd5)
|
||||
SET_PRECHARGE = const(0xd9)
|
||||
SET_VCOM_DESEL = const(0xdb)
|
||||
SET_CHARGE_PUMP = const(0x8d)
|
||||
|
||||
|
||||
class SSD1306:
|
||||
def __init__(self, width, height, external_vcc):
|
||||
self.width = width
|
||||
self.height = height
|
||||
self.external_vcc = external_vcc
|
||||
self.pages = self.height // 8
|
||||
# Note the subclass must initialize self.framebuf to a framebuffer.
|
||||
# This is necessary because the underlying data buffer is different
|
||||
# between I2C and SPI implementations (I2C needs an extra byte).
|
||||
self.poweron()
|
||||
self.init_display()
|
||||
|
||||
def init_display(self):
|
||||
for cmd in (
|
||||
SET_DISP | 0x00, # off
|
||||
# address setting
|
||||
SET_MEM_ADDR, 0x00, # horizontal
|
||||
# resolution and layout
|
||||
SET_DISP_START_LINE | 0x00,
|
||||
SET_SEG_REMAP | 0x01, # column addr 127 mapped to SEG0
|
||||
SET_MUX_RATIO, self.height - 1,
|
||||
SET_COM_OUT_DIR | 0x08, # scan from COM[N] to COM0
|
||||
SET_DISP_OFFSET, 0x00,
|
||||
SET_COM_PIN_CFG, 0x02 if self.height == 32 else 0x12,
|
||||
# timing and driving scheme
|
||||
SET_DISP_CLK_DIV, 0x80,
|
||||
SET_PRECHARGE, 0x22 if self.external_vcc else 0xf1,
|
||||
SET_VCOM_DESEL, 0x30, # 0.83*Vcc
|
||||
# display
|
||||
SET_CONTRAST, 0xff, # maximum
|
||||
SET_ENTIRE_ON, # output follows RAM contents
|
||||
SET_NORM_INV, # not inverted
|
||||
# charge pump
|
||||
SET_CHARGE_PUMP, 0x10 if self.external_vcc else 0x14,
|
||||
SET_DISP | 0x01): # on
|
||||
self.write_cmd(cmd)
|
||||
self.fill(0)
|
||||
self.show()
|
||||
|
||||
def poweroff(self):
|
||||
self.write_cmd(SET_DISP | 0x00)
|
||||
|
||||
def contrast(self, contrast):
|
||||
self.write_cmd(SET_CONTRAST)
|
||||
self.write_cmd(contrast)
|
||||
|
||||
def invert(self, invert):
|
||||
self.write_cmd(SET_NORM_INV | (invert & 1))
|
||||
|
||||
def show(self):
|
||||
x0 = 0
|
||||
x1 = self.width - 1
|
||||
if self.width == 64:
|
||||
# displays with width of 64 pixels are shifted by 32
|
||||
x0 += 32
|
||||
x1 += 32
|
||||
self.write_cmd(SET_COL_ADDR)
|
||||
self.write_cmd(x0)
|
||||
self.write_cmd(x1)
|
||||
self.write_cmd(SET_PAGE_ADDR)
|
||||
self.write_cmd(0)
|
||||
self.write_cmd(self.pages - 1)
|
||||
self.write_framebuf()
|
||||
|
||||
def fill(self, col):
|
||||
self.framebuf.fill(col)
|
||||
|
||||
def pixel(self, x, y, col):
|
||||
self.framebuf.pixel(x, y, col)
|
||||
|
||||
def scroll(self, dx, dy):
|
||||
self.framebuf.scroll(dx, dy)
|
||||
|
||||
def text(self, string, x, y, col=1):
|
||||
self.framebuf.text(string, x, y, col)
|
||||
|
||||
|
||||
class SSD1306_I2C(SSD1306):
|
||||
def __init__(self, width, height, i2c, addr=0x3c, external_vcc=False):
|
||||
self.i2c = i2c
|
||||
self.addr = addr
|
||||
self.temp = bytearray(2)
|
||||
# Add an extra byte to the data buffer to hold an I2C data/command byte
|
||||
# to use hardware-compatible I2C transactions. A memoryview of the
|
||||
# buffer is used to mask this byte from the framebuffer operations
|
||||
# (without a major memory hit as memoryview doesn't copy to a separate
|
||||
# buffer).
|
||||
self.buffer = bytearray(((height // 8) * width) + 1)
|
||||
self.buffer[0] = 0x40 # Set first byte of data buffer to Co=0, D/C=1
|
||||
self.framebuf = framebuf.FrameBuffer1(memoryview(self.buffer)[1:], width, height)
|
||||
super().__init__(width, height, external_vcc)
|
||||
|
||||
def write_cmd(self, cmd):
|
||||
self.temp[0] = 0x80 # Co=1, D/C#=0
|
||||
self.temp[1] = cmd
|
||||
self.i2c.writeto(self.addr, self.temp)
|
||||
|
||||
def write_framebuf(self):
|
||||
# Blast out the frame buffer using a single I2C transaction to support
|
||||
# hardware I2C interfaces.
|
||||
self.i2c.writeto(self.addr, self.buffer)
|
||||
|
||||
def poweron(self):
|
||||
pass
|
||||
|
||||
|
||||
class SSD1306_SPI(SSD1306):
|
||||
def __init__(self, width, height, spi, dc, res, cs, external_vcc=False):
|
||||
self.rate = 10 * 1024 * 1024
|
||||
dc.init(dc.OUT, value=0)
|
||||
res.init(res.OUT, value=0)
|
||||
cs.init(cs.OUT, value=1)
|
||||
self.spi = spi
|
||||
self.dc = dc
|
||||
self.res = res
|
||||
self.cs = cs
|
||||
self.buffer = bytearray((height // 8) * width)
|
||||
self.framebuf = framebuf.FrameBuffer1(self.buffer, width, height)
|
||||
super().__init__(width, height, external_vcc)
|
||||
|
||||
def write_cmd(self, cmd):
|
||||
self.spi.init(baudrate=self.rate, polarity=0, phase=0)
|
||||
self.cs.high()
|
||||
self.dc.low()
|
||||
self.cs.low()
|
||||
self.spi.write(bytearray([cmd]))
|
||||
self.cs.high()
|
||||
|
||||
def write_framebuf(self):
|
||||
self.spi.init(baudrate=self.rate, polarity=0, phase=0)
|
||||
self.cs.high()
|
||||
self.dc.high()
|
||||
self.cs.low()
|
||||
self.spi.write(self.buffer)
|
||||
self.cs.high()
|
||||
|
||||
def poweron(self):
|
||||
self.res.high()
|
||||
time.sleep_ms(1)
|
||||
self.res.low()
|
||||
time.sleep_ms(10)
|
||||
self.res.high()
|
4
kicad/sym-lib-table
Normal file
4
kicad/sym-lib-table
Normal file
|
@ -0,0 +1,4 @@
|
|||
(sym_lib_table
|
||||
(version 7)
|
||||
(lib (name "Digital Audio Switch")(type "KiCad")(uri "${KIPRJMOD}/Digital Audio Switch.kicad_sym")(options "")(descr ""))
|
||||
)
|
Loading…
Reference in a new issue