Browse Source

Improvements to kicad-cli test repeatability

revert-0c36e162
Jon Evans 9 months ago
parent
commit
ca21a35bfc
  1. 1
      .gitignore
  2. 190
      qa/data/cli/basic_test/basic_test.erc.json
  3. 60
      qa/data/cli/basic_test/basic_test.erc.rpt
  4. 60
      qa/data/cli/basic_test/basic_test.erc.unitsin.rpt
  5. 315
      qa/data/config/9.99/3d_viewer.json
  6. 372
      qa/data/config/9.99/cvpcb.json
  7. 3
      qa/data/config/9.99/design-block-lib-table
  8. 371
      qa/data/config/9.99/eeschema.json
  9. 148
      qa/data/config/9.99/fp-lib-table
  10. 308
      qa/data/config/9.99/fpedit.json
  11. 242
      qa/data/config/9.99/kicad.json
  12. 92
      qa/data/config/9.99/kicad_common.json
  13. 727
      qa/data/config/9.99/pcbnew.json
  14. 5
      qa/data/config/9.99/sym-lib-table
  15. 169
      qa/data/config/9.99/symbol_editor.json
  16. 23
      qa/tests/cli/README.txt
  17. 9
      qa/tests/cli/test_common.py
  18. 4
      qa/tests/cli/test_pcb.py
  19. 12
      qa/tests/cli/test_sch.py
  20. 19
      qa/tests/cli/utils.py

1
.gitignore

@ -51,6 +51,7 @@ common/pcb_keywords.cpp
include/pcb_lexer.h
fp-info-cache
qa/tests/output/**
qa/tests/cli/output/**
# demo project auxiliary files
demos/**/*-bak

190
qa/data/cli/basic_test/basic_test.erc.json

@ -24,52 +24,22 @@
"type": "power_pin_not_driven"
},
{
"description": "The current configuration does not include the symbol library 'Device'",
"items": [
{
"description": "Symbol R1 [R_US]",
"pos": {
"x": 1.27,
"y": 0.9398
},
"uuid": "eaf8668d-aec7-4209-a3f9-fc7bfb5b931b"
}
],
"severity": "warning",
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the footprint library 'Resistor_SMD'.",
"items": [
{
"description": "Symbol R1 [R_US]",
"pos": {
"x": 1.27,
"y": 0.9398
},
"uuid": "eaf8668d-aec7-4209-a3f9-fc7bfb5b931b"
}
],
"severity": "warning",
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the symbol library 'Device'",
"description": "Input Power pin not driven by any Output Power pins",
"items": [
{
"description": "Symbol R2 [R_US]",
"description": "Symbol U1 Pin 2 [V-, Power input, Line]",
"pos": {
"x": 1.4986,
"y": 0.9398
"x": 1.4097,
"y": 0.8636
},
"uuid": "8b2eeae5-e1ad-4999-aeb9-01fe06aff8b1"
"uuid": "74f1f498-1594-4d18-a0fd-b624cedbd22a"
}
],
"severity": "warning",
"type": "lib_symbol_issues"
"severity": "error",
"type": "power_pin_not_driven"
},
{
"description": "The current configuration does not include the symbol library 'power'",
"description": "Symbol 'GND' doesn't match copy in library 'power'",
"items": [
{
"description": "Symbol #PWR02 [GND]",
@ -81,10 +51,10 @@
}
],
"severity": "warning",
"type": "lib_symbol_issues"
"type": "lib_symbol_mismatch"
},
{
"description": "The current configuration does not include the footprint library 'Resistor_SMD'.",
"description": "Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.",
"items": [
{
"description": "Symbol R2 [R_US]",
@ -98,66 +68,6 @@
"severity": "warning",
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the symbol library 'power'",
"items": [
{
"description": "Symbol #PWR03 [GND]",
"pos": {
"x": 1.2192,
"y": 0.8382
},
"uuid": "5d9a8cf4-5c54-4c57-accb-dd6295272287"
}
],
"severity": "warning",
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the symbol library 'Device'",
"items": [
{
"description": "Symbol C1 [C_Small]",
"pos": {
"x": 1.2192,
"y": 0.8001
},
"uuid": "8a4f4d93-4e0c-474b-8535-68c4fef6e828"
}
],
"severity": "warning",
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the footprint library 'Capacitor_SMD'.",
"items": [
{
"description": "Symbol C1 [C_Small]",
"pos": {
"x": 1.2192,
"y": 0.8001
},
"uuid": "8a4f4d93-4e0c-474b-8535-68c4fef6e828"
}
],
"severity": "warning",
"type": "footprint_link_issues"
},
{
"description": "Input Power pin not driven by any Output Power pins",
"items": [
{
"description": "Symbol U1 Pin 2 [V-, Power input, Line]",
"pos": {
"x": 1.4097,
"y": 0.8636
},
"uuid": "74f1f498-1594-4d18-a0fd-b624cedbd22a"
}
],
"severity": "error",
"type": "power_pin_not_driven"
},
{
"description": "The current configuration does not include the symbol library 'Connector'",
"items": [
@ -189,7 +99,7 @@
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the footprint library 'Package_TO_SOT_SMD'.",
"description": "Footprint 'SOT-23-5' not found in library 'Package_TO_SOT_SMD'.",
"items": [
{
"description": "Symbol U1 [TLV2371DBV]",
@ -204,7 +114,7 @@
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the footprint library 'TestPoint'.",
"description": "Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.",
"items": [
{
"description": "Symbol J3 [Conn_01x01_Pin]",
@ -249,7 +159,7 @@
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the footprint library 'TestPoint'.",
"description": "Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.",
"items": [
{
"description": "Symbol J1 [Conn_01x01_Pin]",
@ -264,22 +174,7 @@
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the symbol library 'Device'",
"items": [
{
"description": "Symbol R3 [R_US]",
"pos": {
"x": 1.1557,
"y": 0.762
},
"uuid": "985a669c-9a7f-4b74-bb4f-9487b164d3aa"
}
],
"severity": "warning",
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the footprint library 'Resistor_SMD'.",
"description": "Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.",
"items": [
{
"description": "Symbol R3 [R_US]",
@ -294,7 +189,7 @@
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the symbol library 'power'",
"description": "Symbol 'GND' doesn't match copy in library 'power'",
"items": [
{
"description": "Symbol #PWR01 [GND]",
@ -306,10 +201,10 @@
}
],
"severity": "warning",
"type": "lib_symbol_issues"
"type": "lib_symbol_mismatch"
},
{
"description": "The current configuration does not include the symbol library 'power'",
"description": "Symbol 'GND' doesn't match copy in library 'power'",
"items": [
{
"description": "Symbol #PWR04 [GND]",
@ -321,7 +216,52 @@
}
],
"severity": "warning",
"type": "lib_symbol_issues"
"type": "lib_symbol_mismatch"
},
{
"description": "Symbol 'GND' doesn't match copy in library 'power'",
"items": [
{
"description": "Symbol #PWR03 [GND]",
"pos": {
"x": 1.2192,
"y": 0.8382
},
"uuid": "5d9a8cf4-5c54-4c57-accb-dd6295272287"
}
],
"severity": "warning",
"type": "lib_symbol_mismatch"
},
{
"description": "Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.",
"items": [
{
"description": "Symbol R1 [R_US]",
"pos": {
"x": 1.27,
"y": 0.9398
},
"uuid": "eaf8668d-aec7-4209-a3f9-fc7bfb5b931b"
}
],
"severity": "warning",
"type": "footprint_link_issues"
},
{
"description": "Footprint 'C_1206_3216Metric' not found in library 'Capacitor_SMD'.",
"items": [
{
"description": "Symbol C1 [C_Small]",
"pos": {
"x": 1.2192,
"y": 0.8001
},
"uuid": "8a4f4d93-4e0c-474b-8535-68c4fef6e828"
}
],
"severity": "warning",
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the symbol library 'Connector'",
@ -339,7 +279,7 @@
"type": "lib_symbol_issues"
},
{
"description": "The current configuration does not include the footprint library 'TestPoint'.",
"description": "Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.",
"items": [
{
"description": "Symbol J2 [Conn_01x01_Pin]",
@ -354,7 +294,7 @@
"type": "footprint_link_issues"
},
{
"description": "The current configuration does not include the footprint library 'TestPoint'.",
"description": "Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.",
"items": [
{
"description": "Symbol J4 [Conn_01x01_Pin]",

60
qa/data/cli/basic_test/basic_test.erc.rpt

@ -1,46 +1,28 @@
ERC report (2025-01-04T22:22:42-0500, Encoding UTF8)
ERC report (2025-02-22T10:24:58-0500, Encoding UTF8)
***** Sheet /
[power_pin_not_driven]: Input Power pin not driven by any Output Power pins
; error
@(140.97 mm, 71.12 mm): Symbol U1 Pin 5 [V+, Power input, Line]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(127.00 mm, 93.98 mm): Symbol R1 [R_US]
[footprint_link_issues]: The current configuration does not include the footprint library 'Resistor_SMD'.
; warning
@(127.00 mm, 93.98 mm): Symbol R1 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(149.86 mm, 93.98 mm): Symbol R2 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
[power_pin_not_driven]: Input Power pin not driven by any Output Power pins
; error
@(140.97 mm, 86.36 mm): Symbol U1 Pin 2 [V-, Power input, Line]
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(140.97 mm, 87.63 mm): Symbol #PWR02 [GND]
[footprint_link_issues]: The current configuration does not include the footprint library 'Resistor_SMD'.
[footprint_link_issues]: Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.
; warning
@(149.86 mm, 93.98 mm): Symbol R2 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
; warning
@(121.92 mm, 83.82 mm): Symbol #PWR03 [GND]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(121.92 mm, 80.01 mm): Symbol C1 [C_Small]
[footprint_link_issues]: The current configuration does not include the footprint library 'Capacitor_SMD'.
; warning
@(121.92 mm, 80.01 mm): Symbol C1 [C_Small]
[power_pin_not_driven]: Input Power pin not driven by any Output Power pins
; error
@(140.97 mm, 86.36 mm): Symbol U1 Pin 2 [V-, Power input, Line]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
; warning
@(177.80 mm, 78.74 mm): Symbol J3 [Conn_01x01_Pin]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Amplifier_Operational'
; warning
@(143.51 mm, 78.74 mm): Symbol U1 [TLV2371DBV]
[footprint_link_issues]: The current configuration does not include the footprint library 'Package_TO_SOT_SMD'.
[footprint_link_issues]: Footprint 'SOT-23-5' not found in library 'Package_TO_SOT_SMD'.
; warning
@(143.51 mm, 78.74 mm): Symbol U1 [TLV2371DBV]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(177.80 mm, 78.74 mm): Symbol J3 [Conn_01x01_Pin]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
@ -49,29 +31,35 @@ ERC report (2025-01-04T22:22:42-0500, Encoding UTF8)
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
; warning
@(105.41 mm, 63.50 mm): Symbol J1 [Conn_01x01_Pin]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(105.41 mm, 63.50 mm): Symbol J1 [Conn_01x01_Pin]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(115.57 mm, 76.20 mm): Symbol R3 [R_US]
[footprint_link_issues]: The current configuration does not include the footprint library 'Resistor_SMD'.
[footprint_link_issues]: Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.
; warning
@(115.57 mm, 76.20 mm): Symbol R3 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(119.38 mm, 96.52 mm): Symbol #PWR01 [GND]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(111.76 mm, 100.33 mm): Symbol #PWR04 [GND]
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(121.92 mm, 83.82 mm): Symbol #PWR03 [GND]
[footprint_link_issues]: Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.
; warning
@(127.00 mm, 93.98 mm): Symbol R1 [R_US]
[footprint_link_issues]: Footprint 'C_1206_3216Metric' not found in library 'Capacitor_SMD'.
; warning
@(121.92 mm, 80.01 mm): Symbol C1 [C_Small]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
; warning
@(105.41 mm, 99.06 mm): Symbol J4 [Conn_01x01_Pin]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(105.41 mm, 76.20 mm): Symbol J2 [Conn_01x01_Pin]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(105.41 mm, 99.06 mm): Symbol J4 [Conn_01x01_Pin]
** ERC messages: 24 Errors 2 Warnings 22
** ERC messages: 20 Errors 2 Warnings 18

60
qa/data/cli/basic_test/basic_test.erc.unitsin.rpt

@ -1,46 +1,28 @@
ERC report (2025-01-04T22:27:21-0500, Encoding UTF8)
ERC report (2025-02-22T10:28:19-0500, Encoding UTF8)
***** Sheet /
[power_pin_not_driven]: Input Power pin not driven by any Output Power pins
; error
@(5.550 in, 2.800 in): Symbol U1 Pin 5 [V+, Power input, Line]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(5.000 in, 3.700 in): Symbol R1 [R_US]
[footprint_link_issues]: The current configuration does not include the footprint library 'Resistor_SMD'.
; warning
@(5.000 in, 3.700 in): Symbol R1 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(5.900 in, 3.700 in): Symbol R2 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
[power_pin_not_driven]: Input Power pin not driven by any Output Power pins
; error
@(5.550 in, 3.400 in): Symbol U1 Pin 2 [V-, Power input, Line]
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(5.550 in, 3.450 in): Symbol #PWR02 [GND]
[footprint_link_issues]: The current configuration does not include the footprint library 'Resistor_SMD'.
[footprint_link_issues]: Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.
; warning
@(5.900 in, 3.700 in): Symbol R2 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
; warning
@(4.800 in, 3.300 in): Symbol #PWR03 [GND]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(4.800 in, 3.150 in): Symbol C1 [C_Small]
[footprint_link_issues]: The current configuration does not include the footprint library 'Capacitor_SMD'.
; warning
@(4.800 in, 3.150 in): Symbol C1 [C_Small]
[power_pin_not_driven]: Input Power pin not driven by any Output Power pins
; error
@(5.550 in, 3.400 in): Symbol U1 Pin 2 [V-, Power input, Line]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
; warning
@(7.000 in, 3.100 in): Symbol J3 [Conn_01x01_Pin]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Amplifier_Operational'
; warning
@(5.650 in, 3.100 in): Symbol U1 [TLV2371DBV]
[footprint_link_issues]: The current configuration does not include the footprint library 'Package_TO_SOT_SMD'.
[footprint_link_issues]: Footprint 'SOT-23-5' not found in library 'Package_TO_SOT_SMD'.
; warning
@(5.650 in, 3.100 in): Symbol U1 [TLV2371DBV]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(7.000 in, 3.100 in): Symbol J3 [Conn_01x01_Pin]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
@ -49,29 +31,35 @@ ERC report (2025-01-04T22:27:21-0500, Encoding UTF8)
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
; warning
@(4.150 in, 2.500 in): Symbol J1 [Conn_01x01_Pin]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(4.150 in, 2.500 in): Symbol J1 [Conn_01x01_Pin]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Device'
; warning
@(4.550 in, 3.000 in): Symbol R3 [R_US]
[footprint_link_issues]: The current configuration does not include the footprint library 'Resistor_SMD'.
[footprint_link_issues]: Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.
; warning
@(4.550 in, 3.000 in): Symbol R3 [R_US]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(4.700 in, 3.800 in): Symbol #PWR01 [GND]
[lib_symbol_issues]: The current configuration does not include the symbol library 'power'
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(4.400 in, 3.950 in): Symbol #PWR04 [GND]
[lib_symbol_mismatch]: Symbol 'GND' doesn't match copy in library 'power'
; warning
@(4.800 in, 3.300 in): Symbol #PWR03 [GND]
[footprint_link_issues]: Footprint 'R_1206_3216Metric' not found in library 'Resistor_SMD'.
; warning
@(5.000 in, 3.700 in): Symbol R1 [R_US]
[footprint_link_issues]: Footprint 'C_1206_3216Metric' not found in library 'Capacitor_SMD'.
; warning
@(4.800 in, 3.150 in): Symbol C1 [C_Small]
[lib_symbol_issues]: The current configuration does not include the symbol library 'Connector'
; warning
@(4.150 in, 3.900 in): Symbol J4 [Conn_01x01_Pin]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(4.150 in, 3.000 in): Symbol J2 [Conn_01x01_Pin]
[footprint_link_issues]: The current configuration does not include the footprint library 'TestPoint'.
[footprint_link_issues]: Footprint 'TestPoint_Pad_3.0x3.0mm' not found in library 'TestPoint'.
; warning
@(4.150 in, 3.900 in): Symbol J4 [Conn_01x01_Pin]
** ERC messages: 24 Errors 2 Warnings 22
** ERC messages: 20 Errors 2 Warnings 18

315
qa/data/config/9.99/3d_viewer.json

@ -0,0 +1,315 @@
{
"appearance": {
"color_theme": "_builtin_default"
},
"aui": {
"right_panel_width": -1,
"show_layer_manager": true
},
"camera": {
"animation_enabled": true,
"moving_speed_multiplier": 3,
"projection_mode": 1,
"rotation_increment": 10.0
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"current_layer_preset": "legacy_preset_flag",
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_string": "",
"search_and_replace": false
},
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"layer_presets": [],
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"meta": {
"version": 3
},
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"render": {
"clip_silk_on_via_annulus": false,
"engine": 0,
"grid_type": 0,
"material_mode": 0,
"opengl_AA_disableOnMove": false,
"opengl_AA_mode": 3,
"opengl_copper_thickness": false,
"opengl_highlight_on_rollover": true,
"opengl_holes_disableOnMove": false,
"opengl_render_bbox_only_OnMove": false,
"opengl_selection_color": "rgb(0, 255, 0)",
"opengl_show_model_bbox": false,
"opengl_show_off_board_silk": false,
"opengl_thickness_disableOnMove": false,
"opengl_vias_disableOnMove": false,
"plated_and_bare_copper": false,
"raytrace_anti_aliasing": true,
"raytrace_backfloor": false,
"raytrace_lightAzimuth": [
45,
135,
225,
315,
45,
135,
225,
315
],
"raytrace_lightColor": [
"rgb(43, 43, 43)",
"rgb(43, 43, 43)",
"rgb(43, 43, 43)",
"rgb(43, 43, 43)",
"rgb(43, 43, 43)",
"rgb(43, 43, 43)",
"rgb(43, 43, 43)",
"rgb(43, 43, 43)"
],
"raytrace_lightColorBottom": "rgb(63, 63, 63)",
"raytrace_lightColorCamera": "rgb(51, 51, 51)",
"raytrace_lightColorTop": "rgb(63, 63, 63)",
"raytrace_lightElevation": [
67,
67,
67,
67,
-67,
-67,
-67,
-67
],
"raytrace_nrsamples_reflections": 3,
"raytrace_nrsamples_refractions": 4,
"raytrace_nrsamples_shadows": 3,
"raytrace_post_processing": true,
"raytrace_procedural_textures": true,
"raytrace_recursivelevel_reflections": 3,
"raytrace_recursivelevel_refractions": 2,
"raytrace_reflections": true,
"raytrace_refractions": true,
"raytrace_shadows": true,
"raytrace_spread_reflections": 0.02500000037252903,
"raytrace_spread_refractions": 0.02500000037252903,
"raytrace_spread_shadows": 0.05000000074505806,
"show_adhesive": true,
"show_axis": true,
"show_board_body": true,
"show_comments": true,
"show_copper_bottom": true,
"show_copper_top": true,
"show_drawings": true,
"show_eco1": true,
"show_eco2": true,
"show_footprints_dnp": false,
"show_footprints_insert": true,
"show_footprints_normal": true,
"show_footprints_not_in_posfile": true,
"show_footprints_virtual": true,
"show_fp_references": true,
"show_fp_text": true,
"show_fp_values": true,
"show_silkscreen_bottom": true,
"show_silkscreen_top": true,
"show_soldermask_bottom": true,
"show_soldermask_top": true,
"show_solderpaste": true,
"show_zones": true,
"subtract_mask_from_silk": false,
"use_board_editor_copper_colors": false
},
"search_pane": {
"selection_zoom": 1
},
"system": {
"file_history": [],
"first_run_shown": false,
"last_imperial_units": 5,
"last_metric_units": 1,
"max_undo_items": 0,
"show_import_issues": true,
"units": 1
},
"use_stackup_colors": true,
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
}
}

372
qa/data/config/9.99/cvpcb.json

@ -0,0 +1,372 @@
{
"appearance": {
"color_theme": "_builtin_default"
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"filter_footprint": 0,
"filter_footprint_text": "",
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_string": "",
"search_and_replace": false
},
"footprint_viewer": {
"autozoom": true,
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"show_graphic_fill": true,
"show_pad_fill": true,
"show_pad_number": true,
"show_text_fill": true,
"size_x": 0,
"size_y": 0,
"zoom": 1.0,
"zoom_factors": []
},
"footprints_pane_width": 0,
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"libraries_pane_width": 0,
"meta": {
"version": 0
},
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"search_pane": {
"selection_zoom": 1
},
"system": {
"file_history": [],
"first_run_shown": false,
"last_imperial_units": 5,
"last_metric_units": 1,
"max_undo_items": 0,
"show_import_issues": true,
"units": 1
},
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
}
}

3
qa/data/config/9.99/design-block-lib-table

@ -0,0 +1,3 @@
(design_block_lib_table
(version 7)
)

371
qa/data/config/9.99/eeschema.json

@ -0,0 +1,371 @@
{
"annotation": {
"automatic": true,
"messages_filter": -1,
"method": 0,
"options": 0,
"recursive": true,
"scope": 0,
"sort_order": 0
},
"appearance": {
"color_theme": "_builtin_default",
"default_font": "KiCad Font",
"edit_label_height": -1,
"edit_label_visible_columns": "0 1 2 3 4 5 6 7",
"edit_label_width": -1,
"edit_sheet_height": -1,
"edit_sheet_visible_columns": "0 1 2 3 4 5 6 7",
"edit_sheet_width": -1,
"edit_symbol_height": -1,
"edit_symbol_visible_columns": "0 1 2 3 4 5 6 7",
"edit_symbol_width": -1,
"erc_severities": 48,
"footprint_preview": true,
"mark_sim_exclusions": true,
"print_sheet_reference": true,
"show_directive_labels": true,
"show_erc_errors": true,
"show_erc_exclusions": false,
"show_erc_warnings": true,
"show_hidden_fields": false,
"show_hidden_pins": false,
"show_illegal_symbol_lib_dialog": true,
"show_op_currents": true,
"show_op_voltages": true,
"show_page_limits": true,
"show_pin_alt_icons": true,
"show_sexpr_file_convert_warning": true,
"show_sheet_filename_case_sensitivity_dialog": true
},
"aui": {
"design_blocks_panel_docked_width": -1,
"design_blocks_panel_float_height": -1,
"design_blocks_panel_float_width": -1,
"design_blocks_show": false,
"float_net_nav_panel": false,
"hierarchy_panel_docked_height": -1,
"hierarchy_panel_docked_width": -1,
"hierarchy_panel_float_height": -1,
"hierarchy_panel_float_width": -1,
"net_nav_panel_docked_size": {
"height": -1,
"width": 120
},
"net_nav_panel_float_pos": {
"x": 50,
"y": 200
},
"net_nav_panel_float_size": {
"height": 200,
"width": 200
},
"properties_panel_width": -1,
"properties_splitter_proportion": 0.5,
"schematic_hierarchy_float": false,
"search_panel_dock_direction": 3,
"search_panel_height": -1,
"search_panel_width": -1,
"show_net_nav_panel": false,
"show_properties": true,
"show_schematic_hierarchy": true,
"show_search": false
},
"autoplace_fields": {
"align_to_grid": true,
"allow_rejustify": true,
"enable": true
},
"bom": {
"plugins": [
{
"command": "",
"name": "bom_csv_grouped_extra",
"path": "bom_csv_grouped_extra.py"
},
{
"command": "",
"name": "bom_csv_grouped_by_value",
"path": "bom_csv_grouped_by_value.py"
},
{
"command": "",
"name": "bom_csv_grouped_by_value_with_fp",
"path": "bom_csv_grouped_by_value_with_fp.py"
}
],
"selected_plugin": ""
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"design_block_chooser": {
"height": -1,
"keep_annotations": false,
"lib_tree": {
"column_widths": null
},
"place_as_sheet": false,
"repeated_placement": false,
"sash_pos_h": -1,
"sash_pos_v": -1,
"sort_mode": 0,
"width": -1
},
"drawing": {
"auto_start_wires": true,
"default_bus_thickness": 12,
"default_junction_size": 36,
"default_line_thickness": 6,
"default_repeat_offset_x": 0,
"default_repeat_offset_y": 100,
"default_sheet_background_color": "rgba(0, 0, 0, 0.000)",
"default_sheet_border_color": "rgba(0, 0, 0, 0.000)",
"default_text_size": 50,
"default_wire_thickness": 6,
"field_names": "",
"junction_size_choice": 3,
"junction_size_mult_list": [
0.0,
1.7,
4.0,
6.0,
9.0,
12.0
],
"line_mode": 1,
"pin_symbol_size": 25,
"repeat_label_increment": 1,
"text_offset_ratio": 0.08
},
"field_editor": {
"export_filename": "",
"field_widths": {},
"height": 0,
"page": 0,
"scope": 0,
"selection_mode": 0,
"width": 0
},
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_references": false,
"replace_string": "",
"search_all_fields": false,
"search_all_pins": false,
"search_and_replace": false,
"search_current_sheet_only": false
},
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"import_graphics": {
"dxf_units": 0,
"interactive_placement": true,
"line_width": 0.2,
"line_width_units": 0,
"origin_units": 0,
"origin_x": 0.0,
"origin_y": 0.0
},
"input": {
"drag_is_move": false,
"esc_clears_net_highlight": true
},
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"lib_view": {
"cmp_list_width": 150,
"lib_list_width": 150,
"show_pin_electrical_type": true,
"window": {
"display": 0,
"maximized": false,
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 500,
"size_y": 400
}
},
"meta": {
"version": 3
},
"netlist": {
"plugins": []
},
"page_settings": {
"export_comment1": false,
"export_comment2": false,
"export_comment3": false,
"export_comment4": false,
"export_comment5": false,
"export_comment6": false,
"export_comment7": false,
"export_comment8": false,
"export_comment9": false,
"export_company": false,
"export_date": false,
"export_paper": false,
"export_revision": false,
"export_title": false
},
"plot": {
"background_color": false,
"color": true,
"color_theme": "user",
"format": 0,
"frame_reference": true,
"hpgl_origin": 0,
"hpgl_paper_size": 0,
"hpgl_pen_size": 0.5,
"other_open_file_after_plot": false,
"pdf_hierarchical_links": true,
"pdf_metadata": true,
"pdf_property_popups": true
},
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"search_pane": {
"selection_zoom": 1
},
"selection": {
"draw_selected_children": true,
"fill_shapes": false,
"highlight_netclass_colors": false,
"highlight_netclass_colors_alpha": 0.6,
"highlight_netclass_colors_thickness": 15,
"highlight_thickness": 2,
"thickness": 3
},
"simulator": {
"cursors_panel_height": 0,
"measurements_panel_height": 0,
"mouse_wheel_actions": {
"horizontal": 0,
"vertical_unmodified": 4,
"vertical_with_alt": 0,
"vertical_with_ctrl": 1,
"vertical_with_shift": 3
},
"plot_panel_height": 0,
"plot_panel_width": 0,
"signal_panel_height": 0,
"white_background": false,
"window": {
"display": 0,
"maximized": false,
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 500,
"size_y": 400
}
},
"symbol_chooser": {
"height": -1,
"keep_symbol": false,
"place_all_units": true,
"sash_pos_h": -1,
"sash_pos_v": -1,
"sort_mode": 0,
"width": -1
},
"system": {
"file_history": [],
"first_run_shown": false,
"last_imperial_units": 5,
"last_metric_units": 1,
"last_symbol_lib_dir": "",
"max_undo_items": 0,
"never_show_rescue_dialog": false,
"show_import_issues": true,
"units": 5
},
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 1,
"fast_grid_2": 2,
"last_size": 1,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": true,
"override_connected_idx": 1,
"override_graphics": false,
"override_graphics_idx": 2,
"override_text": true,
"override_text_idx": 3,
"override_vias": false,
"override_vias_idx": 0,
"override_wires": true,
"override_wires_idx": 1,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
}
}

148
qa/data/config/9.99/fp-lib-table

@ -0,0 +1,148 @@
(fp_lib_table
(lib (name Audio_Module)(type Kicad)(uri ${KICAD8_FOOTPRINT_DIR}/Audio_Module.pretty)(options "")(descr "Audio Module footprints"))
(lib (name Battery)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Battery.pretty)(options "")(descr "Battery and battery holder footprints"))
(lib (name Button_Switch_Keyboard)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Button_Switch_Keyboard.pretty)(options "")(descr "Buttons and switches for keyboard applications"))
(lib (name Button_Switch_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Button_Switch_SMD.pretty)(options "")(descr "Buttons and switches, surface mount"))
(lib (name Button_Switch_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Button_Switch_THT.pretty)(options "")(descr "Buttons and switches, through hole"))
(lib (name Buzzer_Beeper)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Buzzer_Beeper.pretty)(options "")(descr "Audio signalling devices"))
(lib (name Calibration_Scale)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Calibration_Scale.pretty)(options "")(descr "Scales and grids intended for calibration and measurement"))
(lib (name Capacitor_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Capacitor_SMD.pretty)(options "")(descr "Capacitor, surface mount"))
(lib (name Capacitor_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Capacitor_THT.pretty)(options "")(descr "Capacitor, through hole"))
(lib (name Capacitor_Tantalum_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Capacitor_Tantalum_SMD.pretty)(options "")(descr "Tantalum Capacitor, surface mount"))
(lib (name Connector)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector.pretty)(options "")(descr "Generic/unsorted connector footprints"))
(lib (name Connector_AMASS)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_AMASS.pretty)(options "")(descr "AMASS connector footprints"))
(lib (name Connector_Amphenol)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Amphenol.pretty)(options "")(descr "Amphenol LTW connector footprints"))
(lib (name Connector_Audio)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Audio.pretty)(options "")(descr "Audio connector footprints"))
(lib (name Connector_BarrelJack)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_BarrelJack.pretty)(options "")(descr "(DC) barrel jack connector footprints"))
(lib (name Connector_Card)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Card.pretty)(options "")(descr "Card and card holder footprints"))
(lib (name Connector_Coaxial)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Coaxial.pretty)(options "")(descr "Coaxial and RF connector footprints"))
(lib (name Connector_DIN)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_DIN.pretty)(options "")(descr "DIN connector footprints"))
(lib (name Connector_Dsub)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Dsub.pretty)(options "")(descr "DSub connector footprints"))
(lib (name Connector_FFC-FPC)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_FFC-FPC.pretty)(options "")(descr "FFC (Flexible Flat Cable) and FPC (Flexible Printed Circuit) connector footprints"))
(lib (name Connector_Harting)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Harting.pretty)(options "")(descr "Harting connector footprints"))
(lib (name Connector_Harwin)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Harwin.pretty)(options "")(descr "Harwin connector footprints"))
(lib (name Connector_Hirose)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Hirose.pretty)(options "")(descr "Hirose connector footprints"))
(lib (name Connector_Hirose_FX8)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Hirose_FX8.pretty)(options "")(descr "Hirose FX8 series connector footprints"))
(lib (name Connector_IDC)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_IDC.pretty)(options "")(descr "IDC connector footprints"))
(lib (name Connector_JAE)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_JAE.pretty)(options "")(descr "JAE connector footprints"))
(lib (name Connector_JAE_WP7B)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_JAE_WP7B.pretty)(options "")(descr "JAE WP7B series FPC connector footprints"))
(lib (name Connector_JST)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_JST.pretty)(options "")(descr "JST connector footprints www.jst.com"))
(lib (name Connector_Molex)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Molex.pretty)(options "")(descr "Molex connector footprints www.molex.com"))
(lib (name Connector_PCBEdge)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PCBEdge.pretty)(options "")(descr "PCB edge connectors (e.g. PCI, ISA, PCIe, ...)"))
(lib (name Connector_Pin)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Pin.pretty)(options "")(descr "Single (solder) pin conectors"))
(lib (name Connector_PinHeader_1.00mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinHeader_1.00mm.pretty)(options "")(descr "Pin headers, 1.0mm pitch"))
(lib (name Connector_PinHeader_1.27mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinHeader_1.27mm.pretty)(options "")(descr "Pin headers, 1.27mm pitch"))
(lib (name Connector_PinHeader_2.00mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinHeader_2.00mm.pretty)(options "")(descr "Pin headers, 2.0mm pitch"))
(lib (name Connector_PinHeader_2.54mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinHeader_2.54mm.pretty)(options "")(descr "Pin headers, 2.54mm pitch"))
(lib (name Connector_PinSocket_1.00mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinSocket_1.00mm.pretty)(options "")(descr "Pin sockets, 1.00mm pitch"))
(lib (name Connector_PinSocket_1.27mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinSocket_1.27mm.pretty)(options "")(descr "Pin sockets, 1.27mm pitch"))
(lib (name Connector_PinSocket_2.00mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinSocket_2.00mm.pretty)(options "")(descr "Pin sockets, 2.0mm pitch"))
(lib (name Connector_PinSocket_2.54mm)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_PinSocket_2.54mm.pretty)(options "")(descr "Pin sockets, 2.54mm pitch"))
(lib (name Connector_Phoenix_MC)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Phoenix_MC.pretty)(options "")(descr "Phoenix MC connector footprints"))
(lib (name Connector_Phoenix_MC_HighVoltage)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Phoenix_MC_HighVoltage.pretty)(options "")(descr "Phoenix high voltage (320V, 5.08mm pitch) MC connector footprints"))
(lib (name Connector_Phoenix_MSTB)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Phoenix_MSTB.pretty)(options "")(descr "Phoenix MSTB connector footprints"))
(lib (name Connector_Phoenix_GMSTB)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Phoenix_GMSTB.pretty)(options "")(descr "Phoenix GMSTB series (high voltage MSTB) connector footprints"))
(lib (name Connector_Phoenix_SPT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Phoenix_SPT.pretty)(options "")(descr "Phoenix SPT connector footprints"))
(lib (name Connector_Samtec)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec.pretty)(options "")(descr "Samtec connector footprints"))
(lib (name Connector_Samtec_HLE_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec_HLE_SMD.pretty)(options "")(descr "Samtec surface mount HLE series connector footprints"))
(lib (name Connector_Samtec_HLE_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec_HLE_THT.pretty)(options "")(descr "Samtec through hole HLE series connector footprints"))
(lib (name Connector_Samtec_HPM_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec_HPM_THT.pretty)(options "")(descr "Samtec through hole HPM series power header footprints"))
(lib (name Connector_Samtec_HSEC8)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec_HSEC8.pretty)(options "")(descr "Samtec HSEC8 0.8mm high speed card edge connector footprints"))
(lib (name Connector_Samtec_MicroMate)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec_MicroMate.pretty)(options "")(descr "Samtec MicroMate discrete wire terminal strips, 1.0mm pitch"))
(lib (name Connector_Samtec_MicroPower)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Samtec_MicroPower.pretty)(options "")(descr "Samtec 2.00mm mPOWER Ultra Micro Power connector footprints"))
(lib (name Connector_RJ)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_RJ.pretty)(options "")(descr "Registered Jack (RJ) connector footprints (e.g. RJ11, RJ45, ...)"))
(lib (name Connector_SATA_SAS)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_SATA_SAS.pretty)(options "")(descr "SATA/SAS connector footprints"))
(lib (name Connector_Stocko)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Stocko.pretty)(options "")(descr "Stocko connector footprints"))
(lib (name Connector_TE-Connectivity)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_TE-Connectivity.pretty)(options "")(descr "Footprints for connectors by TE Connectivity"))
(lib (name Connector_USB)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_USB.pretty)(options "")(descr "USB connector footprints"))
(lib (name Connector_Video)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Video.pretty)(options "")(descr "Video connector footprints like DVI and HDMI"))
(lib (name Connector_Wago)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Wago.pretty)(options "")(descr "Wago connector footprints"))
(lib (name Connector_Wire)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Wire.pretty)(options "")(descr "Footprints for solder wire pads"))
(lib (name Connector_Wuerth)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Connector_Wuerth.pretty)(options "")(descr "Wuerth connector footprints"))
(lib (name Converter_ACDC)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Converter_ACDC.pretty)(options "")(descr "AC/DC converter footprints"))
(lib (name Converter_DCDC)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Converter_DCDC.pretty)(options "")(descr "DC/DC converter footprints"))
(lib (name Crystal)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Crystal.pretty)(options "")(descr "Crystal footprints"))
(lib (name Diode_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Diode_SMD.pretty)(options "")(descr "Diode footprints, surface mount"))
(lib (name Diode_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Diode_THT.pretty)(options "")(descr "Diode footprints, through hole"))
(lib (name Display_7Segment)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Display_7Segment.pretty)(options "")(descr "Seven segment Display"))
(lib (name Display)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Display.pretty)(options "")(descr "Display modules"))
(lib (name Ferrite_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Ferrite_THT.pretty)(options "")(descr "Ferrite bead, through hole"))
(lib (name Fiducial)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Fiducial.pretty)(options "")(descr "Fiducial markings"))
(lib (name Filter)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Filter.pretty)(options "")(descr "Filter footprints"))
(lib (name Fuse)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Fuse.pretty)(options "")(descr "Fuse and fuse holder footprints"))
(lib (name Heatsink)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Heatsink.pretty)(options "")(descr "Heatsinks and thermal products"))
(lib (name Inductor_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Inductor_SMD.pretty)(options "")(descr "Inductor footprints, surface mount"))
(lib (name Inductor_SMD_Wurth)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Inductor_SMD_Wurth.pretty)(options "")(descr "Würth Elektronik inductor footprints, surface mount"))
(lib (name Inductor_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Inductor_THT.pretty)(options "")(descr "Inductor footprints, through hole"))
(lib (name Inductor_THT_Wurth)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Inductor_THT_Wurth.pretty)(options "")(descr "Würth Elektronik inductor footprints, through hole"))
(lib (name Jumper)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Jumper.pretty)(options "")(descr "Jumpers, solder jumpers, ... footprints"))
(lib (name LED_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/LED_SMD.pretty)(options "")(descr "Light emitting diodes (LED), surface mount"))
(lib (name LED_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/LED_THT.pretty)(options "")(descr "Light emitting diodes (LED), through hole"))
(lib (name Module)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Module.pretty)(options "")(descr "Footprints for SoM (System on Module)"))
(lib (name Motors)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Motors.pretty)(options "")(descr "Footprints for Motors"))
(lib (name MountingHole)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/MountingHole.pretty)(options "")(descr "Mechanical fasteners"))
(lib (name Mounting_Wuerth)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Mounting_Wuerth.pretty)(options "")(descr "Mechanical fasteners by wuerth electronics"))
(lib (name MountingEquipment)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/MountingEquipment.pretty)(options "")(descr "Mechanical parts"))
(lib (name NetTie)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/NetTie.pretty)(options "")(descr "Net ties"))
(lib (name OptoDevice)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/OptoDevice.pretty)(options "")(descr "Optical devices (light sensors, opto isolators/interrupters, laser diodes, fiber optical components, lightpipes, lenses ...)"))
(lib (name Oscillator)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Oscillator.pretty)(options "")(descr "Footprints for oscillator devices"))
(lib (name Package_BGA)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_BGA.pretty)(options "")(descr "Ball Grid Array (BGA)"))
(lib (name Package_CSP)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_CSP.pretty)(options "")(descr "Chip Scale Packages (CSP)"))
(lib (name Package_DFN_QFN)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_DFN_QFN.pretty)(options "")(descr "Surface mount IC packages, DFN / LGA / QFN"))
(lib (name Package_DIP)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_DIP.pretty)(options "")(descr "Through hole IC packages, DIP"))
(lib (name Package_DirectFET)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_DirectFET.pretty)(options "")(descr "DirectFET packages from International Rectifier"))
(lib (name Package_LCC)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_LCC.pretty)(options "")(descr "Leaded Chip Carriers (LCC)"))
(lib (name Package_LGA)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_LGA.pretty)(options "")(descr "Land Grid Array (LGA)"))
(lib (name Package_QFP)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_QFP.pretty)(options "")(descr "Quad Flat Package (QFP)"))
(lib (name Package_SIP)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_SIP.pretty)(options "")(descr "Single Inline Package(SIP)"))
(lib (name Package_SO)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_SO.pretty)(options "")(descr "Small Outline Integrated Circuits (SOIC, SSOP, xSOP, xSO)"))
(lib (name Package_SO_J-Lead)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_SO_J-Lead.pretty)(options "")(descr "Small Outline Integrated Circuits J-Lead"))
(lib (name Package_SON)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_SON.pretty)(options "")(descr "Small Outline No-Lead (SON)"))
(lib (name Package_TO_SOT_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_TO_SOT_SMD.pretty)(options "")(descr "Surface mount transistor packages"))
(lib (name Package_TO_SOT_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Package_TO_SOT_THT.pretty)(options "")(descr "Through hole transistor packages"))
(lib (name Potentiometer_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Potentiometer_SMD.pretty)(options "")(descr "Potentiometer footprints, surface mount (SMD)"))
(lib (name Potentiometer_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Potentiometer_THT.pretty)(options "")(descr "Potentiometer footprints, through hole (THT)"))
(lib (name Relay_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Relay_SMD.pretty)(options "")(descr "Surface mount relay packages"))
(lib (name Relay_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Relay_THT.pretty)(options "")(descr "Through hole relay packages"))
(lib (name Resistor_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Resistor_SMD.pretty)(options "")(descr "Resistor footprints, surface mount (SMD)"))
(lib (name Resistor_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Resistor_THT.pretty)(options "")(descr "Resistor footprints, through hole (THT)"))
(lib (name RF)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF.pretty)(options "")(descr "Specialized footprints for RF components that don't fit in the other RF libraries."))
(lib (name RF_Antenna)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_Antenna.pretty)(options "")(descr "Radio-frequency / wireless antenna footprints"))
(lib (name RF_Converter)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_Converter.pretty)(options "")(descr "Specialized footprints for RF signal converters (Like Attenuators, Baluns, Mixers, Couplers, etc.)"))
(lib (name RF_GPS)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_GPS.pretty)(options "")(descr "GNSS footprints"))
(lib (name RF_GSM)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_GSM.pretty)(options "")(descr "GSM Modules footprints"))
(lib (name RF_Mini-Circuits)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_Mini-Circuits.pretty)(options "")(descr "Footprints for Mini-Circuits RF parts."))
(lib (name RF_Module)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_Module.pretty)(options "")(descr "Radio-frequency / wireless modules"))
(lib (name RF_WiFi)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_WiFi.pretty)(options "")(descr "WiFi modules"))
(lib (name RF_Shielding)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/RF_Shielding.pretty)(options "")(descr "Specialied footprints for EMI shields and covers"))
(lib (name Rotary_Encoder)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Rotary_Encoder.pretty)(options "")(descr "Rotary Encoder Footprints"))
(lib (name Sensor)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor.pretty)(options "")(descr "Specialized footprints for multi-function sensors"))
(lib (name Sensor_Audio)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Audio.pretty)(options "")(descr "Specialized footprints for audio sensors"))
(lib (name Sensor_Distance)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Distance.pretty)(options "")(descr "Specialized footprints for distance sensors"))
(lib (name Sensor_Current)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Current.pretty)(options "")(descr "Specialized footprints for current sensors"))
(lib (name Sensor_Humidity)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Humidity.pretty)(options "")(descr "Specialized footprints for humidity sensors"))
(lib (name Sensor_Motion)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Motion.pretty)(options "")(descr "Specialized footprints for motion sensors"))
(lib (name Sensor_Pressure)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Pressure.pretty)(options "")(descr "Specialized footprints for pressure sensors"))
(lib (name Sensor_Voltage)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Sensor_Voltage.pretty)(options "")(descr "Specialized footprints for voltage sensors"))
(lib (name Socket)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Socket.pretty)(options "")(descr "Sockets"))
(lib (name Symbol)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Symbol.pretty)(options "")(descr "PCB symbols"))
(lib (name TerminalBlock_Altech)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_Altech.pretty)(options "")(descr "Altech terminal block footprints"))
(lib (name TerminalBlock)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock.pretty)(options "")(descr "Footprints for terminal blocks that do not have their own manufacturer specific library."))
(lib (name TerminalBlock_4Ucon)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_4Ucon.pretty)(options "")(descr "4UCON terminal blocks"))
(lib (name TerminalBlock_CUI)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_CUI.pretty)(options "")(descr "CUI terminal blocks"))
(lib (name TerminalBlock_Dinkle)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_Dinkle.pretty)(options "")(descr "Dinkle terminal blocks"))
(lib (name TerminalBlock_MetzConnect)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_MetzConnect.pretty)(options "")(descr "Metz Connect terminal blocks"))
(lib (name TerminalBlock_Philmore)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_Philmore.pretty)(options "")(descr "Philmore terminal blocks"))
(lib (name TerminalBlock_Phoenix)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_Phoenix.pretty)(options "")(descr "Phoenix Contact terminal blocks"))
(lib (name TerminalBlock_RND)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_RND.pretty)(options "")(descr "RND terminal blocks"))
(lib (name TerminalBlock_TE-Connectivity)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_TE-Connectivity.pretty)(options "")(descr "TE Connectivity terminal blocks"))
(lib (name TerminalBlock_WAGO)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_WAGO.pretty)(options "")(descr "WAGO terminal blocks"))
(lib (name TerminalBlock_Wuerth)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TerminalBlock_Wuerth.pretty)(options "")(descr "Wuerth Elektronik terminal blocks"))
(lib (name TestPoint)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/TestPoint.pretty)(options "")(descr "Test points, measurement points, probe connection points"))
(lib (name Transformer_SMD)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Transformer_SMD.pretty)(options "")(descr "Surface mount transformers"))
(lib (name Transformer_THT)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Transformer_THT.pretty)(options "")(descr "Through hole transformers"))
(lib (name Transistor_Power)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Transistor_Power.pretty)(options "")(descr "Power Transistors"))
(lib (name Transistor_Power_Module)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Transistor_Power_Module.pretty)(options "")(descr "Transistor Power Modules"))
(lib (name Valve)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Valve.pretty)(options "")(descr "Valve"))
(lib (name Varistor)(type KiCad)(uri ${KICAD8_FOOTPRINT_DIR}/Varistor.pretty)(options "")(descr "Varistor"))
)

308
qa/data/config/9.99/fpedit.json

@ -0,0 +1,308 @@
{
"appearance": {
"color_theme": "_builtin_default"
},
"aui": {
"appearance_panel_tab": 0,
"properties_panel_width": -1,
"properties_splitter_proportion": 0.5,
"right_panel_width": -1,
"show_layer_manager": true,
"show_properties": false
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"design_settings": {
"copper_line_width": 0.2,
"copper_text_italic": false,
"copper_text_size_h": 1.5,
"copper_text_size_v": 1.5,
"copper_text_thickness": 0.3,
"courtyard_line_width": 0.05,
"default_footprint_layer_names": {},
"default_footprint_text_items": [
[
"REF**",
true,
"F.SilkS"
],
[
"",
true,
"F.Fab"
],
[
"${REFERENCE}",
true,
"F.Fab"
]
],
"dimensions": {
"arrow_length": 1270000,
"extension_offset": 500000,
"keep_text_aligned": true,
"precision": 4,
"suppress_zeroes": true,
"text_position": 0,
"units": 3,
"units_format": 0
},
"edge_line_width": 0.05,
"fab_line_width": 0.1,
"fab_text_italic": false,
"fab_text_size_h": 1.0,
"fab_text_size_v": 1.0,
"fab_text_thickness": 0.15,
"others_line_width": 0.1,
"others_text_italic": false,
"others_text_size_h": 1.0,
"others_text_size_v": 1.0,
"others_text_thickness": 0.15,
"silk_line_width": 0.1,
"silk_text_italic": false,
"silk_text_size_h": 1.0,
"silk_text_size_v": 1.0,
"silk_text_thickness": 0.1
},
"editing": {
"fp_use_45_degree_limit": false,
"magnetic_all_layers": false,
"magnetic_graphics": true,
"magnetic_pads": 2,
"polar_coords": false,
"rotation_angle": 900,
"selection_filter": {
"dimensions": true,
"footprints": true,
"graphics": true,
"keepouts": true,
"lockedItems": false,
"otherItems": true,
"pads": true,
"text": true,
"tracks": true,
"vias": true,
"zones": true
}
},
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_string": "",
"search_and_replace": false
},
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"library": {
"sort_mode": 0
},
"meta": {
"version": 5
},
"origin_invert_x_axis": false,
"origin_invert_y_axis": false,
"pcb_display": {
"active_layer_preset": "",
"graphics_fill": true,
"layer_presets": [],
"pad_fill": true,
"pad_numbers": true,
"text_fill": true
},
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"search_pane": {
"selection_zoom": 1
},
"system": {
"file_history": [],
"first_run_shown": false,
"last_imperial_units": 5,
"last_import_export_path": "",
"last_metric_units": 1,
"max_undo_items": 0,
"show_import_issues": true,
"units": 1
},
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"footprint_text_shown_columns": "0 1 2 3 4 5 7",
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"lib_width": 250,
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
}
}

242
qa/data/config/9.99/kicad.json

@ -0,0 +1,242 @@
{
"appearance": {
"color_theme": "_builtin_default",
"left_frame_width": 200
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_string": "",
"search_and_replace": false
},
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"meta": {
"version": 0
},
"pcm": {
"check_for_updates": true,
"last_download_dir": "",
"lib_auto_add": true,
"lib_auto_remove": true,
"lib_prefix": "PCM_",
"repositories": [
{
"name": "KiCad official repository",
"url": "https://repository.kicad.org/repository.json"
}
]
},
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"search_pane": {
"selection_zoom": 1
},
"system": {
"check_for_kicad_updates": true,
"file_history": [],
"first_run_shown": false,
"last_design_block_lib_dir": "",
"last_imperial_units": 5,
"last_metric_units": 1,
"last_received_update": "",
"last_update_check_time": "",
"max_undo_items": 0,
"open_projects": [],
"show_import_issues": true,
"units": 1
},
"template": {
"window": {
"pos": {
"x": -1,
"y": -1
},
"size": {
"height": -1,
"width": -1
}
}
},
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
}
}

92
qa/data/config/9.99/kicad_common.json

@ -0,0 +1,92 @@
{
"api": {
"enable_server": false,
"interpreter_path": "/Users/jon/src/kicad-mac-builder/build/python-dest/Library/Frameworks/Python.framework/Versions/Current/bin/python3"
},
"appearance": {
"grid_striping": false,
"hicontrast_dimming_factor": 0.800000011920929,
"show_scrollbars": false,
"text_editor_zoom": 0,
"toolbar_icon_size": 24,
"use_icons_in_menus": false
},
"auto_backup": {
"backup_on_autosave": false,
"enabled": true,
"limit_daily_files": 5,
"limit_total_files": 25,
"limit_total_size": 104857600,
"min_interval": 300
},
"do_not_show_again": {
"data_collection_prompt": false,
"env_var_overwrite_warning": false,
"scaled_3d_models_warning": false,
"update_check_prompt": false,
"zone_fill_warning": false
},
"environment": {
"vars": null
},
"git": {
"authorEmail": "",
"authorName": "",
"repositories": null,
"useDefaultAuthor": true
},
"graphics": {
"cairo_antialiasing_mode": 0,
"opengl_antialiasing_mode": 1
},
"input": {
"auto_pan": false,
"auto_pan_acceleration": 5,
"center_on_zoom": true,
"focus_follow_sch_pcb": false,
"horizontal_pan": false,
"hotkey_feedback": true,
"immediate_actions": true,
"mouse_left": -1,
"mouse_middle": 2,
"mouse_right": 2,
"reverse_scroll_pan_h": false,
"reverse_scroll_zoom": false,
"scroll_modifier_pan_h": 308,
"scroll_modifier_pan_v": 306,
"scroll_modifier_zoom": 0,
"warp_mouse_on_move": true,
"zoom_acceleration": false,
"zoom_speed": 5,
"zoom_speed_auto": true
},
"meta": {
"filename": "kicad_common.json",
"version": 3
},
"netclass_panel": {
"eeschema_shown_columns": "0 10 11 12 13",
"pcbnew_shown_columns": "0 1 2 3 4 5 6 7 8 9",
"sash_pos": 160
},
"package_manager": {
"sash_pos": 380
},
"session": {
"pinned_design_block_libs": [],
"pinned_fp_libs": [],
"pinned_symbol_libs": [],
"remember_open_files": false
},
"system": {
"autosave_interval": 600,
"clear_3d_cache_interval": 30,
"file_explorer": "",
"file_history_size": 9,
"language": "Default",
"pdf_viewer_name": "",
"text_editor": "/usr/bin/open -e",
"use_system_pdf_viewer": true,
"working_dir": "/Users/jon/src/kicad/qa/tests/cli"
}
}

727
qa/data/config/9.99/pcbnew.json

@ -0,0 +1,727 @@
{
"action_plugins": [],
"appearance": {
"color_theme": "_builtin_default"
},
"aui": {
"appearance_expand_layer_display": false,
"appearance_expand_net_display": false,
"appearance_panel_tab": 0,
"net_inspector_width": -1,
"properties_panel_width": -1,
"properties_splitter_proportion": 0.5,
"right_panel_width": -1,
"search_panel_dock_direction": 3,
"search_panel_height": -1,
"search_panel_width": -1,
"show_layer_manager": true,
"show_net_inspector": false,
"show_properties": false,
"show_search": false
},
"cleanup": {
"cleanup_refill_zones": true,
"cleanup_short_circuits": true,
"cleanup_tracks_in_pad": false,
"cleanup_unconnected": true,
"cleanup_vias": true,
"delete_dangling_vias": true,
"merge_segments": true
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"drc_dialog": {
"refill_zones": true,
"severities": 48,
"test_all_track_errors": false,
"test_footprints": false
},
"editing": {
"allow_free_pads": false,
"arc_edit_mode": 0,
"auto_fill_zones": false,
"ctrl_click_highlight": false,
"esc_clears_net_highlight": true,
"flip_left_right": false,
"magnetic_all_layers": false,
"magnetic_graphics": true,
"magnetic_pads": 1,
"magnetic_tracks": 1,
"pcb_use_45_degree_limit": false,
"polar_coords": false,
"rotation_angle": 900,
"show_courtyard_collisions": true,
"track_drag_action": 1
},
"export_2581": {
"compress": false,
"precision": 6,
"units": 0,
"version": 1
},
"export_idf": {
"auto_adjust": false,
"ref_units": 0,
"ref_x": 0.0,
"ref_y": 0.0,
"units_mils": false
},
"export_odb": {
"compress_format": 1,
"precision": 6,
"units": 0
},
"export_step": {
"no_dnp": false,
"no_unspecified": false,
"origin_mode": 1,
"origin_units": 0,
"origin_x": 0.0,
"origin_y": 0.0,
"overwrite_file": true,
"replace_models": true
},
"export_svg": {
"black_and_white": false,
"color_theme": "",
"layers": [],
"mirror": false,
"one_file": false,
"output_dir": "",
"page_size": 0,
"plot_board_edges": true,
"use_theme": true
},
"export_vrml": {
"copy_3d_models": false,
"no_dnp": false,
"no_unspecified": false,
"origin_mode": 0,
"ref_units": 0,
"ref_x": 0.0,
"ref_y": 0.0,
"units": 1,
"use_relative_paths": false
},
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_string": "",
"search_and_replace": false
},
"footprint_chooser": {
"filter_on_pin_count": false,
"height": -1,
"sash_h": -1,
"sash_v": -1,
"sort_mode": 0,
"use_fp_filters": false,
"width": -1
},
"footprint_viewer": {
"autozoom": true,
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"fp_list_width": 300,
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"lib_list_width": 200,
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom": 1.0,
"zoom_factors": []
},
"footprint_wizard": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
},
"footprint_wizard_list": {
"height": -1,
"width": -1
},
"gen_drill": {
"drill_file_type": 0,
"generate_map": false,
"map_file_type": 1,
"merge_pth_npth": false,
"minimal_header": false,
"mirror": false,
"unit_drill_is_inch": false,
"use_route_for_oval_holes": true,
"zeros_format": 0
},
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"import_graphics": {
"dxf_units": 0,
"fix_discontinuities": true,
"group_items": true,
"interactive_placement": true,
"layer": 17,
"line_width": 0.2,
"line_width_units": 0,
"origin_units": 0,
"origin_x": 0.0,
"origin_y": 0.0,
"tolerance": 1.0,
"use_dlg_layer_selection": true
},
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"meta": {
"version": 5
},
"netlist": {
"associate_by_ref_sch": false,
"delete_extra_footprints": false,
"delete_shorting_tracks": false,
"report_filter": -1,
"update_footprints": true
},
"pcb_display": {
"force_show_fields_when_fp_selected": true,
"graphic_items_fill": true,
"graphics_fill": true,
"live_3d_refresh": false,
"max_links_shown": 3,
"net_names_mode": 3,
"origin_invert_x_axis": false,
"origin_invert_y_axis": false,
"origin_mode": 0,
"pad_clearance": true,
"pad_fill": true,
"pad_numbers": true,
"ratsnest_curved": false,
"ratsnest_footprint": true,
"ratsnest_global": true,
"ratsnest_thickness": 0.5,
"show_page_borders": true,
"text_fill": true,
"track_clearance_mode": 2,
"track_fill": true,
"via_fill": true
},
"place_file": {
"excludeTH": false,
"file_format": 0,
"file_options": 0,
"include_board_edge": false,
"negate_xcoord": false,
"onlySMD": false,
"units": 1,
"use_place_file_origin": true
},
"plot": {
"all_layers_on_one_page": 1,
"as_item_checkboxes": false,
"check_zones_before_plotting": true,
"edgecut_on_all_layers": true,
"fine_scale_x": 0.0,
"fine_scale_y": 0.0,
"mirror": false,
"pads_drill_mode": 2,
"ps_fine_width_adjust": 0.0
},
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"reannotate_dialog": {
"annotate_back_prefix": "",
"annotate_back_refdes_start": "",
"annotate_choice": 0,
"annotate_exclude_list": "",
"annotate_exclude_locked": false,
"annotate_front_prefix": "",
"annotate_front_refdes_start": "1",
"annotate_grid_index": 0,
"annotate_remove_back_prefix": false,
"annotate_remove_front_prefix": false,
"annotate_report_file_name": "",
"annotate_report_severity": 0,
"annotate_sort_code": 0,
"annotate_sort_on_modules": true
},
"search_pane": {
"selection_zoom": 1
},
"system": {
"file_history": [],
"first_run_shown": false,
"last_footprint3d_dir": "",
"last_footprint_lib_dir": "",
"last_imperial_units": 5,
"last_metric_units": 1,
"max_undo_items": 0,
"show_import_issues": true,
"units": 1
},
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"footprint_text_shown_columns": "0 1 2 3 4 5 7",
"grid": {
"axes_enabled": false,
"fast_grid_1": 15,
"fast_grid_2": 16,
"last_size": 15,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": false,
"override_connected_idx": 16,
"override_graphics": false,
"override_graphics_idx": 15,
"override_text": false,
"override_text_idx": 18,
"override_vias": false,
"override_vias_idx": 18,
"override_wires": false,
"override_wires_idx": 19,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "1000 mil",
"y": "1000 mil"
},
{
"name": "",
"x": "500 mil",
"y": "500 mil"
},
{
"name": "",
"x": "250 mil",
"y": "250 mil"
},
{
"name": "",
"x": "200 mil",
"y": "200 mil"
},
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "20 mil",
"y": "20 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
},
{
"name": "",
"x": "5 mil",
"y": "5 mil"
},
{
"name": "",
"x": "2 mil",
"y": "2 mil"
},
{
"name": "",
"x": "1 mil",
"y": "1 mil"
},
{
"name": "",
"x": "5.0 mm",
"y": "5.0 mm"
},
{
"name": "",
"x": "2.5 mm",
"y": "2.5 mm"
},
{
"name": "",
"x": "1.0 mm",
"y": "1.0 mm"
},
{
"name": "",
"x": "0.5 mm",
"y": "0.5 mm"
},
{
"name": "",
"x": "0.25 mm",
"y": "0.25 mm"
},
{
"name": "",
"x": "0.2 mm",
"y": "0.2 mm"
},
{
"name": "",
"x": "0.1 mm",
"y": "0.1 mm"
},
{
"name": "",
"x": "0.05 mm",
"y": "0.05 mm"
},
{
"name": "",
"x": "0.025 mm",
"y": "0.025 mm"
},
{
"name": "",
"x": "0.01 mm",
"y": "0.01 mm"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
},
"zones": {
"net_sort_mode": -1
}
}

5
qa/data/config/9.99/sym-lib-table

@ -0,0 +1,5 @@
(sym_lib_table
(version 7)
(lib (name "Device")(type "KiCad")(uri "${KICAD9_SYMBOL_DIR}/Device.kicad_sym")(options "")(descr "Generic symbols for common devices"))
(lib (name "power")(type "KiCad")(uri "${KICAD9_SYMBOL_DIR}/power.kicad_sym")(options "")(descr "Power symbols, special power flags"))
)

169
qa/data/config/9.99/symbol_editor.json

@ -0,0 +1,169 @@
{
"appearance": {
"color_theme": "_builtin_default"
},
"aui": {
"properties_panel_width": -1,
"properties_splitter_proportion": 0.5,
"show_properties": true
},
"color_picker": {
"default_tab": 0
},
"cross_probing": {
"auto_highlight": true,
"center_on_items": true,
"on_selection": true,
"zoom_to_fit": true
},
"defaults": {
"line_width": 0,
"pin_length": 100,
"pin_name_size": 50,
"pin_num_size": 50,
"text_size": 50
},
"drag_pins_along_with_edges": true,
"edit_symbol_visible_columns": "0 1 2 3 4 5 6 7",
"find_replace": {
"find_history": [],
"find_string": "",
"match_case": false,
"match_mode": 0,
"replace_history": [],
"replace_string": "",
"search_and_replace": false
},
"graphics": {
"canvas_type": 1,
"highlight_factor": 0.5,
"select_factor": 0.75
},
"import_graphics": {
"dxf_units": 0,
"interactive_placement": true,
"line_width": 0.2,
"line_width_units": 0,
"origin_units": 0,
"origin_x": 0.0,
"origin_y": 0.0
},
"lib_table_width": 250,
"lib_tree": {
"column_widths": null,
"columns": [],
"open_libs": []
},
"library": {
"sort_mode": 0
},
"meta": {
"version": 1
},
"pin_table_visible_columns": "0 1 2 3 4 5 9 10",
"plugins": {
"actions": []
},
"printing": {
"background": false,
"color_theme": "",
"layers": [],
"monochrome": true,
"scale": 1.0,
"title_block": false,
"use_theme": false
},
"repeat": {
"label_delta": 1,
"pin_step": 100
},
"search_pane": {
"selection_zoom": 1
},
"selection_filter": {
"graphics": true,
"images": true,
"labels": true,
"lockedItems": false,
"otherItems": true,
"pins": true,
"symbols": true,
"text": true,
"wires": true
},
"show_hidden_lib_fields": true,
"show_hidden_lib_pins": true,
"show_pin_alt_icons": true,
"show_pin_electrical_type": true,
"system": {
"file_history": [],
"first_run_shown": false,
"last_imperial_units": 5,
"last_metric_units": 1,
"max_undo_items": 0,
"show_import_issues": true,
"units": 5
},
"use_eeschema_color_settings": true,
"window": {
"cursor": {
"always_show_cursor": true,
"fullscreen_cursor": false
},
"display": 0,
"grid": {
"axes_enabled": false,
"fast_grid_1": 1,
"fast_grid_2": 2,
"last_size": 1,
"line_width": 1.0,
"min_spacing": 10.0,
"override_connected": true,
"override_connected_idx": 1,
"override_graphics": false,
"override_graphics_idx": 2,
"override_text": true,
"override_text_idx": 3,
"override_vias": false,
"override_vias_idx": 0,
"override_wires": true,
"override_wires_idx": 1,
"overrides_enabled": true,
"show": true,
"sizes": [
{
"name": "",
"x": "100 mil",
"y": "100 mil"
},
{
"name": "",
"x": "50 mil",
"y": "50 mil"
},
{
"name": "",
"x": "25 mil",
"y": "25 mil"
},
{
"name": "",
"x": "10 mil",
"y": "10 mil"
}
],
"snap": 0,
"style": 0,
"user_grid_x": "",
"user_grid_y": ""
},
"maximized": false,
"mru_path": "",
"perspective": "",
"pos_x": 0,
"pos_y": 0,
"size_x": 0,
"size_y": 0,
"zoom_factors": []
}
}

23
qa/tests/cli/README.txt

@ -0,0 +1,23 @@
To run these tests manually, you may need to set some or all of
the following environment variables:
# Replace with the path to kicad-cli in your build environment
KICAD_CLI=/path/to/kicad/cmake-build-debug/kicad/KiCad.app/Contents/MacOS/kicad-cli
KICAD_RUN_FROM_BUILD_DIR=1
On macOS you will also need to take the following steps if you want to
test kicad-cli from the build dir:
1) Symlink the contents of the folder:
/path/to/kicad-mac-builder/build/python-dest/Library/Frameworks/Python.framework/Versions/3.9/
from your kicad-mac-builder folder into the folder:
/path/to/kicad/cmake-build-debug/kicad/KiCad.app/Contents/Frameworks/Python.framework/Versions/3.9/
inside your KiCad build directory.
2) Set the following environment variable so that the Python dll is found:
DYLD_LIBRARY_PATH=/path/to/kicad-mac-builder/build/python-dest/

9
qa/tests/cli/test_common.py

@ -25,30 +25,29 @@ import utils
import re
def test_version():
command = ["kicad-cli", "version"]
command = [utils.kicad_cli(), "version"]
stdout, stderr, exitcode = utils.run_and_capture(command)
assert exitcode == 0
assert re.match("\\d+.\\d+.\\d+", stdout)
assert stderr == ''
def test_version_plain():
command = ["kicad-cli", "version", "--format=plain"]
command = [utils.kicad_cli(), "version", "--format=plain"]
stdout, stderr, exitcode = utils.run_and_capture(command)
assert exitcode == 0
assert re.match("\\d+.\\d+.\\d+", stdout)
assert stderr == ''
def test_version_commit():
command = ["kicad-cli", "version", "--format=commit"]
command = [utils.kicad_cli(), "version", "--format=commit"]
stdout, stderr, exitcode = utils.run_and_capture(command)
assert exitcode == 0
assert re.match("\\b[0-9a-f]{40}\\b", stdout)
assert stderr == ''
def test_help():
command = ["kicad-cli", "help"]
command = [utils.kicad_cli(), "help"]
stdout, stderr, exitcode = utils.run_and_capture(command)
assert exitcode == 1
assert stdout != ''
assert stderr == ''

4
qa/tests/cli/test_pcb.py

@ -82,7 +82,7 @@ def test_pcb_export_svg( kitest: KiTestFixture,
"export_svg",
layer_name )
command = ["kicad-cli", "pcb", "export", "svg", "--page-size-mode", "1", # 1=Current page size
command = [utils.kicad_cli(), "pcb", "export", "svg", "--page-size-mode", "1", # 1=Current page size
"--exclude-drawing-sheet", "--black-and-white", "--layers", layer_name,
"-o", str(generated_svg_path), input_file]
@ -127,7 +127,7 @@ def test_pcb_export_gerber( kitest: KiTestFixture,
"export_gerber",
layer_name )
command = ["kicad-cli", "pcb", "export", "gerber", "--no-x2", "--use-drill-file-origin",
command = [utils.kicad_cli(), "pcb", "export", "gerber", "--no-x2", "--use-drill-file-origin",
"--layers", layer_name,
"-o", str(generated_gerber_path), input_file]

12
qa/tests/cli/test_sch.py

@ -41,7 +41,7 @@ def test_sch_export_svg( kitest,
output_path = kitest.get_output_path( "cli/{}/".format( output_dir ) )
command = ["kicad-cli", "sch", "export", "svg"]
command = [utils.kicad_cli(), "sch", "export", "svg"]
command.extend( cli_args )
command.append( "-o" )
command.append( str( output_path ) )
@ -89,7 +89,7 @@ def test_sch_export_netlist( kitest,
output_filepath = kitest.get_output_path( "cli/" ).joinpath( output_fn )
command = ["kicad-cli", "sch", "export", "netlist"]
command = [utils.kicad_cli(), "sch", "export", "netlist"]
command.extend( cli_args )
command.append( "-o" )
command.append( str( output_filepath ) )
@ -120,7 +120,7 @@ def test_sch_export_pdf( kitest,
output_filepath = kitest.get_output_path( "cli/" ).joinpath( output_fn )
command = ["kicad-cli", "sch", "export", "pdf"]
command = [utils.kicad_cli(), "sch", "export", "pdf"]
command.extend( cli_args )
command.append( "-o" )
command.append( str( output_filepath ) )
@ -147,7 +147,7 @@ def test_sch_export_pythonbom( kitest,
output_filepath = kitest.get_output_path( "cli/" ).joinpath( output_fn )
command = ["kicad-cli", "sch", "export", "python-bom"]
command = [utils.kicad_cli(), "sch", "export", "python-bom"]
command.extend( cli_args )
command.append( "-o" )
command.append( str( output_filepath ) )
@ -167,7 +167,7 @@ def test_sch_export_pythonbom( kitest,
@pytest.mark.parametrize("test_file,output_fn,line_skip_count,skip_compare,expected_exit_code,cli_args",
[("cli/basic_test/basic_test.kicad_sch", "basic_test.erc.rpt", 1, False, 0, []),
("cli/basic_test/basic_test.kicad_sch", "basic_test.erc.rpt", 1, False, 0, ["--format=report"]),
("cli/basic_test/basic_test.kicad_sch", "basic_test.erc.json", 4, False,0, ["--format=json"]),
("cli/basic_test/basic_test.kicad_sch", "basic_test.erc.json", 5, False,0, ["--format=json"]),
("cli/basic_test/basic_test.kicad_sch", "basic_test.erc.unitsin.rpt", 1, False, 0, ["--format=report", "--units=in"]),
])
def test_sch_export_erc( kitest,
@ -182,7 +182,7 @@ def test_sch_export_erc( kitest,
output_filepath = kitest.get_output_path( "cli/" ).joinpath( output_fn )
command = ["kicad-cli", "sch", "erc"]
command = [utils.kicad_cli(), "sch", "erc"]
command.extend( cli_args )
command.append( "-o" )
command.append( str( output_filepath ) )

19
qa/tests/cli/utils.py

@ -35,15 +35,28 @@ import numpy as np
logger = logging.getLogger("cli_util")
Image.MAX_IMAGE_PIXELS = 800 * 1024 * 1024 // 4 # Increase limit to ~800MB uncompressed RGBA, 4bpp (~600MB RGB, 3bpp)
def kicad_cli() -> str:
if 'KICAD_CLI' in os.environ:
return os.environ.get('KICAD_CLI')
return "kicad-cli"
def run_and_capture( command: list ) -> Tuple[ str, str, int ]:
logger.info("Executing command \"%s\"", " ".join( command ))
# MacOS qa_cli uses the installed kicad-cli
env = {}
env.update(os.environ)
if platform.system() == "Darwin":
env.pop('KICAD_RUN_FROM_BUILD_DIR')
if 'KICAD_CONFIG_HOME' not in env:
if 'QA_DATA_ROOT' in env:
base_path = env.get('QA_DATA_ROOT')
else:
# cwd ./qa/tests/cli/
base_path = os.path.join(os.getcwd(), '../../data')
env['KICAD_CONFIG_HOME'] = os.path.join(base_path, 'config')
env['KICAD9_SYMBOL_DIR'] = os.path.join(base_path, 'libraries')
env['KICAD9_FOOTPRINT_DIR'] = os.path.join(base_path, 'libraries')
proc = subprocess.Popen( command,
stdout = subprocess.PIPE,

Loading…
Cancel
Save