# Ergogen config for the eepyBoard # # Reference information: # - Keycap size (FK MBK keycaps): 17.5mm x 16.5mm # Define units and default values used throughout this file units: # Redefine choc units (keycap size + 1mm clearance) cx: 18.5 cy: 17.5 # Size of key rectangle in demo view (keycap size) $default_width: cx-1 $default_height: cy-1 # Actual spacing of keys $default_spread: cx $default_padding: cy # Define the points (i.e. keys) points: zones: # Primary keyboard zone primary: # Key rows (from bottom to top) rows: # Modifier row (Ctrl, ..., but excluding the thumb keys) mod: # Bottom letter row (Shift, Backspace, ZXCV...) bottom: # Middle letter row (Esc, ASDFG...) home: # Top letter row (Tab, QWERT...) top: # Number row (`, 12345...) num: # Key columns (from left to right) columns: # Left-most column (`, Tab, Esc, Shift, Ctrl) outer: key.stagger: 0.25cy # First letter column (1, QA, ...) one: key.stagger: 0.25cy # Second letter column (2, WSZ) two: rows.mod.skip: true # Third letter column (3, EDX) three: rows.mod.skip: true # Fourth letter column (4, RFC) four: rows.mod.skip: true key.stagger: -0.25cy # Fifth letter column (5, TGV) five: rows.mod.skip: true key.stagger: -0.25cy # Thumb fan thumb: # Position thumb keys based on the (non-existant) third key in the modifier row anchor: ref: primary_three_mod shift: [ -0.5cx, -0.25cy ] # Rotate the thumb keys around the bottom-left corner of the key key: origin: [ -0.5cx, -0.5cy ] splay: -8 # Define thumb keys columns: one: two: three: four: # Mirror the board with a distance of 1 key between the upper corners mirror: ref: primary_five_num shift: [ 0.5cx, 0.5cx ] distance: 1cx # Slightly rotate each half of the keyboard rotate: -8 # Generate outlines that can be used in the PCB and for 3D models outlines: # Outline of the key caps (like the demo preview; used for debugging) _keys: - what: rectangle where: true size: [ cx-1, cy-1 ] # Outline for the PCB board: - what: polygon points: - ref: primary_outer_num shift: [ -0.5cx, 0.75cy ] - ref: primary_five_num shift: [ 0.5cx, 1.0cy ] - ref: mirror_primary_five_num shift: [ 0.5cx, 1.0cy ] - ref: mirror_primary_outer_num shift: [ -0.5cx, 0.75cy ] - ref: mirror_primary_outer_mod shift: [ -0.5cx, -0.5cy ] - ref: mirror_thumb_one shift: [ -0.5cx, -0.5cy ] - ref: mirror_thumb_four shift: [ 0.5cx, -0.5cy ] - ref: thumb_four shift: [ 0.5cx, -0.5cy ] - ref: thumb_one shift: [ -0.5cx, -0.5cy ] - ref: primary_outer_mod shift: [ -0.5cx, -0.5cy ] expand: 2 # Debug version of board with key caps for visualization board_debug: - board - ^_keys # Cutouts for the switches switch_cutouts: - what: rectangle where: true size: 14 # Board outline with switch cutouts switch_plate: - board - -switch_cutouts