Skip to content

Custom single handed gaming keyboard

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE.txt
MIT
LICENSE_FOR_SOFTWARE.txt
Notifications You must be signed in to change notification settings

flamepygmy/RaveBeast

Repository files navigation

RaveBeast

Custom single handed gaming keyboard

kbd

Software is licensed under the MIT license. Do whatever you want with it. See LICENSE_FOR_SOFTWARE.txt for details.

The 3D parts and PCB files are licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license. See LICENSE_FOR_MODELS_AND_PCB.txt for the details. If you want to use this for commercial use, contact me on github.

This is a custom 3D printed gaming keyboard for left handed use meant for gaming. I use this as my keyboard when playing Destiny 2.

Files included:

  • PCB schematic files that can be used to order PCBs (I used PCBWay for mine and these files in a zip file were enough for the order)
  • 3D printer files for the parts of the body
  • 3D printer files for custom key caps (but any Cherry MX compatible ones can be used)
  • 3D printing instructions (recommended nozzle diameter, supports, etc.)
  • Source code for the microcontroller (Teensy 4.0)

Extra hardware required:

  • Teensy 4.0 with headers installed (others may work if they are pin compatible and dimensionally equivalent)
  • 23 key switches that are dimensionally compatible with Cherry MX PCB switches (I use Cherry MX Red on mine), make sure to get the PCB switches
  • Micro USB cable (will be used for programming and for running it as a USB keyboard)
  • 4x 20mm M3 screws
  • 4x M3 heat set inserts
  • some wiring to connect the 3 thumb controlled keys to the PCB

Tools needed:

  • M3 driver
  • solder
  • soldering iron
  • tools for cleaning the 3D prints

3D printing instructions

3D printed parts needed:

  • 1x base
  • 1x top
  • 1x wristrest
  • 10x keyhat_10degrees
  • 10x keyhat_20degrees
  • 3x keyhat_neutral (I personally use non-printed key hats for the thumb section)

base:

  • can be printed in various nozzle sizes, printed mine on 0.6
  • no need for supports

top:

  • can be printed in various nozzle sizes, printed mine on 0.6
  • print upside down (top against the build plate)
  • no need for supports depending on printer, if problems getting the opening for the USB cable printed, add support enforcers there

wristrest:

  • can be printed in various nozzle sizes, printed mine on 0.6
  • smaller nozzle size benefits printing the wire holes for the thumb control cherry MX switches more accurately
  • add support for the bottom most cherry MX switch location from build plate, may be OK without depending on your printer (no supports needed elsewhere)

keyhats (updated instructions, Prusa Slicer 2.71):

  • print with a 0.4mm nozzle
  • use 0.45mm layer width (all layers)
  • use 0.10mm layer height
  • enable auto-generated supports
  • set support type to organic
  • set a cylindrical support blocker around the pillar of the key cap that is slightly wider than the pillar (size = 7mm x 7mm x 25mm)
  • set the "XY separation between an object and its support" to 0.5mm

supports should release easy, there is only one layer for the pillar, but it should be strong enough 0.45mm. If it's not, you can try to widen it, but there is not a lot of room in there.

You don't want this:

kbd

This can be still cleaned, but it's annoying to peel what seems like an extra layer on the part that you want to keep.

You want the bottom of the keycap to look like this:

kbd

Assembly instructions

The assembly should be fairly straightforward once you have all the parts printed and PCB at hand.

PCB and wiring preparation

PCB looks like this:

kbd

  • prepare the PCB by inserting 20 key switches in correct orientation to the top side of the PCB (copyright text on top side), solder the switches on the bottom side

  • insert the Teensy 4.0 with headers onto the PCB, solder every pin on the bottom side

  • take the 3d printed "base" model, use soldering iron to push in the heat set inserts into place (if unsure, search in internet on how to do it)

  • prepare the thumb section wire holes by making sure that they are open and you may need to widen them a little bit for step (5)

  • prepare three key switches by soldering wires onto the legs of the key switches (2 wires each), do not trim the wires yet and make sure to solder the wire inline with the pin to make the whole thing very narrow so that it still fits through wire holes of the 3d printed part

  • put the thumb key wires through the holes in the thumb key section and route the cables underneath

Here is a picture of how the underside of an assembled keyboard looks like:

kbd

  • align the palm section with the base section, screw holes should align and the cable routing holes should be on the right side and

  • continue routing the cables coming from the thumb section through the routing holes on the right side of the base, the wires should reach the last larger section and have a little bit of extra room to manouver for soldering

  • take the PCB and lay it on top of the base just to see how everything lines up, screw holes should line up and the placement for the Teensy 4.0 should be on the top left with it's USB port facing left

  • once everything looks right, take one cable coming from each thumb key, peel the cable shielding and and push them all from underside of the PCB (top side is the one with the copyright texts) so that they go through the TGND1 hole and come top the top side and then solder all 3 wires to TGND1

  • similarly to the previous steps, prepare the other wires coming from the thumb section, but this time solder one wire from each key switch to T0, T1, and T2

  • align the PCB to the base so that the screw holes match the heat set inserts

  • align the palm section with the heat set inserts as well

  • put the top section on top everything and screw everything together with 4 screws, this step may be a little bit tedious

  • slap on key caps of your liking (3D printed ones or regular Cherry MX compatible key caps)

  • attach micro USB cable to the USB port on the top left of the keyboard

  • if your computer is on the right side, you can use the little loop on top of the top piece to tighten the USB cable with a zip tie to it for strain relief

Done. Next step is to load the keyboard software to it and it's ready to go.

Uploading software to the Teensy

Install Arduino and support for Teensy (4.0).

  • Plug in the USB cable to the board
  • Under Tools->Board menu select "Teensy 4.0"
  • Under Tools->USB Type menu select "Keyboard"
  • Under Tools->Port select the correct USB port (with Teensy 4.0 if you have only one, if multiple, consider disconnecting other ones during this)
  • Press Sketch->Upload

Code will get compiled and uploaded to the Teensy board after which the keyboard is immediately active.

Note: there is a 1 second delay in the beginning of the code to let everything settle before sampling initial state of the pins. No keypresses will be processed during this time, recommend not typing anything during this period.

About

Custom single handed gaming keyboard

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE.txt
MIT
LICENSE_FOR_SOFTWARE.txt

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages