NameNetIDGroup
Mengyan Liumengyan4A
Ji Shijishi3A
Vicky Caitianhui2B
Jack Chenzihengc2B
  1. Introduction
    a. Statement of Purpose 
        Keyboard is an important equipment for modern people. Whenever you are typing your thesis statement, doing your work report, or playing video games, a suitable keyboard can provide you a comfortable typing environment and let you type faster. Mechanical keyboard, not like membrane keyboard, can generate faster typing response and has longer operation life. This type of keyboard can provide different typing experience by having different axles under the press key, which normal keyboard can not achieve. Therefore, we want to make a mechanical keyboard to make our college "typing life" better. 
    b. Background Research
        We found several tutorial videos on YouTube, which provide detailed procedures of how to make a mechanical keyboard by using Arduino coding. We figured out that we can customize functions of keys and leaser cut our own key press by using the leaser cut machine in our school lab, as well. 

  2. Design Details
    a. Work Plan
        Due to only one of our group mates knows how to code, we are going to spend first three to five weeks to learn Arduino coding. During that period of time, we are also going to order materials that we need to assemble a mechanical keyboard. After we master the coding technique, we will start our coding process, which ideally will last another three weeks. After that we are going to make our own PCB and make the keyboard functionally. The final step is disassemble the mechanical keyboard that we ordered online and substitute its PCB it into our own.
    b. Work Division
        We have four students in our group, so we decided to divide our group into two parts: each group will make its own keyboard. This plan will eliminate free-rider and make sure that we will have at least one item to demonstrate. This parallel studying strategy can also provide student more learning and operation opportunities. 

  3. Material 
    Mechanical keyboard (2), Arduino (4), PCB. 
    Budget: Arduino----20-30$
                  Mechanical keyboard----60-120$

  4. Possible Challenges
    First challenge is learning coding and PCB design with zero fundamental knowledge. However, the biggest challenge is how to transfer the pressing signal to the computer without opening Arduino (i.e press "a" and Word will show "a"). We plan to use a Making PCB and fit it into the mechanical keyboard might also cause problems. 

Comments:

How do you plan on monitoring all of the key switches with the limited GPIO of the arudino? There are a few common methods (usually by creating a matrix and seeing which two lines go high when switch it activated). Additionally, please specify who is in each group.

Posted by chorn4 at Oct 03, 2019 12:16

"However, the biggest challenge is how to transfer the pressing signal to the computer without opening Arduino (i.e press "a" and Word will show "a")."

This will require you emulating an HID device with the Arduino. Research "emulating HID with Arduino" and post your findings here on your proposal.

Posted by fns2 at Oct 03, 2019 18:17