Updated README, pcb and case.

This commit is contained in:
Hrvoje Cavrak 2024-03-22 20:40:39 +01:00
parent 9c69dc3cd6
commit 3500497d96
37 changed files with 72523 additions and 17 deletions

View File

@ -86,23 +86,25 @@ This will make sure you won't accidentally leave your current screen. To turn of
### Screensaver
Supposedly built in to prevent computer from entering standby, but truth be told - it is just fun to watch. Off by default, will make your mouse pointer bounce around the screen like a Pong ball. When enabled, it activates after a period of inactivity defined in user config header and automatically switches off as soon as you send any output towards that screen.
Supposedly built in to prevent computer from entering standby, but truth be told - it is just fun to watch. **Off by default**, will make your mouse pointer bounce around the screen like a Pong ball. When enabled, it activates after a period of inactivity defined in user config header and automatically switches off as soon as you send any output towards that screen.
Potential usage example - I have a buggy USB dock that won't resume video from standby, so not allowing it to sleep can be a handy workaround.
![Image](img/screensaver.gif)
## Hardware
[The circuit](schematics/DeskHop.pdf) is based on two Raspberry Pi Pico boards, chosen because they are cheap (4.10 € / pc), can be hand soldered and most suppliers have them in stock.
[The circuit](schematics/DeskHop_v1.1.pdf) is based on two Raspberry Pi Pico boards, chosen because they are cheap (4.10 € / pc), can be hand soldered and most suppliers have them in stock.
The Picos are connected using UART and separated by an Analog Devices ADuM1201 dual-channel digital isolator (~3€).
The Picos are connected using UART and separated by an Analog Devices ADuM1201 dual-channel digital isolator (~3€) or a much cheaper, faster and pin-compatible TI ISO7721DR (~1.5€).
While they normally don't have support for dual USB, thanks to an [amazing project](https://github.com/sekigon-gonnoc/Pico-PIO-USB) where USB is implemented using the programmable IO wizardry found in RP2040, there is support for it to act both as an USB host and device.
## PCB
## PCB [updated]
To keep things as simple as possible for DIY builds, the traces were kept on one side and the number of parts kept to a theoretical minimum.
![Image](img/pcb_render_s.png)
![Image](img/plocica2.png)
USB D+/D- differential lines should be identical in length, but they are slightly asymmetrical on purpose to counter the length difference on the corresponding GPIO traces PICO PCB itself, so the overall lengths should match.
@ -110,20 +112,22 @@ Zd (differential impedance) is aimed as 90 ohm (managed to get ~107, close enoug
The thickness is designed to be 1.6 mm for snap-fit to work as expected.
Planned changes:
- Add 15 ohm resistors for D+ / D- lines
- Add decoupling capacitance near VBUS line on USB-A connector (~100 uF)
- Add an ESD protection device near the USB connector
- Add indications on the silkscreen for pin1 on the ADuM1201
- Add indications on the silkscreen for which Raspberry Pi Pico pins need to be soldered
There are 2 versions of the PCB (no major differences for the user). Original (v1.0) is easier to solder and assemble, while v1.1 offers some upgrades like:
- added ESD protection (TPD4E1U06DBVR)
- added VBUS capacitor for the keyboard/mouse connectors
- silkscreen orientation markings
- holes for clone boards with headers pre-soldered and easier alignment
- USB 27 ohm resistors
... done, waiting on PCBs to re-test and verify everything. Stay tuned for an updated version!
This version is slightly more difficult to hand solder due to the small transient voltage suppressor IC and 0805 resistors, but it's totally doable. TVS can in theory be omitted (not advised) and it will still work.
Upcoming - board with bare rp2040s that doesn't need Picos, is smaller and more convenient.
## Case
Since I'm not very good with 3d, the case is [simple and basic](case/) but does the job. It should be easy to print, uses ~33g of filament and takes a couple of hours.
Horizontal PCB movements are countered by pegs sliding through holes and vertical movements by snap-fit lugs on the side - no screws required.
Horizontal PCB movements are countered by pegs sliding through holes and vertical movements by snap-fit lugs on the sides - no screws required. The case was given a slight redesign to feature the logo and two additional snap-fit lugs, so it provides a better seal.
Micro USB connectors on both boards are offset from the side of the case, so slightly larger holes should allow for cables to reach in.
@ -133,6 +137,9 @@ The lid is of a snap-fit design, with a screwdriver slot for opening. The markin
## Bill of materials
<details closed>
<summary>Click here to view original PCB v1.0 BOM</summary>
| Component | Qty | Unit Price / € | Price / €|
|--------------------|-----|----------------|----------|
| Raspberry Pi Pico | 2 | 4.10 | 8.20 |
@ -143,9 +150,28 @@ The lid is of a snap-fit design, with a screwdriver slot for opening. The markin
| | | | |
| | | Total | 11.53 |
USB-A connector can be Molex MX-67643-0910 or a cheaper/budget one that shares the same dimensions.
TI ISO7721DR can be used instead of the ADuM - it's pin-compatible, much cheaper and with better specs.
</details>
#### PCB v1.1
| Component | Part | Qty | Unit Price / € | Price / €|
|----------------|---------------------|-----|----------------|----------|
| U1, U2 | Raspberry Pi Pico | 2 | 4.10 | 8.20 |
| J1, J4 | USB-A PCB conn. | 2 | 0.20 | 0.40 |
| U4 | TI ISO7721DR | 1 | 1.40 | 1.40 |
| | (**OR** ADuM1201BRZ)| | | |
| C1, C2 | Cap 0805 SMD 100nF | 2 | 0.09 | 0.18 |
| R1, R2, R3, R4 | Res 0805 SMD 27ohm | 4 | 0.03 | 0.12 |
| U3, U5 | TPD4E1U06DBVR | 2 | 0.31 | 0.62 |
| C3, C4 | Cap 4.7uF SMD 0805 | 2 | 0.07 | 0.14 |
| J2, J3 | Headers 2.54 1x03 | 2 | 0.08 | 0.16 |
| | | | | |
| | | | Total | 11.22 |
USB-A connector can be Molex MX-67643-0910 or a cheaper/budget one that shares the same dimensions.
Additional steps:
- making the PCB ([Gerber provided](pcb/), choose 1.6 mm thickness)
@ -159,6 +185,8 @@ The standard process to do that is using isopropyl alcohol and an old toothbrush
[![PCB Assembly Guide](img/yt-video-s.jpg)](https://www.youtube.com/watch?v=LxI9NYi_oOU)
[NOTE] The video assembly guide covers pcb v1.0. The revised version is very similar and the procedure is basically the same.
## Usage guide
### Keyboard shortcuts
@ -262,11 +290,11 @@ There are several software alternatives you can use if that works in your partic
- Windows 10 broke HID absolute coordinates behavior in KB5003637, so you can't use more than 1 screen on Windows (mouse will stay on the main screen).
- Code needs cleanup, some refactoring etc.
- Occasional bugs and weird behavior.
- Not tested with a wide variety of devices, I don't know how it will work with your hardware. There is a reasonable chance things might not work out-of-the-box.
- Advanced keyboards (with knobs, extra buttons or sliders) will probably face issues where this additional hardware doesn't work.
- Super-modern mice with 300 buttons might see some buttons not work as expected.
- NOTE: Both computers need to be connected and provide power to the USB for this to work (as each board gets powered by the computer it plugs into). Many desktops and laptops will provide power even when shut down nowadays. If you need to run with one board fully disconnected, you should be able to use a USB hub to plug both keyboard and mouse to a single port.
- MacOS has issues with more than one screens, latest firmware offers an experimental workaround that fixes it (but for the time being you are required to define the output as MACOS in user_config.h, set number of screens in defaults.c and rebuild). This should be a keyboard shortcut soon with no need to rebuild.
## Progress
@ -277,7 +305,7 @@ Planned features:
- ~~HID report protocol parsing, not just boot protocol~~ (mostly done)
- ~~Support for unified dongle receivers~~
- ~~Support for USB hubs and single-sided operation~~
- Configurable screens (partially)
- ~~Configurable screens (done)~~
- ~~Permament configuration stored in flash~~
- Better support for keyboards with knobs and mice with mickeys
- Unified firmware for both Picos

Binary file not shown.

Binary file not shown.

BIN
img/plocica2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 596 KiB

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,519 @@
{
"board": {
"3dviewports": [],
"design_settings": {
"defaults": {
"board_outline_line_width": 0.049999999999999996,
"copper_line_width": 0.19999999999999998,
"copper_text_italic": false,
"copper_text_size_h": 1.5,
"copper_text_size_v": 1.5,
"copper_text_thickness": 0.3,
"copper_text_upright": false,
"courtyard_line_width": 0.049999999999999996,
"dimension_precision": 4,
"dimension_units": 3,
"dimensions": {
"arrow_length": 1270000,
"extension_offset": 500000,
"keep_text_aligned": true,
"suppress_zeroes": false,
"text_position": 0,
"units_format": 1
},
"fab_line_width": 0.09999999999999999,
"fab_text_italic": false,
"fab_text_size_h": 1.0,
"fab_text_size_v": 1.0,
"fab_text_thickness": 0.15,
"fab_text_upright": false,
"other_line_width": 0.09999999999999999,
"other_text_italic": false,
"other_text_size_h": 1.0,
"other_text_size_v": 1.0,
"other_text_thickness": 0.15,
"other_text_upright": false,
"pads": {
"drill": 0.0,
"height": 0.550013,
"width": 1.0
},
"silk_line_width": 0.12,
"silk_text_italic": false,
"silk_text_size_h": 1.0,
"silk_text_size_v": 1.0,
"silk_text_thickness": 0.15,
"silk_text_upright": false,
"zones": {
"45_degree_only": false,
"min_clearance": 0.0
}
},
"diff_pair_dimensions": [
{
"gap": 0.0,
"via_gap": 0.0,
"width": 0.0
}
],
"drc_exclusions": [
"footprint_type_mismatch|43470000|96770000|923600a8-420a-44ac-aaf2-10c0b26db2ed|00000000-0000-0000-0000-000000000000",
"footprint_type_mismatch|48885523|68818249|19a1c803-61f3-45d9-8a9c-86d3c151ef97|00000000-0000-0000-0000-000000000000",
"footprint_type_mismatch|79806536|96760000|38c68c5f-5977-448e-8ed0-d70962d9710a|00000000-0000-0000-0000-000000000000",
"footprint_type_mismatch|85344000|68834000|00000000-0000-0000-0000-0000602a2a11|00000000-0000-0000-0000-000000000000",
"items_not_allowed|67315520|45178990|66aa93c9-52ed-4c16-b909-0a437fb42a55|00000000-0000-0000-0000-000000000000",
"items_not_allowed|67315520|45178990|e23f1ad3-e9fd-4475-a954-1ceba659afec|00000000-0000-0000-0000-000000000000"
],
"meta": {
"filename": "board_design_settings.json",
"version": 2
},
"rule_severities": {
"annular_width": "error",
"clearance": "error",
"connection_width": "warning",
"copper_edge_clearance": "error",
"copper_sliver": "warning",
"courtyards_overlap": "error",
"diff_pair_gap_out_of_range": "error",
"diff_pair_uncoupled_length_too_long": "error",
"drill_out_of_range": "error",
"duplicate_footprints": "warning",
"extra_footprint": "warning",
"footprint": "error",
"footprint_type_mismatch": "error",
"hole_clearance": "error",
"hole_near_hole": "error",
"invalid_outline": "error",
"isolated_copper": "warning",
"item_on_disabled_layer": "error",
"items_not_allowed": "error",
"length_out_of_range": "error",
"lib_footprint_issues": "warning",
"lib_footprint_mismatch": "warning",
"malformed_courtyard": "error",
"microvia_drill_out_of_range": "error",
"missing_courtyard": "ignore",
"missing_footprint": "warning",
"net_conflict": "warning",
"npth_inside_courtyard": "ignore",
"padstack": "error",
"pth_inside_courtyard": "ignore",
"shorting_items": "error",
"silk_edge_clearance": "warning",
"silk_over_copper": "warning",
"silk_overlap": "warning",
"skew_out_of_range": "error",
"solder_mask_bridge": "error",
"starved_thermal": "error",
"text_height": "warning",
"text_thickness": "warning",
"through_hole_pad_without_hole": "error",
"too_many_vias": "error",
"track_dangling": "warning",
"track_width": "error",
"tracks_crossing": "error",
"unconnected_items": "error",
"unresolved_variable": "error",
"via_dangling": "warning",
"zones_intersect": "error"
},
"rule_severitieslegacy_courtyards_overlap": true,
"rule_severitieslegacy_no_courtyard_defined": false,
"rules": {
"allow_blind_buried_vias": false,
"allow_microvias": false,
"max_error": 0.005,
"min_clearance": 0.25,
"min_connection": 0.0,
"min_copper_edge_clearance": 0.024999999999999998,
"min_hole_clearance": 0.25,
"min_hole_to_hole": 0.25,
"min_microvia_diameter": 0.19999999999999998,
"min_microvia_drill": 0.09999999999999999,
"min_resolved_spokes": 2,
"min_silk_clearance": 0.0,
"min_text_height": 0.7999999999999999,
"min_text_thickness": 0.08,
"min_through_hole_diameter": 0.3,
"min_track_width": 0.25,
"min_via_annular_width": 0.049999999999999996,
"min_via_diameter": 0.39999999999999997,
"solder_mask_to_copper_clearance": 0.0,
"use_height_for_length_calcs": true
},
"teardrop_options": [
{
"td_allow_use_two_tracks": true,
"td_curve_segcount": 5,
"td_on_pad_in_zone": false,
"td_onpadsmd": true,
"td_onroundshapesonly": false,
"td_ontrackend": false,
"td_onviapad": true
}
],
"teardrop_parameters": [
{
"td_curve_segcount": 5,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 0.2,
"td_target_name": "td_round_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_curve_segcount": 5,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 0.2,
"td_target_name": "td_rect_shape",
"td_width_to_size_filter_ratio": 0.9
},
{
"td_curve_segcount": 5,
"td_height_ratio": 1.0,
"td_length_ratio": 0.5,
"td_maxheight": 2.0,
"td_maxlen": 0.2,
"td_target_name": "td_track_end",
"td_width_to_size_filter_ratio": 0.9
}
],
"track_widths": [
0.0,
0.3,
1.0
],
"via_dimensions": [
{
"diameter": 0.0,
"drill": 0.0
}
],
"zones_allow_external_fillets": false,
"zones_use_no_outline": true
},
"layer_presets": [],
"viewports": []
},
"boards": [],
"cvpcb": {
"equivalence_files": []
},
"erc": {
"erc_exclusions": [],
"meta": {
"version": 0
},
"pin_map": [
[
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
2,
0,
1,
0,
0,
1,
0,
2,
2,
2,
2
],
[
0,
0,
0,
0,
0,
0,
1,
0,
1,
0,
1,
2
],
[
0,
1,
0,
0,
0,
0,
1,
1,
2,
1,
1,
2
],
[
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
2
],
[
1,
1,
1,
1,
1,
0,
1,
1,
1,
1,
1,
2
],
[
0,
0,
0,
1,
0,
0,
1,
0,
0,
0,
0,
2
],
[
0,
2,
1,
2,
0,
0,
1,
0,
2,
2,
2,
2
],
[
0,
2,
0,
1,
0,
0,
1,
0,
2,
0,
0,
2
],
[
0,
2,
1,
1,
0,
0,
1,
0,
2,
0,
0,
2
],
[
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2
]
],
"rule_severities": {
"bus_definition_conflict": "error",
"bus_entry_needed": "error",
"bus_to_bus_conflict": "error",
"bus_to_net_conflict": "error",
"conflicting_netclasses": "error",
"different_unit_footprint": "error",
"different_unit_net": "error",
"duplicate_reference": "error",
"duplicate_sheet_names": "error",
"endpoint_off_grid": "warning",
"extra_units": "error",
"global_label_dangling": "warning",
"hier_label_mismatch": "error",
"label_dangling": "error",
"lib_symbol_issues": "warning",
"missing_bidi_pin": "warning",
"missing_input_pin": "warning",
"missing_power_pin": "error",
"missing_unit": "warning",
"multiple_net_names": "warning",
"net_not_bus_member": "warning",
"no_connect_connected": "warning",
"no_connect_dangling": "warning",
"pin_not_connected": "error",
"pin_not_driven": "error",
"pin_to_pin": "warning",
"power_pin_not_driven": "error",
"similar_labels": "warning",
"simulation_model_issue": "error",
"unannotated": "error",
"unit_value_mismatch": "error",
"unresolved_variable": "error",
"wire_dangling": "error"
}
},
"libraries": {
"pinned_footprint_libs": [],
"pinned_symbol_libs": []
},
"meta": {
"filename": "DeskHop_Rev1.kicad_pro",
"version": 1
},
"net_settings": {
"classes": [
{
"bus_width": 12,
"clearance": 0.2,
"diff_pair_gap": 0.25,
"diff_pair_via_gap": 0.25,
"diff_pair_width": 0.2,
"line_style": 0,
"microvia_diameter": 0.3,
"microvia_drill": 0.1,
"name": "Default",
"pcb_color": "rgba(0, 0, 0, 0.000)",
"schematic_color": "rgba(0, 0, 0, 0.000)",
"track_width": 0.5,
"via_diameter": 0.8,
"via_drill": 0.4,
"wire_width": 6
}
],
"meta": {
"version": 3
},
"net_colors": null,
"netclass_assignments": null,
"netclass_patterns": [
{
"netclass": "Default",
"pattern": "GND"
}
]
},
"pcbnew": {
"last_paths": {
"gencad": "",
"idf": "",
"netlist": "DeskHop_Rev1.net",
"specctra_dsn": "",
"step": "DeskHop_v3_fusion.step",
"vrml": ""
},
"page_layout_descr_file": ""
},
"schematic": {
"annotate_start_num": 0,
"drawing": {
"dashed_lines_dash_length_ratio": 12.0,
"dashed_lines_gap_length_ratio": 3.0,
"default_line_thickness": 6.0,
"default_text_size": 50.0,
"field_names": [],
"intersheets_ref_own_page": false,
"intersheets_ref_prefix": "",
"intersheets_ref_short": false,
"intersheets_ref_show": false,
"intersheets_ref_suffix": "",
"junction_size_choice": 3,
"label_size_ratio": 0.25,
"pin_symbol_size": 0.0,
"text_offset_ratio": 0.08
},
"legacy_lib_dir": "",
"legacy_lib_list": [],
"meta": {
"version": 1
},
"net_format_name": "KiCad",
"ngspice": {
"fix_include_paths": true,
"fix_passive_vals": false,
"meta": {
"version": 0
},
"model_mode": 0,
"workbook_filename": ""
},
"page_layout_descr_file": "",
"plot_directory": "",
"spice_adjust_passive_values": false,
"spice_current_sheet_as_root": false,
"spice_external_command": "spice \"%I\"",
"spice_model_current_sheet_as_root": true,
"spice_save_all_currents": false,
"spice_save_all_voltages": false,
"subpart_first_id": 65,
"subpart_id_separator": 0
},
"sheets": [
[
"fa1c3e0e-91b1-4532-8b22-6d396d71c75b",
""
]
],
"text_variables": {}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,217 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.9*%
%TF.CreationDate,2024-01-30T21:05:40+01:00*%
%TF.ProjectId,DeskHop_Rev1,4465736b-486f-4705-9f52-6576312e6b69,rev?*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Soldermask,Bot*%
%TF.FilePolarity,Negative*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.9) date 2024-01-30 21:05:40*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%ADD10O,1.800000X1.800000*%
%ADD11O,1.500000X1.500000*%
%ADD12O,1.700000X1.700000*%
%ADD13R,1.700000X1.700000*%
%ADD14R,1.600000X1.500000*%
%ADD15C,1.600000*%
%ADD16C,3.000000*%
%ADD17C,3.100000*%
%ADD18C,5.400000*%
G04 APERTURE END LIST*
D10*
%TO.C,U1*%
X82619000Y-44834000D03*
D11*
X82919000Y-47864000D03*
X87769000Y-47864000D03*
D10*
X88069000Y-44834000D03*
D12*
X76454000Y-44704000D03*
X76454000Y-47244000D03*
X76454000Y-52324000D03*
X76454000Y-54864000D03*
X76454000Y-57404000D03*
X76454000Y-59944000D03*
D13*
X76454000Y-62484000D03*
D12*
X76454000Y-65024000D03*
X76454000Y-67564000D03*
X76454000Y-70104000D03*
X76454000Y-72644000D03*
D13*
X76454000Y-75184000D03*
D12*
X76454000Y-77724000D03*
X76454000Y-80264000D03*
X76454000Y-82804000D03*
X76454000Y-85344000D03*
D13*
X76454000Y-87884000D03*
D12*
X76454000Y-90424000D03*
X76454000Y-92964000D03*
X94234000Y-92964000D03*
X94234000Y-90424000D03*
D13*
X94234000Y-87884000D03*
D12*
X94234000Y-85344000D03*
X94234000Y-82804000D03*
X94234000Y-80264000D03*
X94234000Y-77724000D03*
D13*
X94234000Y-75184000D03*
D12*
X94234000Y-72644000D03*
X94234000Y-70104000D03*
X94234000Y-67564000D03*
X94234000Y-65024000D03*
D13*
X94234000Y-62484000D03*
D12*
X94234000Y-59944000D03*
X94234000Y-57404000D03*
X94234000Y-54864000D03*
X94234000Y-52324000D03*
D13*
X94234000Y-49784000D03*
D12*
X94234000Y-47244000D03*
X94234000Y-44704000D03*
X82804000Y-92734000D03*
D13*
X85344000Y-92734000D03*
D12*
X87884000Y-92734000D03*
%TD*%
D10*
%TO.C,U2*%
X46160523Y-44818249D03*
D11*
X46460523Y-47848249D03*
X51310523Y-47848249D03*
D10*
X51610523Y-44818249D03*
D12*
X39995523Y-44688249D03*
X39995523Y-47228249D03*
D13*
X39995523Y-49768249D03*
D12*
X39995523Y-52308249D03*
X39995523Y-54848249D03*
X39995523Y-57388249D03*
X39995523Y-59928249D03*
D13*
X39995523Y-62468249D03*
D12*
X39995523Y-65008249D03*
X39995523Y-67548249D03*
X39995523Y-70088249D03*
X39995523Y-72628249D03*
D13*
X39995523Y-75168249D03*
D12*
X39995523Y-77708249D03*
X39995523Y-80248249D03*
X39995523Y-82788249D03*
X39995523Y-85328249D03*
D13*
X39995523Y-87868249D03*
D12*
X39995523Y-90408249D03*
X39995523Y-92948249D03*
X57775523Y-92948249D03*
X57775523Y-90408249D03*
D13*
X57775523Y-87868249D03*
D12*
X57775523Y-85328249D03*
X57775523Y-82788249D03*
X57775523Y-80248249D03*
X57775523Y-77708249D03*
D13*
X57775523Y-75168249D03*
D12*
X57775523Y-72628249D03*
X57775523Y-70088249D03*
X57775523Y-67548249D03*
X57775523Y-65008249D03*
D13*
X57775523Y-62468249D03*
D12*
X57775523Y-59928249D03*
X57775523Y-57388249D03*
X57775523Y-54848249D03*
X57775523Y-52308249D03*
D13*
X57775523Y-49768249D03*
D12*
X57775523Y-47228249D03*
X57775523Y-44688249D03*
X46345523Y-92718249D03*
D13*
X48885523Y-92718249D03*
D12*
X51425523Y-92718249D03*
%TD*%
D14*
%TO.C,J4*%
X45776000Y-101574000D03*
D15*
X48276000Y-101574000D03*
X50276000Y-101574000D03*
X52776000Y-101574000D03*
D16*
X42706000Y-104284000D03*
X55846000Y-104284000D03*
%TD*%
D13*
%TO.C,J3*%
X95667537Y-99795757D03*
D12*
X95667537Y-102335757D03*
X95667537Y-104875757D03*
%TD*%
D17*
%TO.C,H2*%
X96774000Y-111506000D03*
D18*
X96774000Y-111506000D03*
%TD*%
D14*
%TO.C,J1*%
X81082000Y-101574000D03*
D15*
X83582000Y-101574000D03*
X85582000Y-101574000D03*
X88082000Y-101574000D03*
D16*
X78012000Y-104284000D03*
X91152000Y-104284000D03*
%TD*%
D17*
%TO.C,H1*%
X37846000Y-111506000D03*
D18*
X37846000Y-111506000D03*
%TD*%
D13*
%TO.C,J2*%
X60731042Y-99717876D03*
D12*
X60731042Y-102257876D03*
X60731042Y-104797876D03*
%TD*%
D17*
%TO.C,H3*%
X67315520Y-45178990D03*
D18*
X67315520Y-45178990D03*
%TD*%
M02*

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,46 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.9*%
%TF.CreationDate,2024-01-30T21:05:40+01:00*%
%TF.ProjectId,DeskHop_Rev1,4465736b-486f-4705-9f52-6576312e6b69,rev?*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Profile,NP*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.9) date 2024-01-30 21:05:40*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
%TA.AperFunction,Profile*%
%ADD10C,0.050000*%
%TD*%
G04 APERTURE END LIST*
D10*
X33773425Y-113566375D02*
G75*
G03*
X35773403Y-115566375I1999975J-25D01*
G01*
X35773403Y-41085103D02*
G75*
G03*
X33773403Y-43085124I-3J-1999997D01*
G01*
X98689573Y-115566373D02*
G75*
G03*
X100689573Y-113566375I27J1999973D01*
G01*
X98689573Y-115566375D02*
X35773403Y-115566375D01*
X100689576Y-43085124D02*
G75*
G03*
X98689573Y-41085124I-1999976J24D01*
G01*
X33773403Y-113566375D02*
X33773403Y-43085124D01*
X35773403Y-41085124D02*
X98689573Y-41085124D01*
X100689573Y-43085124D02*
X100689573Y-113566375D01*
M02*

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,534 @@
%TF.GenerationSoftware,KiCad,Pcbnew,7.0.9*%
%TF.CreationDate,2024-01-30T21:05:40+01:00*%
%TF.ProjectId,DeskHop_Rev1,4465736b-486f-4705-9f52-6576312e6b69,rev?*%
%TF.SameCoordinates,Original*%
%TF.FileFunction,Soldermask,Top*%
%TF.FilePolarity,Negative*%
%FSLAX46Y46*%
G04 Gerber Fmt 4.6, Leading zero omitted, Abs format (unit mm)*
G04 Created by KiCad (PCBNEW 7.0.9) date 2024-01-30 21:05:40*
%MOMM*%
%LPD*%
G01*
G04 APERTURE LIST*
G04 Aperture macros list*
%AMRoundRect*
0 Rectangle with rounded corners*
0 $1 Rounding radius*
0 $2 $3 $4 $5 $6 $7 $8 $9 X,Y pos of 4 corners*
0 Add a 4 corners polygon primitive as box body*
4,1,4,$2,$3,$4,$5,$6,$7,$8,$9,$2,$3,0*
0 Add four circle primitives for the rounded corners*
1,1,$1+$1,$2,$3*
1,1,$1+$1,$4,$5*
1,1,$1+$1,$6,$7*
1,1,$1+$1,$8,$9*
0 Add four rect primitives between the rounded corners*
20,1,$1+$1,$2,$3,$4,$5,0*
20,1,$1+$1,$4,$5,$6,$7,0*
20,1,$1+$1,$6,$7,$8,$9,0*
20,1,$1+$1,$8,$9,$2,$3,0*%
G04 Aperture macros list end*
%ADD10O,1.800000X1.800000*%
%ADD11O,1.500000X1.500000*%
%ADD12O,1.700000X1.700000*%
%ADD13R,3.500000X1.700000*%
%ADD14R,1.700000X1.700000*%
%ADD15R,1.700000X3.500000*%
%ADD16RoundRect,0.250000X-0.250000X-0.475000X0.250000X-0.475000X0.250000X0.475000X-0.250000X0.475000X0*%
%ADD17R,1.600000X1.500000*%
%ADD18C,1.600000*%
%ADD19C,3.000000*%
%ADD20RoundRect,0.250000X-0.475000X0.250000X-0.475000X-0.250000X0.475000X-0.250000X0.475000X0.250000X0*%
%ADD21R,0.550013X1.000000*%
%ADD22C,3.100000*%
%ADD23C,5.400000*%
%ADD24RoundRect,0.250000X-0.450000X0.262500X-0.450000X-0.262500X0.450000X-0.262500X0.450000X0.262500X0*%
%ADD25RoundRect,0.150000X-0.825000X-0.150000X0.825000X-0.150000X0.825000X0.150000X-0.825000X0.150000X0*%
%ADD26RoundRect,0.250000X0.250000X0.475000X-0.250000X0.475000X-0.250000X-0.475000X0.250000X-0.475000X0*%
G04 APERTURE END LIST*
D10*
%TO.C,U1*%
X82619000Y-44834000D03*
D11*
X82919000Y-47864000D03*
X87769000Y-47864000D03*
D10*
X88069000Y-44834000D03*
D12*
X76454000Y-44704000D03*
D13*
X75554000Y-44704000D03*
D12*
X76454000Y-47244000D03*
D13*
X75554000Y-47244000D03*
D14*
X76454000Y-49784000D03*
D13*
X75554000Y-49784000D03*
D12*
X76454000Y-52324000D03*
D13*
X75554000Y-52324000D03*
D12*
X76454000Y-54864000D03*
D13*
X75554000Y-54864000D03*
D12*
X76454000Y-57404000D03*
D13*
X75554000Y-57404000D03*
D12*
X76454000Y-59944000D03*
D13*
X75554000Y-59944000D03*
D14*
X76454000Y-62484000D03*
D13*
X75554000Y-62484000D03*
D12*
X76454000Y-65024000D03*
D13*
X75554000Y-65024000D03*
D12*
X76454000Y-67564000D03*
D13*
X75554000Y-67564000D03*
D12*
X76454000Y-70104000D03*
D13*
X75554000Y-70104000D03*
D12*
X76454000Y-72644000D03*
D13*
X75554000Y-72644000D03*
D14*
X76454000Y-75184000D03*
D13*
X75554000Y-75184000D03*
D12*
X76454000Y-77724000D03*
D13*
X75554000Y-77724000D03*
D12*
X76454000Y-80264000D03*
D13*
X75554000Y-80264000D03*
D12*
X76454000Y-82804000D03*
D13*
X75554000Y-82804000D03*
D12*
X76454000Y-85344000D03*
D13*
X75554000Y-85344000D03*
D14*
X76454000Y-87884000D03*
D13*
X75554000Y-87884000D03*
D12*
X76454000Y-90424000D03*
D13*
X75554000Y-90424000D03*
D12*
X76454000Y-92964000D03*
D13*
X75554000Y-92964000D03*
D12*
X94234000Y-92964000D03*
D13*
X95134000Y-92964000D03*
D12*
X94234000Y-90424000D03*
D13*
X95134000Y-90424000D03*
D14*
X94234000Y-87884000D03*
D13*
X95134000Y-87884000D03*
D12*
X94234000Y-85344000D03*
D13*
X95134000Y-85344000D03*
D12*
X94234000Y-82804000D03*
D13*
X95134000Y-82804000D03*
D12*
X94234000Y-80264000D03*
D13*
X95134000Y-80264000D03*
D12*
X94234000Y-77724000D03*
D13*
X95134000Y-77724000D03*
D14*
X94234000Y-75184000D03*
D13*
X95134000Y-75184000D03*
D12*
X94234000Y-72644000D03*
D13*
X95134000Y-72644000D03*
D12*
X94234000Y-70104000D03*
D13*
X95134000Y-70104000D03*
D12*
X94234000Y-67564000D03*
D13*
X95134000Y-67564000D03*
D12*
X94234000Y-65024000D03*
D13*
X95134000Y-65024000D03*
D14*
X94234000Y-62484000D03*
D13*
X95134000Y-62484000D03*
D12*
X94234000Y-59944000D03*
D13*
X95134000Y-59944000D03*
D12*
X94234000Y-57404000D03*
D13*
X95134000Y-57404000D03*
D12*
X94234000Y-54864000D03*
D13*
X95134000Y-54864000D03*
D12*
X94234000Y-52324000D03*
D13*
X95134000Y-52324000D03*
D14*
X94234000Y-49784000D03*
D13*
X95134000Y-49784000D03*
D12*
X94234000Y-47244000D03*
D13*
X95134000Y-47244000D03*
D12*
X94234000Y-44704000D03*
D13*
X95134000Y-44704000D03*
D12*
X82804000Y-92734000D03*
D15*
X82804000Y-93634000D03*
D14*
X85344000Y-92734000D03*
D15*
X85344000Y-93634000D03*
D12*
X87884000Y-92734000D03*
D15*
X87884000Y-93634000D03*
%TD*%
D10*
%TO.C,U2*%
X46160523Y-44818249D03*
D11*
X46460523Y-47848249D03*
X51310523Y-47848249D03*
D10*
X51610523Y-44818249D03*
D12*
X39995523Y-44688249D03*
D13*
X39095523Y-44688249D03*
D12*
X39995523Y-47228249D03*
D13*
X39095523Y-47228249D03*
D14*
X39995523Y-49768249D03*
D13*
X39095523Y-49768249D03*
D12*
X39995523Y-52308249D03*
D13*
X39095523Y-52308249D03*
D12*
X39995523Y-54848249D03*
D13*
X39095523Y-54848249D03*
D12*
X39995523Y-57388249D03*
D13*
X39095523Y-57388249D03*
D12*
X39995523Y-59928249D03*
D13*
X39095523Y-59928249D03*
D14*
X39995523Y-62468249D03*
D13*
X39095523Y-62468249D03*
D12*
X39995523Y-65008249D03*
D13*
X39095523Y-65008249D03*
D12*
X39995523Y-67548249D03*
D13*
X39095523Y-67548249D03*
D12*
X39995523Y-70088249D03*
D13*
X39095523Y-70088249D03*
D12*
X39995523Y-72628249D03*
D13*
X39095523Y-72628249D03*
D14*
X39995523Y-75168249D03*
D13*
X39095523Y-75168249D03*
D12*
X39995523Y-77708249D03*
D13*
X39095523Y-77708249D03*
D12*
X39995523Y-80248249D03*
D13*
X39095523Y-80248249D03*
D12*
X39995523Y-82788249D03*
D13*
X39095523Y-82788249D03*
D12*
X39995523Y-85328249D03*
D13*
X39095523Y-85328249D03*
D14*
X39995523Y-87868249D03*
D13*
X39095523Y-87868249D03*
D12*
X39995523Y-90408249D03*
D13*
X39095523Y-90408249D03*
D12*
X39995523Y-92948249D03*
D13*
X39095523Y-92948249D03*
D12*
X57775523Y-92948249D03*
D13*
X58675523Y-92948249D03*
D12*
X57775523Y-90408249D03*
D13*
X58675523Y-90408249D03*
D14*
X57775523Y-87868249D03*
D13*
X58675523Y-87868249D03*
D12*
X57775523Y-85328249D03*
D13*
X58675523Y-85328249D03*
D12*
X57775523Y-82788249D03*
D13*
X58675523Y-82788249D03*
D12*
X57775523Y-80248249D03*
D13*
X58675523Y-80248249D03*
D12*
X57775523Y-77708249D03*
D13*
X58675523Y-77708249D03*
D14*
X57775523Y-75168249D03*
D13*
X58675523Y-75168249D03*
D12*
X57775523Y-72628249D03*
D13*
X58675523Y-72628249D03*
D12*
X57775523Y-70088249D03*
D13*
X58675523Y-70088249D03*
D12*
X57775523Y-67548249D03*
D13*
X58675523Y-67548249D03*
D12*
X57775523Y-65008249D03*
D13*
X58675523Y-65008249D03*
D14*
X57775523Y-62468249D03*
D13*
X58675523Y-62468249D03*
D12*
X57775523Y-59928249D03*
D13*
X58675523Y-59928249D03*
D12*
X57775523Y-57388249D03*
D13*
X58675523Y-57388249D03*
D12*
X57775523Y-54848249D03*
D13*
X58675523Y-54848249D03*
D12*
X57775523Y-52308249D03*
D13*
X58675523Y-52308249D03*
D14*
X57775523Y-49768249D03*
D13*
X58675523Y-49768249D03*
D12*
X57775523Y-47228249D03*
D13*
X58675523Y-47228249D03*
D12*
X57775523Y-44688249D03*
D13*
X58675523Y-44688249D03*
D12*
X46345523Y-92718249D03*
D15*
X46345523Y-93618249D03*
D14*
X48885523Y-92718249D03*
D15*
X48885523Y-93618249D03*
D12*
X51425523Y-92718249D03*
D15*
X51425523Y-93618249D03*
%TD*%
D16*
%TO.C,C2*%
X70424000Y-74930000D03*
X72324000Y-74930000D03*
%TD*%
D17*
%TO.C,J4*%
X45776000Y-101574000D03*
D18*
X48276000Y-101574000D03*
X50276000Y-101574000D03*
X52776000Y-101574000D03*
D19*
X42706000Y-104284000D03*
X55846000Y-104284000D03*
%TD*%
D14*
%TO.C,J3*%
X95667537Y-99795757D03*
D12*
X95667537Y-102335757D03*
X95667537Y-104875757D03*
%TD*%
D20*
%TO.C,C4*%
X74168000Y-101920000D03*
X74168000Y-103820000D03*
%TD*%
D21*
%TO.C,U3*%
X80756396Y-95359949D03*
X79806434Y-95359949D03*
X78856472Y-95359949D03*
X78856472Y-98160051D03*
X79806434Y-98160051D03*
X80756396Y-98160051D03*
%TD*%
D22*
%TO.C,H2*%
X96774000Y-111506000D03*
D23*
X96774000Y-111506000D03*
%TD*%
D24*
%TO.C,R3*%
X37846000Y-97940500D03*
X37846000Y-96115500D03*
%TD*%
%TO.C,R2*%
X76403200Y-97686500D03*
X76403200Y-95861500D03*
%TD*%
D17*
%TO.C,J1*%
X81082000Y-101574000D03*
D18*
X83582000Y-101574000D03*
X85582000Y-101574000D03*
X88082000Y-101574000D03*
D19*
X78012000Y-104284000D03*
X91152000Y-104284000D03*
%TD*%
D21*
%TO.C,U5*%
X44419860Y-95369949D03*
X43469898Y-95369949D03*
X42519936Y-95369949D03*
X42519936Y-98170051D03*
X43469898Y-98170051D03*
X44419860Y-98170051D03*
%TD*%
D24*
%TO.C,R1*%
X74015600Y-95861500D03*
X74015600Y-97686500D03*
%TD*%
D22*
%TO.C,H1*%
X37846000Y-111506000D03*
D23*
X37846000Y-111506000D03*
%TD*%
D25*
%TO.C,U4*%
X64835000Y-82571110D03*
X64835000Y-83841110D03*
X64835000Y-85111110D03*
X64835000Y-86381110D03*
X69785000Y-86381110D03*
X69785000Y-85111110D03*
X69785000Y-83841110D03*
X69785000Y-82571110D03*
%TD*%
D24*
%TO.C,R4*%
X40005000Y-96115500D03*
X40005000Y-97940500D03*
%TD*%
D20*
%TO.C,C3*%
X38100000Y-104201000D03*
X38100000Y-102301000D03*
%TD*%
D14*
%TO.C,J2*%
X60731042Y-99717876D03*
D12*
X60731042Y-102257876D03*
X60731042Y-104797876D03*
%TD*%
D26*
%TO.C,C1*%
X64069000Y-74930000D03*
X62169000Y-74930000D03*
%TD*%
D22*
%TO.C,H3*%
X67315520Y-45178990D03*
D23*
X67315520Y-45178990D03*
%TD*%
M02*

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,27 @@
M48
; DRILL file {KiCad 7.0.9} date Tuesday, January 30, 2024 at 09:05:42PM
; FORMAT={-:-/ absolute / inch / decimal}
; #@! TF.CreationDate,2024-01-30T21:05:42+01:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.9
; #@! TF.FileFunction,NonPlated,1,2,NPTH
FMAT,2
INCH
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T1C0.0591
; #@! TA.AperFunction,NonPlated,NPTH,ComponentDrill
T2C0.0709
%
G90
G05
T1
X1.8292Y-1.8838
X2.0201Y-1.8838
X3.2645Y-1.8844
X3.4555Y-1.8844
T2
X1.8173Y-1.7645
X2.0319Y-1.7645
X3.2527Y-1.7651
X3.4673Y-1.7651
T0
M30

View File

@ -0,0 +1,134 @@
M48
; DRILL file {KiCad 7.0.9} date Tuesday, January 30, 2024 at 09:05:42PM
; FORMAT={-:-/ absolute / inch / decimal}
; #@! TF.CreationDate,2024-01-30T21:05:42+01:00
; #@! TF.GenerationSoftware,Kicad,Pcbnew,7.0.9
; #@! TF.FileFunction,Plated,1,2,PTH
FMAT,2
INCH
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T1C0.0374
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T2C0.0394
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T3C0.0402
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T4C0.0906
; #@! TA.AperFunction,Plated,PTH,ComponentDrill
T5C0.1063
%
G90
G05
T1
X1.8022Y-3.999
X1.9006Y-3.999
X1.9794Y-3.999
X2.0778Y-3.999
X3.1922Y-3.999
X3.2906Y-3.999
X3.3694Y-3.999
X3.4678Y-3.999
T2
X2.391Y-3.9259
X2.391Y-4.0259
X2.391Y-4.1259
X3.7664Y-3.929
X3.7664Y-4.029
X3.7664Y-4.129
T3
X1.5746Y-1.7594
X1.5746Y-1.8594
X1.5746Y-1.9594
X1.5746Y-2.0594
X1.5746Y-2.1594
X1.5746Y-2.2594
X1.5746Y-2.3594
X1.5746Y-2.4594
X1.5746Y-2.5594
X1.5746Y-2.6594
X1.5746Y-2.7594
X1.5746Y-2.8594
X1.5746Y-2.9594
X1.5746Y-3.0594
X1.5746Y-3.1594
X1.5746Y-3.2594
X1.5746Y-3.3594
X1.5746Y-3.4594
X1.5746Y-3.5594
X1.5746Y-3.6594
X1.8246Y-3.6503
X1.9246Y-3.6503
X2.0246Y-3.6503
X2.2746Y-1.7594
X2.2746Y-1.8594
X2.2746Y-1.9594
X2.2746Y-2.0594
X2.2746Y-2.1594
X2.2746Y-2.2594
X2.2746Y-2.3594
X2.2746Y-2.4594
X2.2746Y-2.5594
X2.2746Y-2.6594
X2.2746Y-2.7594
X2.2746Y-2.8594
X2.2746Y-2.9594
X2.2746Y-3.0594
X2.2746Y-3.1594
X2.2746Y-3.2594
X2.2746Y-3.3594
X2.2746Y-3.4594
X2.2746Y-3.5594
X2.2746Y-3.6594
X3.01Y-1.76
X3.01Y-1.86
X3.01Y-2.06
X3.01Y-2.16
X3.01Y-2.26
X3.01Y-2.36
X3.01Y-2.46
X3.01Y-2.56
X3.01Y-2.66
X3.01Y-2.76
X3.01Y-2.86
X3.01Y-2.96
X3.01Y-3.06
X3.01Y-3.16
X3.01Y-3.26
X3.01Y-3.36
X3.01Y-3.46
X3.01Y-3.56
X3.01Y-3.66
X3.26Y-3.6509
X3.36Y-3.6509
X3.46Y-3.6509
X3.71Y-1.76
X3.71Y-1.86
X3.71Y-1.96
X3.71Y-2.06
X3.71Y-2.16
X3.71Y-2.26
X3.71Y-2.36
X3.71Y-2.46
X3.71Y-2.56
X3.71Y-2.66
X3.71Y-2.76
X3.71Y-2.86
X3.71Y-2.96
X3.71Y-3.06
X3.71Y-3.16
X3.71Y-3.26
X3.71Y-3.36
X3.71Y-3.46
X3.71Y-3.56
X3.71Y-3.66
T4
X1.6813Y-4.1057
X2.1987Y-4.1057
X3.0713Y-4.1057
X3.5887Y-4.1057
T5
X1.49Y-4.39
X2.6502Y-1.7787
X3.81Y-4.39
T0
M30

View File

@ -0,0 +1,122 @@
{
"Header": {
"GenerationSoftware": {
"Vendor": "KiCad",
"Application": "Pcbnew",
"Version": "7.0.9"
},
"CreationDate": "2024-01-30T21:05:40+01:00"
},
"GeneralSpecs": {
"ProjectId": {
"Name": "DeskHop_Rev1",
"GUID": "4465736b-486f-4705-9f52-6576312e6b69",
"Revision": "rev?"
},
"Size": {
"X": 66.9662,
"Y": 74.5313
},
"LayerNumber": 2,
"BoardThickness": 1.6,
"Finish": "None"
},
"DesignRules": [
{
"Layers": "Outer",
"PadToPad": 0.2,
"PadToTrack": 0.2,
"TrackToTrack": 0.2,
"MinLineWidth": 0.3,
"TrackToRegion": 0.25,
"RegionToRegion": 0.25
}
],
"FilesAttributes": [
{
"Path": "DeskHop_Rev1-F_Cu.gbr",
"FileFunction": "Copper,L1,Top",
"FilePolarity": "Positive"
},
{
"Path": "DeskHop_Rev1-B_Cu.gbr",
"FileFunction": "Copper,L2,Bot",
"FilePolarity": "Positive"
},
{
"Path": "DeskHop_Rev1-F_Paste.gbr",
"FileFunction": "SolderPaste,Top",
"FilePolarity": "Positive"
},
{
"Path": "DeskHop_Rev1-F_Silkscreen.gbr",
"FileFunction": "Legend,Top",
"FilePolarity": "Positive"
},
{
"Path": "DeskHop_Rev1-B_Silkscreen.gbr",
"FileFunction": "Legend,Bot",
"FilePolarity": "Positive"
},
{
"Path": "DeskHop_Rev1-F_Mask.gbr",
"FileFunction": "SolderMask,Top",
"FilePolarity": "Negative"
},
{
"Path": "DeskHop_Rev1-B_Mask.gbr",
"FileFunction": "SolderMask,Bot",
"FilePolarity": "Negative"
},
{
"Path": "DeskHop_Rev1-Edge_Cuts.gbr",
"FileFunction": "Profile",
"FilePolarity": "Positive"
}
],
"MaterialStackup": [
{
"Type": "Legend",
"Name": "Top Silk Screen"
},
{
"Type": "SolderPaste",
"Name": "Top Solder Paste"
},
{
"Type": "SolderMask",
"Thickness": 0.01,
"Name": "Top Solder Mask"
},
{
"Type": "Copper",
"Thickness": 0.035,
"Name": "F.Cu"
},
{
"Type": "Dielectric",
"Thickness": 1.51,
"Material": "FR4",
"Name": "F.Cu/B.Cu",
"Notes": "Type: dielectric layer 1 (from F.Cu to B.Cu)"
},
{
"Type": "Copper",
"Thickness": 0.035,
"Name": "B.Cu"
},
{
"Type": "SolderMask",
"Thickness": 0.01,
"Name": "Bottom Solder Mask"
},
{
"Type": "SolderPaste",
"Name": "Bottom Solder Paste"
},
{
"Type": "Legend",
"Name": "Bottom Silk Screen"
}
]
}

BIN
pcb/v1.1/Gerber_DeskHop.zip Normal file

Binary file not shown.

BIN
schematics/DeskHop_v1.1.pdf Normal file

Binary file not shown.