Skip to the content
PCBKitNew board
2 layers100 × 100 mmKeyboard, the printed circuit board in 3D

The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

Size
100 × 100 mm
Copper layers
2
Thickness
1.6 mm
Parts
103
Nets
49
Pads
359
Tracks, vias
888, 2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
25 Oct 2023
Updated
25 Oct 2023

Overview

Keyboard is an open-source printed circuit board by tensorway, from the tensorway/2000transistors repository on GitHub. It is a 2-layer board of 100 × 100 mm with 103 parts on 49 nets, routed with 888 tracks and 2 vias.

Its parts include 32 resistors, 28 switches, 24 transistors, 7 capacitors and 7 diodes. It belongs with the keyboards and input boards of this library.

README

README.md

2000 MOSFET processor

The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

Full cpu Hello world

Conventions

  • all transistors on a board point into the same direction (or 2 perpendicular ones if needed)
  • all leds point into the same direction
  • 1k resistors are labeled with white rectangle, 1M with empty one (only violation is in the Clock board and two voltage divider resistors in LCD board)
  • "*" means high significance bits
  • "+" means positive 5V

Tips

  • you dont need to use extra usb for the power, powering through arduino is enough
  • Adder is made out of 2 smaller 6 bit adders, this means that you do not have to solder one bit (6+6=12 != 11)
  • instruction register needs only 5bits which means you do not have to solder upper 6 bits (all registers are the same board to lower costs)
  • when soldering
    • first put resistors
    • than transistors from the top left (top right if left handed)
    • leds and pin headers last

Important

  • to lower costs all registers have the same board, but TMP and IR registers do not have input and output connected to the bus, this means you have to connect it on other registers
  • You need to find the voltage that works for your LCD contrast and put those resistors

Components

  • 2N7000 MOSFETs
  • BC547 (BJT) only 4 for the astable
  • 1000 ohm registers for leds
  • 1M ohm for logic

Bugs

While I could fix the bugs I do not want to check is everything working again because I would need to solder things again. This is why I list them, so you can either fix them yourselves before or after soldering (I did after). Some bugs are just layout bugs, which means you need to be aware of them but not necessarily fix them.

Micromemory:

  • shuffled by row led, select and switches - layout bug
  • 0th line not connected to rest

Micromemory stepper:

  • shuffeled LED state order - layout bug
  • add delay from clock to it (for example RC)

Keyboard

  • same signals for simetrical (with respect to keyboard diagonal) switches
    • effectively half the number of switches
  • 1 bit not connected

Flags

  • second to last carry and last carry labels mixed - layout bug
  • flags selector selects 0 always

Clock

  • manual clock does not have a debouncer

ALU

  • add OR between ALU decoded ops and give Adder the output

Parts

103
QtyValueFootprintReferences
28SW_Push_DPDTprocessor2:dpdt_switchSW1, SW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23 +12
25Rprocessor2:resistor_tightR1, R2, R3, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R27, R28, R29 +9
242N7000processor2:2n7000_tightQ1, Q2, Q10, Q11, Q12, Q13, Q14, Q15, Q16, Q17, Q19, Q20, Q21, Q22, Q23, Q24 +8
7Cprocessor2:capacitorC1, C2, C3, C4, C5, C6, C7
7LEDprocessor2:led_5mm_tightD1, D2, D3, D4, D5, D6, D7
7Rprocessor2:resistor_led_tightR20, R21, R22, R23, R24, R25, R26
2Conn_01x02_Maleprocessor2:2pin_tightJ2, J3
2Conn_01x11_Maleprocessor2:11pin_tightJ4, J5
1Conn_01x01_Maleprocessor2:1pinJ1

Questions

How big is the Keyboard PCB?

It measures 100 × 100 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Keyboard use?

103 parts. 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.

Where can I download the Keyboard KiCad files?

From the tensorway/2000transistors repository on GitHub, at the commit this page was made from: the board is src/keyboard.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Keyboard design in my own project?

Its repository states no licence, so its author keeps all rights: ask tensorway before reusing the design.

More from tensorway/2000transistors

12
  • 2 layers100 × 100 mmAdder, the printed circuit board in 3D

    Adder

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    208 parts
  • 2 layers150 × 100 mmRegister, the printed circuit board in 3D

    Register

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    206 parts
  • 2 layers100 × 100 mmAdd select board, the printed circuit board in 3D

    Add select board

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    203 parts
  • 2 layers100 × 100 mmPc step board, the printed circuit board in 3D

    Pc step board

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    185 parts
  • 2 layers100 × 100 mmUmem distribution, the printed circuit board in 3D

    Umem distribution

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    168 parts
  • 2 layers100 × 100 mmFlags board, the printed circuit board in 3D

    Flags board

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    158 parts
  • 2 layers100 × 100 mmAlu, the printed circuit board in 3D

    Alu

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    157 parts
  • 2 layers100 × 100 mm4 lines umemory, the printed circuit board in 3D

    4 lines umemory

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    117 parts
  • 2 layers100 × 100 mm5decoder32 half, the printed circuit board in 3D

    5decoder32 half

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    114 parts
  • 2 layers100 × 100 mmClock board, the printed circuit board in 3D

    Clock board

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    109 parts
  • 2 layers100 × 100 mmMemory board, the printed circuit board in 3D

    Memory board

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    53 parts
  • 2 layers100 × 100 mmLcd board, the printed circuit board in 3D

    Lcd board

    tensorway/2000transistors

    The project is made in Kicad. If you want to learn more about it visit howcpuworks.com.

    14 parts

Similar boards

  • 2 layers225 × 356.9 mmFerris, the printed circuit board in 3D

    Ferris

    pierrechevalier83/ferris

    A low profile split keyboard designed to satisfy one single use case elegantly

    103 parts1.3k
  • 2 layers134 × 88 mmTulipcc, the printed circuit board in 3D

    Tulipcc

    shorepine/tulipcc

    The Tulip Creative Computer and AMYboard - portable Python synthesizers

    103 parts978
  • 2 layers97 × 69.5 mmStm32, the printed circuit board in 3D

    Stm32

    eddyem/stm32samples

    Code samples and ready projects based on bare-metal STM32

    103 parts208
  • 2 layers182.8 × 169.2 mmErgoMaxLeft, the printed circuit board in 3D

    ErgoMaxLeft

    LouWii/ErgoMax

    Custom ergo split keyboard project, based on ErgoDox, with hot swap sockets

    103 parts124
  • 2 layers164 × 151 mmParametric speaker, the printed circuit board in 3D

    Parametric speaker

    Orange-Murker/parametric_speaker

    A directional speaker with a driver based on STM32

    103 parts103
  • 2 layers210.5 × 114.8 mmBreeze right, the printed circuit board in 3D

    Breeze right

    afternoonlabs/BreezeKeyboard

    Breeze is a split mechanical keyboard with a column-staggered layout. With a focus on productivity, Breeze features a full 6x4 alphanumeric layout, arrow keys, and an extra 6 key cluster for typing and coding.

    103 parts83
  • 2 layers100 × 100 mmBulkyMIDI-32 Channel 2, the printed circuit board in 3D

    BulkyMIDI-32 Channel 2

    tebl/BulkyMIDI-32

    A HW build of the MT32-PI project, allowing you to emulate a Roland MT-32 using a Raspberry Pi. Includes enough additional modules to build a MIDI-mountain as well as adapters for connecting to most things retro.

    103 parts80CC-BY-SA-4.0
  • 2 layers309 × 104.1 mmAbomination, the printed circuit board in 3D

    Abomination

    sebastian-stumpf/abomination

    Split keyboard with trackpad

    103 parts65