aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorToby Vincent <tobyv@tobyvin.dev>2024-09-13 18:57:42 -0500
committerToby Vincent <tobyv@tobyvin.dev>2024-09-13 18:57:42 -0500
commite4139e8d0403dfa5c8df82ed3127ab28cbad1b3e (patch)
tree0d7a8702d338da54e67f3d52f733cc32800a7bf3
parent722f3d0eeccfad3528b00c76a44f2998004c8ca4 (diff)
fix: improve build config and fix screw insertsHEADmaster
-rwxr-xr-xbuild.sh14
-rw-r--r--configs/DM.json6
-rw-r--r--configs/default.json384
-rw-r--r--src/generate_configuration.py8
-rw-r--r--src/run_config.json574
5 files changed, 17 insertions, 969 deletions
diff --git a/build.sh b/build.sh
index 4a78911..fcfae65 100755
--- a/build.sh
+++ b/build.sh
@@ -6,12 +6,12 @@ export FREECADPATH="${FREECADPATH:-'/usr/lib/freecad/lib'}"
CDPATH='' cd -- "$(dirname -- "$0")" || exit
-python -m venv src/.venv --upgrade-deps
+if ! . src/.venv/bin/activate; then
+ python -m venv src/.venv --upgrade-deps
+ . src/.venv/bin/activate
+ pip --require-virtualenv install -r ./src/requirements.txt
+fi
-. src/.venv/bin/activate
+(cd src || exit && python -m dactyl_manuform ${1:+--config="$1"})
-pip --require-virtualenv install -r ./src/requirements.txt
-
-(cd src || exit && python -m dactyl_manuform)
-
-./step2stl.py things/*.step
+./step2stl.py things/${1:+$1_}*.step
diff --git a/configs/DM.json b/configs/DM.json
new file mode 100644
index 0000000..d51d5f8
--- /dev/null
+++ b/configs/DM.json
@@ -0,0 +1,6 @@
+{
+ "ENGINE": "cadquery",
+ "show_caps": false,
+ "reduced_outer_cols": 2,
+ "oled_mount_type": "NONE"
+}
diff --git a/configs/default.json b/configs/default.json
deleted file mode 100644
index 5992027..0000000
--- a/configs/default.json
+++ /dev/null
@@ -1,384 +0,0 @@
-{
- "ENGINE": "solid",
- "save_dir": "default",
- "config_name": "default",
- "show_caps": true,
- "show_pcbs": false,
- "nrows": 5,
- "ncols": 6,
- "alpha": 0.26179916666666664,
- "beta": 0.08726638888888888,
- "centercol": 3,
- "centerrow_offset": 3,
- "tenting_angle": 0.26179916666666664,
- "symmetry": "symmetric",
- "column_style_gt5": "orthographic",
- "column_style": "standard",
- "thumb_offsets": [
- 6,
- -3,
- 7
- ],
- "keyboard_z_offset": 11,
- "thumb_style": "DEFAULT",
- "default_1U_cluster": true,
- "minidox_Usize": 1.6,
- "thumb_plate_tr_rotation": 0.0,
- "thumb_plate_tl_rotation": 0.0,
- "thumb_plate_mr_rotation": 0.0,
- "thumb_plate_ml_rotation": 0.0,
- "thumb_plate_br_rotation": 0.0,
- "thumb_plate_bl_rotation": 0.0,
- "trackball_in_wall": false,
- "tbiw_ball_center_row": 0.2,
- "tbiw_translational_offset": [
- 0.0,
- 0.0,
- 0.0
- ],
- "tbiw_rotation_offset": [
- 0.0,
- 0.0,
- 0.0
- ],
- "tbiw_left_wall_x_offset_override": 50.0,
- "tbiw_left_wall_z_offset_override": 0.0,
- "tbiw_left_wall_lower_y_offset": 0.0,
- "tbiw_left_wall_lower_z_offset": 0.0,
- "tbiw_oled_center_row": 0.75,
- "tbiw_oled_translation_offset": [
- -3.5,
- 0,
- 1.5
- ],
- "tbiw_oled_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "other_thumb": "DEFAULT",
- "tbjs_key_diameter": 70,
- "tbjs_translation_offset": [
- 0,
- 0,
- 10
- ],
- "tbjs_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "tbjs_key_translation_offsets": [
- [
- 0.0,
- 0.0,
- -8.0
- ],
- [
- 0.0,
- 0.0,
- -8.0
- ],
- [
- 0.0,
- 0.0,
- -8.0
- ],
- [
- 0.0,
- 0.0,
- -8.0
- ]
- ],
- "tbjs_key_rotation_offsets": [
- [
- 0.0,
- 0.0,
- 0.0
- ],
- [
- 0.0,
- 0.0,
- 0.0
- ],
- [
- 0.0,
- 0.0,
- 0.0
- ],
- [
- 0.0,
- 0.0,
- 0.0
- ]
- ],
- "tbcj_inner_diameter": 42,
- "tbcj_thickness": 2,
- "tbcj_outer_diameter": 53,
- "trackball_modular": false,
- "trackball_Usize": 1.5,
- "ball_side": "right",
- "ball_diameter": 34.0,
- "ball_wall_thickness": 3,
- "ball_gap": 1.0,
- "trackball_hole_diameter": 36.5,
- "trackball_hole_height": 40,
- "trackball_plate_thickness": 2,
- "trackball_plate_width": 2,
- "tb_socket_translation_offset": [
- 0,
- 0,
- 2.0
- ],
- "tb_socket_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "tb_sensor_translation_offset": [
- 0,
- 0,
- 0
- ],
- "tb_sensor_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "pinky_1_5U": false,
- "first_1_5U_row": 0,
- "last_1_5U_row": 5,
- "extra_width": 2.5,
- "extra_height": 1.0,
- "wall_z_offset": 15,
- "wall_x_offset": 5,
- "wall_y_offset": 6,
- "left_wall_x_offset": 12,
- "left_wall_z_offset": 3,
- "left_wall_lower_y_offset": 0,
- "left_wall_lower_z_offset": 0,
- "wall_thickness": 4.5,
- "wall_base_y_thickness": 4.5,
- "wall_base_x_thickness": 4.5,
- "wall_base_back_thickness": 4.5,
- "fixed_angles": [
- 0.17453277777777776,
- 0.17453277777777776,
- 0,
- 0,
- 0,
- -0.26179916666666664,
- -0.26179916666666664
- ],
- "fixed_x": [
- -41.5,
- -22.5,
- 0,
- 20.3,
- 41.4,
- 65.5,
- 89.6
- ],
- "fixed_z": [
- 12.1,
- 8.3,
- 0,
- 5,
- 10.7,
- 14.5,
- 17.5
- ],
- "fixed_tenting": 0.0,
- "plate_style": "NOTCH",
- "hole_keyswitch_height": 14.0,
- "hole_keyswitch_width": 14.0,
- "nub_keyswitch_height": 14.4,
- "nub_keyswitch_width": 14.4,
- "undercut_keyswitch_height": 14.0,
- "undercut_keyswitch_width": 14.0,
- "notch_width": 5.0,
- "sa_profile_key_height": 12.7,
- "sa_length": 18.5,
- "sa_double_length": 37.5,
- "plate_thickness": 5.1,
- "plate_rim": 2.0,
- "clip_thickness": 1.4,
- "clip_undercut": 1.0,
- "undercut_transition": 0.2,
- "plate_file": null,
- "plate_offset": 0.0,
- "oled_mount_type": "CLIP",
- "oled_center_row": 1.25,
- "oled_translation_offset": [
- 0,
- 0,
- 4
- ],
- "oled_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "oled_configurations": {
- "UNDERCUT": {
- "oled_mount_width": 15.0,
- "oled_mount_height": 35.0,
- "oled_mount_rim": 3.0,
- "oled_mount_depth": 6.0,
- "oled_mount_cut_depth": 20.0,
- "oled_mount_location_xyz": [
- -80.0,
- 20.0,
- 45.0
- ],
- "oled_mount_rotation_xyz": [
- 13.0,
- 0.0,
- -6.0
- ],
- "oled_left_wall_x_offset_override": 28.0,
- "oled_left_wall_z_offset_override": 0.0,
- "oled_left_wall_lower_y_offset": 12.0,
- "oled_left_wall_lower_z_offset": 5.0,
- "oled_mount_undercut": 1.0,
- "oled_mount_undercut_thickness": 2.0
- },
- "SLIDING": {
- "oled_mount_width": 12.5,
- "oled_mount_height": 25.0,
- "oled_mount_rim": 2.5,
- "oled_mount_depth": 8.0,
- "oled_mount_cut_depth": 20.0,
- "oled_mount_location_xyz": [
- -78.0,
- 10.0,
- 41.0
- ],
- "oled_mount_rotation_xyz": [
- 6.0,
- 0.0,
- -3.0
- ],
- "oled_left_wall_x_offset_override": 24.0,
- "oled_left_wall_z_offset_override": 0.0,
- "oled_left_wall_lower_y_offset": 12.0,
- "oled_left_wall_lower_z_offset": 5.0,
- "oled_thickness": 4.2,
- "oled_edge_overlap_end": 6.5,
- "oled_edge_overlap_connector": 5.5,
- "oled_edge_overlap_thickness": 2.5,
- "oled_edge_overlap_clearance": 2.5,
- "oled_edge_chamfer": 2.0
- },
- "CLIP": {
- "oled_mount_width": 12.5,
- "oled_mount_height": 39.0,
- "oled_mount_rim": 2.0,
- "oled_mount_depth": 7.0,
- "oled_mount_cut_depth": 20.0,
- "oled_mount_location_xyz": [
- -78.0,
- 20.0,
- 42.0
- ],
- "oled_mount_rotation_xyz": [
- 12.0,
- 0.0,
- -6.0
- ],
- "oled_left_wall_x_offset_override": 24.0,
- "oled_left_wall_z_offset_override": 0.0,
- "oled_left_wall_lower_y_offset": 12.0,
- "oled_left_wall_lower_z_offset": 5.0,
- "oled_thickness": 4.2,
- "oled_mount_bezel_thickness": 3.5,
- "oled_mount_bezel_chamfer": 2.0,
- "oled_mount_connector_hole": 6.0,
- "oled_screen_start_from_conn_end": 6.5,
- "oled_screen_length": 24.5,
- "oled_screen_width": 10.5,
- "oled_clip_thickness": 1.5,
- "oled_clip_width": 6.0,
- "oled_clip_overhang": 1.0,
- "oled_clip_extension": 5.0,
- "oled_clip_width_clearance": 0.5,
- "oled_clip_undercut": 0.5,
- "oled_clip_undercut_thickness": 2.5,
- "oled_clip_y_gap": 0.2,
- "oled_clip_z_gap": 0.2
- }
- },
- "web_thickness": 4.0,
- "post_size": 0.1,
- "post_adj": 0,
- "screws_offset": "INSIDE",
- "screw_insert_height": 3.8,
- "screw_insert_bottom_radius": 2.655,
- "screw_insert_top_radius": 2.55,
- "wire_post_height": 7,
- "wire_post_overhang": 3.5,
- "wire_post_diameter": 2.6,
- "controller_mount_type": "EXTERNAL",
- "external_holder_height": 12.5,
- "external_holder_width": 28.75,
- "external_holder_xoffset": -5.0,
- "external_holder_yoffset": -4.5,
- "screw_hole_diameter": 2,
- "base_thickness": 3.0,
- "base_offset": 3.0,
- "base_rim_thickness": 5.0,
- "screw_cbore_diameter": 4.0,
- "screw_cbore_depth": 2.0,
- "plate_holes": false,
- "plate_holes_xy_offset": [
- 0.0,
- 0.0
- ],
- "plate_holes_width": 14.3,
- "plate_holes_height": 14.3,
- "plate_holes_diameter": 1.7,
- "plate_holes_depth": 20.0,
- "pcb_width": 18.0,
- "pcb_height": 18.0,
- "pcb_thickness": 1.5,
- "pcb_hole_diameter": 2,
- "pcb_hole_pattern_width": 14.3,
- "pcb_hole_pattern_height": 14.3,
- "column_offsets": [
- [
- 0,
- 0,
- 0
- ],
- [
- 0,
- 0,
- 0
- ],
- [
- 0,
- 2.82,
- -4.5
- ],
- [
- 0,
- 0,
- 0
- ],
- [
- 0,
- -6,
- 5
- ],
- [
- 0,
- -6,
- 5
- ],
- [
- 0,
- -6,
- 5
- ]
- ]
-} \ No newline at end of file
diff --git a/src/generate_configuration.py b/src/generate_configuration.py
index c6ed586..3c3df1c 100644
--- a/src/generate_configuration.py
+++ b/src/generate_configuration.py
@@ -357,11 +357,11 @@ shape_config = {
'screw_insert_height': 3.8,
- # 'screw_insert_bottom_radius': 5.31 / 2, #Designed for inserts
- # 'screw_insert_top_radius': 5.1 / 2, #Designed for inserts
+ 'screw_insert_bottom_radius': 5.31 / 2, #Designed for inserts
+ 'screw_insert_top_radius': 5.1 / 2, #Designed for inserts
- 'screw_insert_bottom_radius': 2.5 / 2, # Designed for self tapping
- 'screw_insert_top_radius': 2.5 / 2, # Designed for self tapping
+ # 'screw_insert_bottom_radius': 2.5 / 2, # Designed for self tapping
+ # 'screw_insert_top_radius': 2.5 / 2, # Designed for self tapping
'screw_insert_outer_radius': 4.25, # Common to keep interface to base
diff --git a/src/run_config.json b/src/run_config.json
deleted file mode 100644
index 83fa660..0000000
--- a/src/run_config.json
+++ /dev/null
@@ -1,574 +0,0 @@
-{
- "ENGINE": "cadquery",
- "save_dir": ".",
- "config_name": "DM",
- "show_caps": false,
- "show_pcbs": false,
- "nrows": 5,
- "ncols": 6,
- "alpha": 0.26179916666666664,
- "beta": 0.08726638888888888,
- "centercol": 3,
- "centerrow_offset": 3,
- "tenting_angle": 0.26179916666666664,
- "symmetry": "symmetric",
- "column_style_gt5": "orthographic",
- "column_style": "standard",
- "reduced_inner_cols": 2,
- "reduced_outer_cols": 2,
- "thumb_offsets": [
- 6,
- -3,
- 7
- ],
- "keyboard_z_offset": 11,
- "extra_width": 2.5,
- "extra_height": 1.0,
- "web_thickness": 5.1,
- "post_size": 0.1,
- "post_adj": 0,
- "thumb_style": "DEFAULT",
- "default_1U_cluster": true,
- "minidox_Usize": 1.6,
- "mini_index_key": true,
- "default_thumb_screw_xy_locations": [
- [
- -21,
- -58
- ]
- ],
- "default_separable_thumb_screw_xy_locations": [
- [
- -21,
- -58
- ]
- ],
- "mini_thumb_screw_xy_locations": [
- [
- -29,
- -52
- ]
- ],
- "mini_separable_thumb_screw_xy_locations": [
- [
- -29,
- -52
- ],
- [
- -62,
- 10
- ],
- [
- 12,
- -25
- ]
- ],
- "minidox_thumb_screw_xy_locations": [
- [
- -37,
- -34
- ]
- ],
- "minidox_separable_thumb_screw_xy_locations": [
- [
- -37,
- -34
- ],
- [
- -62,
- 12
- ],
- [
- 10,
- -25
- ]
- ],
- "carbonfet_thumb_screw_xy_locations": [
- [
- -48,
- -37
- ]
- ],
- "carbonfet_separable_thumb_screw_xy_locations": [
- [
- -48,
- -37
- ],
- [
- -52,
- 10
- ],
- [
- 12,
- -35
- ]
- ],
- "orbyl_thumb_screw_xy_locations": [
- [
- -53,
- -68
- ]
- ],
- "orbyl_separable_thumb_screw_xy_locations": [
- [
- -53,
- -68
- ],
- [
- -66,
- 8
- ],
- [
- 10,
- -40
- ]
- ],
- "tbcj_thumb_screw_xy_locations": [
- [
- -40,
- -75
- ]
- ],
- "tbcj_separable_thumb_screw_xy_locations": [
- [
- -40,
- -75
- ],
- [
- -63,
- 10
- ],
- [
- 15,
- -40
- ]
- ],
- "thumb_plate_tr_rotation": 0.0,
- "thumb_plate_tl_rotation": 0.0,
- "thumb_plate_mr_rotation": 0.0,
- "thumb_plate_ml_rotation": 0.0,
- "thumb_plate_br_rotation": 0.0,
- "thumb_plate_bl_rotation": 0.0,
- "separable_thumb": false,
- "trackball_in_wall": false,
- "tbiw_ball_center_row": 0.2,
- "tbiw_translational_offset": [
- 0.0,
- 0.0,
- 0.0
- ],
- "tbiw_rotation_offset": [
- 0.0,
- 0.0,
- 0.0
- ],
- "tbiw_left_wall_x_offset_override": 50.0,
- "tbiw_left_wall_z_offset_override": 0.0,
- "tbiw_left_wall_lower_x_offset": 0.0,
- "tbiw_left_wall_lower_y_offset": 0.0,
- "tbiw_left_wall_lower_z_offset": 0.0,
- "tbiw_oled_center_row": 0.75,
- "tbiw_oled_translation_offset": [
- -3.5,
- 0,
- 1.5
- ],
- "tbiw_oled_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "finger_trackball_in_wall": false,
- "tbiw_ball_center_column": 0.2,
- "tbiw_top_wall_y_offset_override": 50.0,
- "tbiw_top_wall_z_offset_override": 0.0,
- "tbiw_top_wall_extension_cols": 4,
- "other_thumb": "DEFAULT",
- "tbjs_key_diameter": 70,
- "tbjs_Uwidth": 1.2,
- "tbjs_Uheight": 1.2,
- "tbjs_translation_offset": [
- 0,
- 0,
- 2
- ],
- "tbjs_rotation_offset": [
- 0,
- -8,
- 0
- ],
- "tbjs_key_translation_offsets": [
- [
- 0.0,
- 0.0,
- -8.0
- ],
- [
- 0.0,
- 0.0,
- -8.0
- ],
- [
- 0.0,
- 0.0,
- -8.0
- ],
- [
- 0.0,
- 0.0,
- -8.0
- ]
- ],
- "tbjs_key_rotation_offsets": [
- [
- 0.0,
- 0.0,
- 0.0
- ],
- [
- 0.0,
- 0.0,
- 0.0
- ],
- [
- 0.0,
- 0.0,
- 0.0
- ],
- [
- 0.0,
- 0.0,
- 0.0
- ]
- ],
- "tbcj_inner_diameter": 42,
- "tbcj_thickness": 2,
- "tbcj_outer_diameter": 53,
- "trackball_modular": false,
- "trackball_modular_lip_width": 3.0,
- "trackball_modular_ball_height": 3.0,
- "trackball_modular_ring_height": 10.0,
- "trackball_modular_clearance": 0.5,
- "ball_side": "both",
- "ball_diameter": 34.0,
- "ball_wall_thickness": 3,
- "ball_gap": 1.0,
- "trackball_hole_diameter": 36.5,
- "trackball_hole_height": 40,
- "trackball_plate_thickness": 2,
- "trackball_plate_width": 2,
- "tb_socket_translation_offset": [
- 0,
- 0,
- 2.0
- ],
- "tb_socket_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "tb_sensor_translation_offset": [
- 0,
- 0,
- 0
- ],
- "tb_sensor_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "pinky_1_5U": false,
- "first_1_5U_row": 0,
- "last_1_5U_row": 5,
- "skeletal": false,
- "wall_z_offset": 15,
- "wall_x_offset": 5,
- "wall_y_offset": 6,
- "left_wall_x_offset": 12,
- "left_wall_z_offset": 3,
- "left_wall_lower_x_offset": 0,
- "left_wall_lower_y_offset": 0,
- "left_wall_lower_z_offset": 0,
- "wall_thickness": 4.5,
- "wall_base_y_thickness": 4.5,
- "wall_base_x_thickness": 4.5,
- "wall_base_back_thickness": 4.5,
- "fixed_angles": [
- 0.17453277777777776,
- 0.17453277777777776,
- 0,
- 0,
- 0,
- -0.26179916666666664,
- -0.26179916666666664
- ],
- "fixed_x": [
- -41.5,
- -22.5,
- 0,
- 20.3,
- 41.4,
- 65.5,
- 89.6
- ],
- "fixed_z": [
- 12.1,
- 8.3,
- 0,
- 5,
- 10.7,
- 14.5,
- 17.5
- ],
- "fixed_tenting": 0.0,
- "plate_style": "NOTCH",
- "hole_keyswitch_height": 14.0,
- "hole_keyswitch_width": 14.0,
- "nub_keyswitch_height": 14.4,
- "nub_keyswitch_width": 14.4,
- "undercut_keyswitch_height": 14.0,
- "undercut_keyswitch_width": 14.0,
- "notch_width": 6.0,
- "sa_profile_key_height": 12.7,
- "sa_length": 18.5,
- "sa_double_length": 37.5,
- "plate_thickness": 5.1,
- "plate_rim": 2.0,
- "clip_thickness": 1.1,
- "clip_undercut": 1.0,
- "undercut_transition": 0.2,
- "plate_file": null,
- "plate_offset": 0.0,
- "oled_mount_type": "NONE",
- "oled_center_row": 1.25,
- "oled_translation_offset": [
- 0,
- 0,
- 4
- ],
- "oled_rotation_offset": [
- 0,
- 0,
- 0
- ],
- "oled_configurations": {
- "UNDERCUT": {
- "oled_mount_width": 15.0,
- "oled_mount_height": 35.0,
- "oled_mount_rim": 3.0,
- "oled_mount_depth": 6.0,
- "oled_mount_cut_depth": 20.0,
- "oled_mount_location_xyz": [
- -80.0,
- 20.0,
- 45.0
- ],
- "oled_mount_rotation_xyz": [
- 13.0,
- 0.0,
- -6.0
- ],
- "oled_left_wall_x_offset_override": 28.0,
- "oled_left_wall_z_offset_override": 0.0,
- "oled_left_wall_lower_y_offset": 12.0,
- "oled_left_wall_lower_z_offset": 5.0,
- "oled_mount_undercut": 1.0,
- "oled_mount_undercut_thickness": 2.0
- },
- "SLIDING": {
- "oled_mount_width": 12.5,
- "oled_mount_height": 25.0,
- "oled_mount_rim": 2.5,
- "oled_mount_depth": 8.0,
- "oled_mount_cut_depth": 20.0,
- "oled_mount_location_xyz": [
- -78.0,
- 10.0,
- 41.0
- ],
- "oled_mount_rotation_xyz": [
- 6.0,
- 0.0,
- -3.0
- ],
- "oled_left_wall_x_offset_override": 24.0,
- "oled_left_wall_z_offset_override": 0.0,
- "oled_left_wall_lower_y_offset": 12.0,
- "oled_left_wall_lower_z_offset": 5.0,
- "oled_thickness": 4.2,
- "oled_edge_overlap_end": 6.5,
- "oled_edge_overlap_connector": 5.5,
- "oled_edge_overlap_thickness": 2.5,
- "oled_edge_overlap_clearance": 2.5,
- "oled_edge_chamfer": 2.0
- },
- "CLIP": {
- "oled_mount_width": 12.5,
- "oled_mount_height": 39.0,
- "oled_mount_rim": 2.0,
- "oled_mount_depth": 7.0,
- "oled_mount_cut_depth": 20.0,
- "oled_mount_location_xyz": [
- -78.0,
- 20.0,
- 42.0
- ],
- "oled_mount_rotation_xyz": [
- 12.0,
- 0.0,
- -6.0
- ],
- "oled_left_wall_x_offset_override": 24.0,
- "oled_left_wall_z_offset_override": 0.0,
- "oled_left_wall_lower_y_offset": 12.0,
- "oled_left_wall_lower_z_offset": 5.0,
- "oled_thickness": 4.2,
- "oled_mount_bezel_thickness": 3.5,
- "oled_mount_bezel_chamfer": 2.0,
- "oled_mount_connector_hole": 6.0,
- "oled_screen_start_from_conn_end": 6.5,
- "oled_screen_length": 24.5,
- "oled_screen_width": 10.5,
- "oled_clip_thickness": 1.5,
- "oled_clip_width": 6.0,
- "oled_clip_overhang": 1.0,
- "oled_clip_extension": 5.0,
- "oled_clip_width_clearance": 0.5,
- "oled_clip_undercut": 0.5,
- "oled_clip_undercut_thickness": 2.5,
- "oled_clip_y_gap": 0.2,
- "oled_clip_z_gap": 0.2
- }
- },
- "screws_offset": "INSIDE",
- "screw_insert_height": 3.8,
- "screw_insert_bottom_radius": 1.25,
- "screw_insert_top_radius": 1.25,
- "screw_insert_outer_radius": 4.25,
- "wire_post_height": 7,
- "wire_post_overhang": 3.5,
- "wire_post_diameter": 2.6,
- "controller_mount_type": "EXTERNAL",
- "external_holder_height": 12.5,
- "external_holder_width": 28.75,
- "external_holder_xoffset": -5.0,
- "external_holder_yoffset": -4.5,
- "pcb_mount_ref_offset": [
- 0,
- -5,
- 0
- ],
- "pcb_holder_size": [
- 34.6,
- 7,
- 4
- ],
- "pcb_holder_offset": [
- 8.9,
- 0,
- 0
- ],
- "pcb_usb_hole_size": [
- 7.5,
- 10.0,
- 4
- ],
- "pcb_usb_hole_offset": [
- 15,
- 0,
- 4.5
- ],
- "wall_thinner_size": [
- 34,
- 7,
- 10
- ],
- "trrs_hole_size": [
- 3,
- 20
- ],
- "trrs_offset": [
- 0,
- 0,
- 1.5
- ],
- "pcb_screw_hole_size": [
- 0.5,
- 10
- ],
- "pcb_screw_x_offsets": [
- -5.5,
- 7.75,
- 22
- ],
- "pcb_screw_y_offset": -2,
- "screw_hole_diameter": 3,
- "base_thickness": 3.0,
- "base_offset": 3.0,
- "base_rim_thickness": 5.0,
- "screw_cbore_diameter": 6.0,
- "screw_cbore_depth": 2.5,
- "plate_holes": true,
- "plate_holes_xy_offset": [
- 0.0,
- 0.0
- ],
- "plate_holes_width": 14.3,
- "plate_holes_height": 14.3,
- "plate_holes_diameter": 1.6,
- "plate_holes_depth": 20.0,
- "plate_pcb_clear": false,
- "plate_pcb_size": [
- 18.5,
- 18.5,
- 5
- ],
- "plate_pcb_offset": [
- 0,
- 0,
- 0
- ],
- "pcb_width": 18.0,
- "pcb_height": 18.0,
- "pcb_thickness": 1.5,
- "pcb_hole_diameter": 2,
- "pcb_hole_pattern_width": 14.3,
- "pcb_hole_pattern_height": 14.3,
- "column_offsets": [
- [
- 0,
- 0,
- 0
- ],
- [
- 0,
- 0,
- 0
- ],
- [
- 0,
- 2.82,
- -4.5
- ],
- [
- 0,
- 0,
- 0
- ],
- [
- 0,
- -6,
- 5
- ],
- [
- 0,
- -6,
- 5
- ],
- [
- 0,
- -6,
- 5
- ]
- ]
-}