First of all, I guess you wouldn't want to build your own keyboard,
but anyway, here it is:
In case anyone curious, it's built on scrap collected over 5 months, 2016 September - 2017 February, the plate is metal frame with 60% layout (GH60) from aliexpress, switches is gateron blue bought from Massdrop, the key caps is randomly bought from local gaming store, and the controller is arduino micro clone from Robotdyn.
Considering how much time, effort, and money poured on this, I don't think anyone will approve.
Also, naming is hard.
While the layout is totally GH60, this keyboard is somewhat built from scratch. The switches are all hand-wired with 8x8 matrix, so it's only use 16 pins. Matrix layout here. The firmware is written from scratch on top of LUFA (all USB related code was adapted from LUFA keyboard demo though).
Currently there is only one base keymap, with [Fn]
modifier to accomodate arrows, [pageUp]
-[PageDown]
, [Esc]
, [Home]
-[End]
, and [Insert]
. (See todo below)
Please change the makefile according to your environment setup, run make
to build the firmware. Run make avrdude
to flash the firmware.
Previously I plan to build the keyboard on ATTiny167 based Digispark Pro, but I scrapped the plan and go with ATMega32u4 instead. And this RobotDyn Arduino-Micro clone is dirt-cheap!
Here is BOM (price in USD):
Name | Store | Qty | Price (total) | Shipping cost | Link |
---|---|---|---|---|---|
Metal Frame Plate GH60 layout + stabilizer (unused) | KBDFans Store (AliExpress) | 1 | $22 | $13.39 | AliExpress |
Gateron Blue Switches | Massdrop | 120 pcs | $24.99 | $9.75 | Massdrop |
Novelties keycaps | Massdrop | 6pcs | $19.98 | $6.50 | Massdrop |
PBT OEM profile Keycaps | Local gaming store | 1 pack | $20 | - | - |
1N4001 diode | LisuInstrument (Tokopedia) | 61 | $1 | $0.6 | Tokopedia |
Enameled copper wire (0.5mm) 0.5Kg | PCM Elektronik (Tokopedia) | 1 | $6.38 | $0.3 | Tokopedia |
Arduino Micro (clone) | RobotDyn | 1 | $3.85 | $1.41 | RobotDyn |
- LEDs
- More layers?
- Special layer for input macro (shortcut to input some text)
- Proper mounting/housing for the controller
Copyright 2017 Nurahmadie [email protected]
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
ಠ_ಠ