
Pcb ortho
dcpedit/mod-mmm
The ortholinear build is almost identical to the standard one and utilizes the same daughterboard. Below are some additional notes regarding this layout

The ortholinear build is almost identical to the standard one and utilizes the same daughterboard. Below are some additional notes regarding this layout
Mod mmm is an open-source printed circuit board by dcpedit, from the dcpedit/mod-mmm repository on GitHub, published under the CC-BY-4.0 licence. It is a 2-layer board of 447 × 162.8 mm with 247 parts on 145 nets, routed with 1,682 tracks and 168 vias.
It is built around the BAV70. Its parts include 55 diodes, 6 resistors and 1 connector.
The ortholinear build is almost identical to the standard one and utilizes the same daughterboard. Below are some additional notes regarding this layout
Since the Model M backplate was not designed around an ortholinear layout, the mounting screws end overlapping the switch footprints on the PCB. What this means is that the screw heads will prevent the switch from being seated completely against the PCB. As a work around, I've designed what is esentially a foam spacer to lift switches high enough to clear the screws. The screw heads are around 0.9mm, so this spacer needs to cut out of 1mm EVA foam. Because of this extra lift, the alpha keycaps end up being 1mm higher than the rest, and the gap between the case and the keycap increases by the same amount. The path to the file is:
case/ortho-switch-pad.ai
NOTE: There are no cutouts for the stabalizers, so you may need to cut those manually with scissors depending on your layout.
In my build, I have this spacer pad sitting directly on top of the PCB. Then I have 3.5mm plate foam on top of that. And then finally the 5mm switch plate on top of that.
I wasn't able to find 3.5mm foam, so my stack (for the alpha keys only) ends up looking like this:
| Layer | Tickness | Description |
|---|---|---|
| 1 | 1.0 mm | Steel backplate |
| 2 | 2.0 mm | Case foam |
| 3 | 1.0 mm | PCB |
| 4 | 1.0 mm | Switch spacer pad |
| 5 | 1.5 mm | Plate foam |
| 6 | 2.0 mm | Plate foam |
| 7 | 1.5 mm | Switch plate |
I did not create a universal plate since I didn't want to risk the structural strength by adding too many cuts. You will need I have an all 1u key version under the layer name Plate, and a layout with 1.5u vertical center keys, and 2u spacebars labed as Plate v2. You can optionally apply the Hinges layer to cut hinges in between the switch holes to allow it bend there, thus keeping the switch holes relatively flat.
case/plate-orth.ai - File locationPlate - Layer with 1u keysPlate v2 - Layer with 1.5u vertical center and 2u space keysF-row support - 1.5mm acrylic plate support| Qty | Value | Footprint | References |
|---|---|---|---|
| 95 | MX-NoLED | MX_Only:MXOnly-1U-Hotswap | MX000, MX001, MX002, MX003, MX004, MX005, MX006, MX009, MX010, MX011, MX012, MX013, MX014, MX015, MX016, MX017 +79 |
| 58 | MountingHole | MountingHole:MountingHole_3mm | H1, H2, H10, H11, H12, H13, H14, H15, H16, H17, H18, H19, H20, H21, H22, H23 +42 |
| 55 | BAV70 | Keebio-Parts:SOT-23_Handsoldering | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +39 |
| 6 | MX-NoLED | MX_Only:MXOnly-1.5U-Hotswap | MX020, MX050, MX051, MX086, MX106, MX115 |
| 3 | 10K | Keebio-Parts:Resistor-Hybrid-Back | R4, R5, R6 |
| 3 | 470 | Keebio-Parts:Resistor-Hybrid-Back | R1, R2, R3 |
| 3 | LED | LED_THT:LED_D3.0mm | CAP1, NUM1, SCRL1 |
| 3 | RotaryEncoder_Switch | Keebio-Parts:RotaryEncoder_EC11_Nonplated | SWR1, SWR2, SWR3 |
| 2 | MX-LED | MX_Only:MXOnly-1U-Hotswap-LED | MX007, MX008 |
| 2 | MX-NoLED | MX_Only:MXOnly-2U-Hotswap-ReversedVerticalStabilizers | MX079.2, MX099.2 |
| 2 | MX-NoLED | MX_Only:MXOnly-2.25U-Hotswap | MX036, MX040.225 |
| 2 | MX-NoLED | MX_Only:MXOnly-2U-Hotswap | MX017.2, MX059.2 |
| 1 | Conn_01x30 | Connector_FFC-FPC:TE_3-84952-0_1x30-1MP_P1.0mm_Horizontal | J1 |
| 1 | LOGO | logo:logo50 | G*** |
| 1 | MX-LED | MX_Only:MXOnly-1.25U-Hotswap-LED | MX030.125 |
| 1 | MX-LED | MX_Only:MXOnly-1.75U | MX030 |
| 1 | MX-NoLED | MX_Only:MXOnly-ISO-Hotswap | MX036.2 |
| 1 | MX-NoLED | MX_Only:MXOnly-2.25U-Hotswap-ReversedStabilizers | MX113 |
| 1 | MX-NoLED | MX_Only:MXOnly-2U-Hotswap-ReversedStabilizers | MX114 |
| 1 | MX-NoLED | MX_Only:MXOnly-2.75U-Hotswap-ReversedStabilizers | MX112 |
| 1 | MX-NoLED | MX_Only:MXOnly-2.75U-Hotswap | MX096.275 |
| 1 | MX-NoLED | MX_Only:MXOnly-7U-Hotswap | MX113.7 |
| 1 | MX-NoLED | MX_Only:MXOnly-1.25U-Hotswap | MX040 |
| 1 | MX-NoLED | MX_Only:MXOnly-1.75U-Hotswap | MX096 |
The 246 most common of 247 parts.
It measures 447 × 162.8 mm and has 2 copper layers, 1.6 mm thick.
247 parts, built around the BAV70. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the dcpedit/mod-mmm repository on GitHub, at the commit this page was made from: the board is pcb/pcb.kicad_pcb and its schematic daughterboard/daughterboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the CC-BY-4.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

dcpedit/mod-mmm
The ortholinear build is almost identical to the standard one and utilizes the same daughterboard. Below are some additional notes regarding this layout

dcpedit/mod-mmm
The ortholinear build is almost identical to the standard one and utilizes the same daughterboard. Below are some additional notes regarding this layout

mmccoyd/hillside
Family of split ergonomic keyboards with three rows of six or five keys and a generous thumb arc


TobleMiner/DC-UPS
A small DC UPS, designed to keep small appliances like consumer network equipment running during power outages

dcpedit/dissatisfaction30
To get the PCB manufactured, upload dissat-pcb.zip to JLCPCB, select your desired PCB color while keeping all the other default options, and place your order (minimum 5).

carrefinho/visorbearer
32-key unibody split wireless keyboard with 8 RGB LED indicators

rusefi/hw_microRusEfi
microRusEfi board for rusEfi ECU

ebastler/E80-1800
QMK compatible PCB replacement for Cherry G80-1800
