Pārlūkot izejas kodu

add 3d model to prototype pcb

Thomas Buck 1 mēnesi atpakaļ
vecāks
revīzija
e1ccb060a5
12 mainītis faili ar 22122 papildinājumiem un 9542 dzēšanām
  1. 0
    6
      .github/workflows/docs.yml
  2. 6
    0
      README.md
  3. 14
    10
      docs/generate_docs.sh
  4. 10476
    2447
      pcb/drumkit.kicad_pcb
  5. 109
    12
      pcb/drumkit.kicad_pro
  6. 8095
    2956
      pcb/drumkit.kicad_sch
  7. 3403
    4110
      pcb/fp-info-cache
  8. 1
    0
      pcb/fp-lib-table
  9. 1
    0
      pcb/sym-lib-table
  10. 1
    1
      pcb2/KiCad-RP-Pico
  11. 8
    0
      pcb2/lars2.kicad_pcb
  12. 8
    0
      pcb2/lars2.kicad_sch

+ 0
- 6
.github/workflows/docs.yml Parādīt failu

64
           curl -sSL $url | tar -xz --directory=./mdbook
64
           curl -sSL $url | tar -xz --directory=./mdbook
65
           echo `pwd`/mdbook >> $GITHUB_PATH
65
           echo `pwd`/mdbook >> $GITHUB_PATH
66
 
66
 
67
-      - name: Generate Plots
68
-        run: pcb/generate_plot.sh
69
-
70
-      - name: Render STLs
71
-        run: 3dprint/generate_stls.sh
72
-
73
       - name: Build Book
67
       - name: Build Book
74
         run: docs/generate_docs.sh build
68
         run: docs/generate_docs.sh build
75
 
69
 

+ 6
- 0
README.md Parādīt failu

42
 The docs are built using [mdbook](https://github.com/rust-lang/mdBook), licensed as `MPL-2.0`.
42
 The docs are built using [mdbook](https://github.com/rust-lang/mdBook), licensed as `MPL-2.0`.
43
 Get the [latest release from GitHub](https://github.com/rust-lang/mdBook/releases) for a pre-built binary if you want to test changes to the docs locally.
43
 Get the [latest release from GitHub](https://github.com/rust-lang/mdBook/releases) for a pre-built binary if you want to test changes to the docs locally.
44
 
44
 
45
+    ./pcb/generate_plot.sh
46
+    ./pcb2/generate_plot.sh
47
+    ./3dprint/generate_stls.sh
48
+
45
     ./docs/generate_docs.sh serve
49
     ./docs/generate_docs.sh serve
46
 
50
 
47
 This will open your browser to a local development instance of the docs.
51
 This will open your browser to a local development instance of the docs.
106
 The schematic and PCB design of this project is licensed under the [CERN Open Hardware Licence Version 2 - Strongly Reciprocal (CERN-OHL-S-2.0+)](https://ohwr.org/cern_ohl_s_v2.txt) or any later version.
110
 The schematic and PCB design of this project is licensed under the [CERN Open Hardware Licence Version 2 - Strongly Reciprocal (CERN-OHL-S-2.0+)](https://ohwr.org/cern_ohl_s_v2.txt) or any later version.
107
 A copy of the license can be found in `LICENSE`.
111
 A copy of the license can be found in `LICENSE`.
108
 
112
 
113
+The PCB designs use a [KiCad-RP-Pico based](https://github.com/ncarandini/KiCad-RP-Pico) symbol and footprint library, licensed as `CC-BY-SA 4.0`.
114
+
109
      ------------------------------------------------------------------------------
115
      ------------------------------------------------------------------------------
110
     | This source describes Open Hardware and is licensed under the CERN-OHL-S v2  |
116
     | This source describes Open Hardware and is licensed under the CERN-OHL-S v2  |
111
     | or any later version.                                                        |
117
     | or any later version.                                                        |

+ 14
- 10
docs/generate_docs.sh Parādīt failu

31
 
31
 
32
 cd "$(dirname "$0")"
32
 cd "$(dirname "$0")"
33
 
33
 
34
-#echo "Generating plots"
34
+if [ "$1" = "build" ] ; then
35
+    echo "Generating plots"
36
+    ../pcb/generate_plot.sh
37
+    echo
38
+
39
+    echo "Generating plots 2"
40
+    ../pcb2/generate_plot.sh
41
+    echo
42
+
43
+    echo "Generating stls"
44
+    ../3dprint/generate_stls.sh
45
+    echo
46
+fi
47
+
35
 rm -rf src/plot
48
 rm -rf src/plot
36
-#../pcb/generate_plot.sh
37
 cp -r ../pcb/plot src
49
 cp -r ../pcb/plot src
38
-#echo
39
-
40
-#echo "Generating plots 2"
41
-#../pcb/generate_plot.sh
42
 cp -r ../pcb2/plot/* src/plot/
50
 cp -r ../pcb2/plot/* src/plot/
43
-#echo
44
 
51
 
45
-#echo "Generating stls"
46
 rm -rf src/stl
52
 rm -rf src/stl
47
-#../3dprint/generate_stls.sh
48
 cp -r ../3dprint/stl src
53
 cp -r ../3dprint/stl src
49
-#echo
50
 
54
 
51
 INSTL=`ls ../3dprint/stl/*.stl`
55
 INSTL=`ls ../3dprint/stl/*.stl`
52
 
56
 

+ 10476
- 2447
pcb/drumkit.kicad_pcb
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 109
- 12
pcb/drumkit.kicad_pro Parādīt failu

3
     "3dviewports": [],
3
     "3dviewports": [],
4
     "design_settings": {
4
     "design_settings": {
5
       "defaults": {
5
       "defaults": {
6
-        "board_outline_line_width": 0.09999999999999999,
7
-        "copper_line_width": 0.19999999999999998,
6
+        "apply_defaults_to_fp_fields": false,
7
+        "apply_defaults_to_fp_shapes": false,
8
+        "apply_defaults_to_fp_text": false,
9
+        "board_outline_line_width": 0.1,
10
+        "copper_line_width": 0.2,
8
         "copper_text_italic": false,
11
         "copper_text_italic": false,
9
         "copper_text_size_h": 1.5,
12
         "copper_text_size_h": 1.5,
10
         "copper_text_size_v": 1.5,
13
         "copper_text_size_v": 1.5,
11
         "copper_text_thickness": 0.3,
14
         "copper_text_thickness": 0.3,
12
         "copper_text_upright": false,
15
         "copper_text_upright": false,
13
-        "courtyard_line_width": 0.049999999999999996,
16
+        "courtyard_line_width": 0.05,
14
         "dimension_precision": 4,
17
         "dimension_precision": 4,
15
         "dimension_units": 3,
18
         "dimension_units": 3,
16
         "dimensions": {
19
         "dimensions": {
21
           "text_position": 0,
24
           "text_position": 0,
22
           "units_format": 1
25
           "units_format": 1
23
         },
26
         },
24
-        "fab_line_width": 0.09999999999999999,
27
+        "fab_line_width": 0.1,
25
         "fab_text_italic": false,
28
         "fab_text_italic": false,
26
         "fab_text_size_h": 1.0,
29
         "fab_text_size_h": 1.0,
27
         "fab_text_size_v": 1.0,
30
         "fab_text_size_v": 1.0,
72
         "duplicate_footprints": "warning",
75
         "duplicate_footprints": "warning",
73
         "extra_footprint": "warning",
76
         "extra_footprint": "warning",
74
         "footprint": "error",
77
         "footprint": "error",
78
+        "footprint_symbol_mismatch": "warning",
75
         "footprint_type_mismatch": "ignore",
79
         "footprint_type_mismatch": "ignore",
76
         "hole_clearance": "error",
80
         "hole_clearance": "error",
77
         "hole_near_hole": "error",
81
         "hole_near_hole": "error",
116
         "min_copper_edge_clearance": 0.0,
120
         "min_copper_edge_clearance": 0.0,
117
         "min_hole_clearance": 0.25,
121
         "min_hole_clearance": 0.25,
118
         "min_hole_to_hole": 0.25,
122
         "min_hole_to_hole": 0.25,
119
-        "min_microvia_diameter": 0.19999999999999998,
120
-        "min_microvia_drill": 0.09999999999999999,
123
+        "min_microvia_diameter": 0.2,
124
+        "min_microvia_drill": 0.1,
121
         "min_resolved_spokes": 2,
125
         "min_resolved_spokes": 2,
122
         "min_silk_clearance": 0.0,
126
         "min_silk_clearance": 0.0,
123
-        "min_text_height": 0.7999999999999999,
127
+        "min_text_height": 0.8,
124
         "min_text_thickness": 0.08,
128
         "min_text_thickness": 0.08,
125
         "min_through_hole_diameter": 0.3,
129
         "min_through_hole_diameter": 0.3,
126
         "min_track_width": 0.0,
130
         "min_track_width": 0.0,
127
-        "min_via_annular_width": 0.09999999999999999,
131
+        "min_via_annular_width": 0.1,
128
         "min_via_diameter": 0.5,
132
         "min_via_diameter": 0.5,
129
         "solder_mask_clearance": 0.0,
133
         "solder_mask_clearance": 0.0,
130
         "solder_mask_min_width": 0.0,
134
         "solder_mask_min_width": 0.0,
133
       },
137
       },
134
       "teardrop_options": [
138
       "teardrop_options": [
135
         {
139
         {
136
-          "td_allow_use_two_tracks": true,
137
-          "td_curve_segcount": 5,
138
-          "td_on_pad_in_zone": false,
139
           "td_onpadsmd": true,
140
           "td_onpadsmd": true,
140
           "td_onroundshapesonly": false,
141
           "td_onroundshapesonly": false,
141
           "td_ontrackend": false,
142
           "td_ontrackend": false,
144
       ],
145
       ],
145
       "teardrop_parameters": [
146
       "teardrop_parameters": [
146
         {
147
         {
148
+          "td_allow_use_two_tracks": true,
147
           "td_curve_segcount": 0,
149
           "td_curve_segcount": 0,
148
           "td_height_ratio": 1.0,
150
           "td_height_ratio": 1.0,
149
           "td_length_ratio": 0.5,
151
           "td_length_ratio": 0.5,
150
           "td_maxheight": 2.0,
152
           "td_maxheight": 2.0,
151
           "td_maxlen": 1.0,
153
           "td_maxlen": 1.0,
154
+          "td_on_pad_in_zone": false,
152
           "td_target_name": "td_round_shape",
155
           "td_target_name": "td_round_shape",
153
           "td_width_to_size_filter_ratio": 0.9
156
           "td_width_to_size_filter_ratio": 0.9
154
         },
157
         },
155
         {
158
         {
159
+          "td_allow_use_two_tracks": true,
156
           "td_curve_segcount": 0,
160
           "td_curve_segcount": 0,
157
           "td_height_ratio": 1.0,
161
           "td_height_ratio": 1.0,
158
           "td_length_ratio": 0.5,
162
           "td_length_ratio": 0.5,
159
           "td_maxheight": 2.0,
163
           "td_maxheight": 2.0,
160
           "td_maxlen": 1.0,
164
           "td_maxlen": 1.0,
165
+          "td_on_pad_in_zone": false,
161
           "td_target_name": "td_rect_shape",
166
           "td_target_name": "td_rect_shape",
162
           "td_width_to_size_filter_ratio": 0.9
167
           "td_width_to_size_filter_ratio": 0.9
163
         },
168
         },
164
         {
169
         {
170
+          "td_allow_use_two_tracks": true,
165
           "td_curve_segcount": 0,
171
           "td_curve_segcount": 0,
166
           "td_height_ratio": 1.0,
172
           "td_height_ratio": 1.0,
167
           "td_length_ratio": 0.5,
173
           "td_length_ratio": 0.5,
168
           "td_maxheight": 2.0,
174
           "td_maxheight": 2.0,
169
           "td_maxlen": 1.0,
175
           "td_maxlen": 1.0,
176
+          "td_on_pad_in_zone": false,
170
           "td_target_name": "td_track_end",
177
           "td_target_name": "td_track_end",
171
           "td_width_to_size_filter_ratio": 0.9
178
           "td_width_to_size_filter_ratio": 0.9
172
         }
179
         }
176
         1.0,
183
         1.0,
177
         2.0
184
         2.0
178
       ],
185
       ],
186
+      "tuning_pattern_settings": {
187
+        "diff_pair_defaults": {
188
+          "corner_radius_percentage": 80,
189
+          "corner_style": 1,
190
+          "max_amplitude": 1.0,
191
+          "min_amplitude": 0.2,
192
+          "single_sided": false,
193
+          "spacing": 1.0
194
+        },
195
+        "diff_pair_skew_defaults": {
196
+          "corner_radius_percentage": 80,
197
+          "corner_style": 1,
198
+          "max_amplitude": 1.0,
199
+          "min_amplitude": 0.2,
200
+          "single_sided": false,
201
+          "spacing": 0.6
202
+        },
203
+        "single_track_defaults": {
204
+          "corner_radius_percentage": 80,
205
+          "corner_style": 1,
206
+          "max_amplitude": 1.0,
207
+          "min_amplitude": 0.2,
208
+          "single_sided": false,
209
+          "spacing": 0.6
210
+        }
211
+      },
179
       "via_dimensions": [
212
       "via_dimensions": [
180
         {
213
         {
181
           "diameter": 0.0,
214
           "diameter": 0.0,
460
   },
493
   },
461
   "schematic": {
494
   "schematic": {
462
     "annotate_start_num": 0,
495
     "annotate_start_num": 0,
496
+    "bom_fmt_presets": [],
497
+    "bom_fmt_settings": {
498
+      "field_delimiter": ",",
499
+      "keep_line_breaks": false,
500
+      "keep_tabs": false,
501
+      "name": "CSV",
502
+      "ref_delimiter": ",",
503
+      "ref_range_delimiter": "",
504
+      "string_delimiter": "\""
505
+    },
506
+    "bom_presets": [],
507
+    "bom_settings": {
508
+      "exclude_dnp": false,
509
+      "fields_ordered": [
510
+        {
511
+          "group_by": false,
512
+          "label": "Reference",
513
+          "name": "Reference",
514
+          "show": true
515
+        },
516
+        {
517
+          "group_by": true,
518
+          "label": "Value",
519
+          "name": "Value",
520
+          "show": true
521
+        },
522
+        {
523
+          "group_by": false,
524
+          "label": "Datasheet",
525
+          "name": "Datasheet",
526
+          "show": true
527
+        },
528
+        {
529
+          "group_by": false,
530
+          "label": "Footprint",
531
+          "name": "Footprint",
532
+          "show": true
533
+        },
534
+        {
535
+          "group_by": false,
536
+          "label": "Qty",
537
+          "name": "${QUANTITY}",
538
+          "show": true
539
+        },
540
+        {
541
+          "group_by": true,
542
+          "label": "DNP",
543
+          "name": "${DNP}",
544
+          "show": true
545
+        }
546
+      ],
547
+      "filter_string": "",
548
+      "group_symbols": true,
549
+      "name": "Grouped By Value",
550
+      "sort_asc": true,
551
+      "sort_field": "Reference"
552
+    },
553
+    "connection_grid_size": 50.0,
463
     "drawing": {
554
     "drawing": {
464
       "dashed_lines_dash_length_ratio": 12.0,
555
       "dashed_lines_dash_length_ratio": 12.0,
465
       "dashed_lines_gap_length_ratio": 3.0,
556
       "dashed_lines_gap_length_ratio": 3.0,
473
       "intersheets_ref_suffix": "",
564
       "intersheets_ref_suffix": "",
474
       "junction_size_choice": 3,
565
       "junction_size_choice": 3,
475
       "label_size_ratio": 0.375,
566
       "label_size_ratio": 0.375,
567
+      "operating_point_overlay_i_precision": 3,
568
+      "operating_point_overlay_i_range": "~A",
569
+      "operating_point_overlay_v_precision": 3,
570
+      "operating_point_overlay_v_range": "~V",
571
+      "overbar_offset_ratio": 1.23,
476
       "pin_symbol_size": 25.0,
572
       "pin_symbol_size": 25.0,
477
       "text_offset_ratio": 0.15
573
       "text_offset_ratio": 0.15
478
     },
574
     },
488
     "spice_external_command": "spice \"%I\"",
584
     "spice_external_command": "spice \"%I\"",
489
     "spice_model_current_sheet_as_root": true,
585
     "spice_model_current_sheet_as_root": true,
490
     "spice_save_all_currents": false,
586
     "spice_save_all_currents": false,
587
+    "spice_save_all_dissipations": false,
491
     "spice_save_all_voltages": false,
588
     "spice_save_all_voltages": false,
492
     "subpart_first_id": 65,
589
     "subpart_first_id": 65,
493
     "subpart_id_separator": 0
590
     "subpart_id_separator": 0
495
   "sheets": [
592
   "sheets": [
496
     [
593
     [
497
       "13d14c25-8baa-4714-9b30-86acf6c3cb37",
594
       "13d14c25-8baa-4714-9b30-86acf6c3cb37",
498
-      ""
595
+      "Root"
499
     ]
596
     ]
500
   ],
597
   ],
501
   "text_variables": {}
598
   "text_variables": {}

+ 8095
- 2956
pcb/drumkit.kicad_sch
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 3403
- 4110
pcb/fp-info-cache
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 1
- 0
pcb/fp-lib-table Parādīt failu

1
 (fp_lib_table
1
 (fp_lib_table
2
   (version 7)
2
   (version 7)
3
   (lib (name "chinese_modules")(type "KiCad")(uri "${KIPRJMOD}/chinese_modules.pretty")(options "")(descr ""))
3
   (lib (name "chinese_modules")(type "KiCad")(uri "${KIPRJMOD}/chinese_modules.pretty")(options "")(descr ""))
4
+  (lib (name "KiCad-RP-Pico")(type "KiCad")(uri "${KIPRJMOD}/../pcb2/KiCad-RP-Pico/RP-Pico Libraries/MCU_RaspberryPi_and_Boards.pretty")(options "")(descr ""))
4
 )
5
 )

+ 1
- 0
pcb/sym-lib-table Parādīt failu

1
 (sym_lib_table
1
 (sym_lib_table
2
   (version 7)
2
   (version 7)
3
   (lib (name "chinese_modules")(type "KiCad")(uri "${KIPRJMOD}/chinese_modules.kicad_sym")(options "")(descr ""))
3
   (lib (name "chinese_modules")(type "KiCad")(uri "${KIPRJMOD}/chinese_modules.kicad_sym")(options "")(descr ""))
4
+  (lib (name "KiCad-RP-Pico")(type "KiCad")(uri "${KIPRJMOD}/../pcb2/KiCad-RP-Pico/RP-Pico Libraries/MCU_RaspberryPi_and_Boards.kicad_sym")(options "")(descr ""))
4
 )
5
 )

+ 1
- 1
pcb2/KiCad-RP-Pico

1
-Subproject commit 2ad50bdb5813614a2bb7c51d5f8d98d08ba826eb
1
+Subproject commit 4b791699a977e4be4238a71f178a97b15453aca6

+ 8
- 0
pcb2/lars2.kicad_pcb Parādīt failu

7
 		(legacy_teardrops no)
7
 		(legacy_teardrops no)
8
 	)
8
 	)
9
 	(paper "A4")
9
 	(paper "A4")
10
+	(title_block
11
+		(title "LARS V2")
12
+		(date "2024-04-01")
13
+		(rev "1")
14
+		(comment 1 "https://git.xythobuz.de/thomas/drumkit")
15
+		(comment 2 "Licensed under the CERN-OHL-S-2.0+")
16
+		(comment 4 "Copyright (c) 2024 Kauzerei, Thomas Buck")
17
+	)
10
 	(layers
18
 	(layers
11
 		(0 "F.Cu" signal)
19
 		(0 "F.Cu" signal)
12
 		(31 "B.Cu" signal)
20
 		(31 "B.Cu" signal)

+ 8
- 0
pcb2/lars2.kicad_sch Parādīt failu

4
 	(generator_version "8.0")
4
 	(generator_version "8.0")
5
 	(uuid "a25473f4-1652-4b35-af21-cda37f55b27b")
5
 	(uuid "a25473f4-1652-4b35-af21-cda37f55b27b")
6
 	(paper "A4")
6
 	(paper "A4")
7
+	(title_block
8
+		(title "LARS V2")
9
+		(date "2024-04-01")
10
+		(rev "1")
11
+		(comment 1 "https://git.xythobuz.de/thomas/drumkit")
12
+		(comment 2 "Licensed under the CERN-OHL-S-2.0+")
13
+		(comment 4 "Copyright (c) 2024 Kauzerei, Thomas Buck")
14
+	)
7
 	(lib_symbols
15
 	(lib_symbols
8
 		(symbol "KiCad-RP-Pico:Pico"
16
 		(symbol "KiCad-RP-Pico:Pico"
9
 			(exclude_from_sim no)
17
 			(exclude_from_sim no)

Notiek ielāde…
Atcelt
Saglabāt