My Favorite Mechanical Keyboard: A DIY 3D Printed and Handwired Custom
ฝัง
- เผยแพร่เมื่อ 15 ก.ย. 2024
- In this video I will show you my favorite 3D printed mechanical keyboard and how you can build your own DIY handwired mechanical keyboard. This model was originally designed by Thingiverse user Fumbucker. I will be sharing my modified design. The keyboard uses a teensy 2.0 to run QMK Firmware. This build could also be completed with an Arduino Pro Micro or a Teensy 2.0++ This video will discuss the following topics:
How to build a 3D printed keyboard
How to build a handwired keyboard
Easy way to write QMK Firmware
How to flash a teensy microcontroller
This project has been updated to include ANSI and ISO layouts.
//Check out the 3D Modeling process in this video:
• How to Design a Custom...
// Follow me on Twitch:
twitch.tv/m0dulus
//Support My Content
ko-fi.com/madm...
// Files Needed
3D Model and Firmware: www.printables...
// Software Needed
Arduino IDE: www.arduino.cc...
Teensyduino: www.pjrc.com/t...
// Website links
Keyboard Layout Editor: www.keyboard-la...
Keyboard Firmware Builder: kbfirmware.com/
Keyboard Tester: www.keyboardte...
// Equipment Needed
1 - Teensy 2.0: amzn.to/3PCcoVc
68 - 1N4148 Diodes: amzn.to/3YwPPFD
68 - of your favorite mechanical keyboard switches: amzn.to/3BIY2Nm
Keycaps: amzn.to/3v2oRZa
Stabilizers: amzn.to/3YCdx3t
1 - USBC Breakout board: amzn.to/3FC2RJf
8 - 12mm M3 bolts: amzn.to/3G5JV7q
8 - 20mm M3 bolts: amzn.to/3j4W03o
16 - M3 nuts: amzn.to/3HNveam
//Tools I Use
Electric Screwdriver: hototools.com/...
Tool Kit: amzn.to/3WpA9SH
Soldering Iron: amzn.to/3V5SLWS
Fume Extractor: amzn.to/3HKbOCV
Multitool: amzn.to/3G0L8g5
#mechanicalkeyboards #keyboards #electronics
Thanks for watching and Subscribing! ❤
Wireless 2.4ghz + bluetooth 5.0 please...
0:40 *Hyped up setup, Holy choior music, artistic blur effect* "by username fumbucker". That is the most hilarious contrast ever.
Melting the plastic to expose the wire is GENIUS, been waiting to fix a pair of head phones and kept ruining the wires with strippers, I'm so gonna try this
Looks great,
You should put two 5.1k resistors to ground from each of the CC pins on the USB C breakout, this will let you use more cables as it will better conform to USB spec.
You may find without them that many C to C cables just won't work
Thanks for the tip
I really like the Mario themed one, those pixelated legends look so cool.
I actually started handwiring keyboards to learn and practice basic soldering. It is a nice project : ) good recommendation
I was surprised with how good the keyboard you designed looks but I was even more impressed when I saw your number of subscribers the quality of the video in general is up to the standards of a great channel you are going in the right direction keep it up!
Wow, thanks!
I've been using an old IBM model M I inherited for years but after a spill scare, I decided to get into trying to build my own keyboard so I can preserve my old big boy. It's amazing how long it took me to find a video like yours and it's honestly an eye opener.
I think I might do something like this instead and build my own keyboard from scratch.
You refined the file into practically the exact layout of my KBM68! That's awesome!
Thank you for this comment, I was searching everywhere for a compatible layout.
I am surprised you did not use some 3d printed bending tool to form the diodes in a precise shape before soldering them to the switches. A lot of electronics channels I follow use those to precisely bend components and make them look beautiful, thanks for the video!
My absolute favorite thing about this design is that it doesn't leave a small blank space next to the arrow keys. Why do all these 65 and 75 keyboards leave that little space? Condense everything to the right of the space bar, and put a third key between space and the arrow keys! I also love that it has all of the keys on the right side filled and that the arrow keys are aligned with the bottom and right rows. Why do people like the arrow keys separated? It looks so messy to me. Only thing missing is a knob!
I really like all the effort people put in to projects like this one. Being used to nordic layouts it's hard to use any of them out of the box but I guess I could try to modify one myself.
Thanks!. I'm actually working on a video with instructions on how anyone can create a functional keyboard with their own custom layout.
This project has been updated to include and ISO layout. The models are available for free here: cults3d.com/en/3d-model/gadget/mechanical-keyboard-68-key-65
@@MadModLabs Wow that's awesome! I'll look in to that tonight.
Wow, exactly the video I've been looking for! Thank you so very much.
Thank you for sharing this! I just finished mine in ISO layout and made it work. Took most parts from this video and some info from your custom-keyboard video and the qmk documentation to make the german layout work. Now I just need some different height rubber feet as my keyboard is slightly twisted xD
That sounds like an awesome project! I would love to see a picture of it. I'm glad you were able to get it working. 😄
@@MadModLabs I sent you a dm on IG, can't figure out how to send pictures here.
This is pretty cool. The only mod I'd want to make to the design is to add a battery and make it capable of going wireless. That way I could use it at the desk in wired mode and then take it to the living room and connect it wirelessly to my Pi.
I'm here because I want to create a copy of the davinci resolve speed editor. Thank you for explaining how all this works!
I have been thinking of building a similar device. This is not my project but you may find it interesting: github.com/shaise/DiSE
@@MadModLabs that is awesome! that's what I was looking for, I couldn't find anyone else that had done it before
Really cool project and great video!
Would love to see if it’s possible to build one with some form of backlighting.
What an awesome and illustrative video, definitely will make
Thanks for watching. I hope your keyboard turns out great!
Very Cool! I need an Animal Crossing one like the Mario Keyboard at 2:05 ! Awesome job! -Courtney 📍
The perfect keycap set exists for such a keyboard. Check it out : www.aliexpress.com/item/3256804029975943.html?spm=a2g0o.ppclist.product.2.2616WfGEWfGEv7&pdp_npi=2%40dis%21USD%21US%20%2442.88%21US%20%2415.87%21%21%21%21%21%402103222116623470477996734eda89%2112000028411360215%21btf&_t=pvid:b41ff96b-3600-4247-b266-1a6eb69135ee&afTraceInfo=1005004216290695__pc__pcBridgePPC__xxxxxx__1662347047
@@MadModLabs OH. MY. GOSH 👏🏻👏🏻👏🏻
Really great video, thanks for putting this together. It would be cool to see how to convert/build one of these as a wireless keyboard.
Doing this for Christmas!
i’d be super interested in some sound tests
That is a great idea
I've been wanting to make a custom handwired keyboard for a while, but parts where excessive. This video may be the push I needed to go for it.
Go for it! It is a fun and rewarding project. What layout are you looking to build?
Nice build! 👍
Thanks!
so interesting to see a 100$ set of keycaps on a 3D printed board
Awesome stuff. I built one but never got it to work sadly. Bought one now, but maybe I'll try another 3d printed one some day... Probably not though :p
Forget about “Real men write their own drivers”! Real men build their own keyboard from scratch! 👍
About to try this model out. Placing the aliexpress order as we speak. I will post a make on printables when it’s done.
Awesome! I hope your build goes great 👍
شكرا على الفيديو التعليمي
Man Id love one of these for a 75% board, and trying to figure out a way to make it bluetooth or dongle compatible
I would like to design some larger keyboards in the future. I guess the most common 75% layout would be similar to this but including the Function row at the top? I have a 95% layout that is assembled with bolts around the edge like this one but I have not released it yet.
What song was used in the background for the first half? i've been looking for it for a while
The music in this video is by Bad Snacks. The first song is Mizuki by Bad Snacks. th-cam.com/video/qSec95G5mEc/w-d-xo.htmlsi=qI8X3gIX6_8RDXaT
@@MadModLabsI the song before that sorry, I didn't really make it clear, but the first song used from 0:25 to 3:28
That is "The Morning After" by Bad Snacks. th-cam.com/video/d_Oi2QxO1oA/w-d-xo.html @@hachiEightSix
Instead of the soldering part, can we get a pcb with the same design and circuit layout as the one u made???
Who needs diy kits when u got a 3d printer
where do you source that single strand jacketed wire from?
I love it! I have just 3D designed my own keyboard but can't figure out how to split it so I can print it on my Ender 3v2. How did you make the plate click together?
The division in the plate is diagonal so the bolt holes are offset from the bottom of the keyboard case. It does not really click together but it is held together with bolts instead.
Can i use Adruino nano instead of atmega32u4 😮
Yes. Any Arduino will work if it has enough pins to support your wiring matrix.
made it through soldering each and every row and column. wanted to see how the key caps felt. Looks like the spacebar stabilizers are sticking and I can't for the life of me figure it out.
i'm not sure how to trouble shoot further i don't think it's the stabilizers or the caps?
It could be the tolerance of the 3D printed plate. I would recommend taking a file or a small blade and making the stabilizer cutout slightly wider. This will allow the stabilizer to slide a little to the left or right and light with the spacebar stems.
Hi! I'd like to know what filament did you use for this? I used PLA and when my switches are in, the whole thing warped. The keyboard is bent right now but works well. Thanks for the tutorial!
I used silk PLA to build this one. I think the color is called "Coffee Gold" here is a similar filament I found: amzn.to/3OZYBIa
At 0:37 you show what looks like a ansi 104. Can you point me to those files? I can't find any anywhere.
www.thingiverse.com/thing:3903102
Can I use arduino pro micro instead of this micro-controller ?
He mentions a website where he posted the project but I can't find a link for it and I can't understand what he is saying when he says the site's name.
Please Help. This is exactly what I'm looking for, fir my keyboard project.
You can download the STL files from my printables page. www.printables.com/@MadModLabs
making your own keyboards / keypads is fun!
the only downside if you have to use QMK in the end, which is truly horrible.
You could always try flashing an alternative firmware. I have seen some pico based builds using KMK firmware. I have never tried it but it looks interesting.
How much did this cost you in total>
how much filament goes intro printing all that? sorry if you mentioned and i missed it
Sliced in Cura with the standard settings of .2mm layer height, 20% infill density and 2 layer wall thickness, the 7 pieces total 202g (67.38m) of filament. You can change the sound of the keyboard by printing with more infill or thicker walls.
hey nice build you made, really cool match with the egyptian keycaps. Do you know if is there any chance that the keyboard will ghost any key?
With the diodes, there is no ghosting.
@@MadModLabs thanks
hi! I'm sorry if I missed it in the description, but what model 3d printer do you have?
I use a Creality Ender 3 V2
Hey man!! Ive been working on mine and a Problem came up... since de botton part has the recesses for the switches and for the stabilizers Im assuming I should print this face down, but than my printing resolution became very poor to the point where I had to file each hole, tldr the fitting and aliagment are terrible... any tips?
You are correct printing the plate face down. The first layer squish on your printer is causing the tolerance of the switch cutouts to be tighter than expected. I have had the exact same problem before! I solved this by changing my printer's z-offset so the first layer is not so spread out. If the change affects your bed adhesion, I have used hairspray on the print bed to keep the plate from warping.
@@MadModLabs u are my favorite person! lol ...thx alot man
are you planning to do a planck version of this (OLKB 40%) ?
I have been wanting to make an ortholinear keyboard. I would really like to have one larger than 40%
Anyone got his old vod making this build?
so i replaced the pico i used with a teesny 2.0 and now everything works fine but i cant get the usb c breakout board to work when i connect the teensy via a mini usb it just works but as soon as i use a converted mini usb to usb c cable it doenst get recognized (windows code 43 but its the same on andorid so i dont think its an driver issue)i used the same pins on the same breakout board with the same wiring except that i have a blue wire instead of a black wire does that mean that the wiring might be diffferent for my cable ?
That sounds like an unusual cable. If you have a multimeter, you could test each of the USB wires for continuity with the pins in the USB plug. does the cable have any other colored wires like this one? i.pinimg.com/736x/81/b9/67/81b96782f07a9b7f451b7c8aba542751.jpg
@@MadModLabs it indeed is wired like this cable except that my wire has a red wire instead of an orange one thanks alot this might be it
what are those purple keycaps?
@@Stojce_ Black Lotus clones
verrry cool!
Great project! How do you think this keyboard will perform when tested for input latency?
i like the layout!!!! but do you have any lights for the keyboard
does it matter if the top or the bottom pin is used for the resister soldering?
Also would it be possible to use something like the QMK firmwear to install the KBD67/rev1 and flash it onto the teensy? If so what would be the correct pinouts needed to solder?
It does not matter which pin you solder to the diode. However, each switch must have one pin soldered to the row and one pin soldered to the column. It is also important that all the diodes face the same direction.
You can not use the KBD67/rev1 firmware for this project. QMK works on the Teensy 2.0 but you will need to compile your own firmware or use the firmware included with the project files.
What is the best way to troubleshoot a handwired board is a switch doesn't work or if there are issues? How can you find a short in any of the wiring?
Is one switch not working or is an entire row or column not working? If one switch is not working, check the solder points on both of the switch pins and the attached diode. Also, The individual switch may be damaged. You can test it with a multimeter or swap it out for a working switch. If you have an entire row or column that is not working, you should check the solder points on each wire that attaches to your microcontroller. While looking for shorts, check the pins on the micro controller and make sure the board is not pushing against the matrix wires. Place something between them like a piece of tape. Also make sure your wire's insulation has not melted in an unexpected area. The column wires can not touch the row wires. Beyond these scenarios, incorrectly configured firmware could cause a switch to appear defective.
Hope this helps!
@@MadModLabs The issue I have is when I plug in the keyboard the W key is spamming. I am able to get it to stop by unplugging and plugging back in. But then the W key is no longer working. I double checked the solder points, all look good. And even used a multimeter and I get tones when testing the current from the controller to the switch row/column.
Have you tried replacing the switch with a different one?@@Glitch_860
@@MadModLabs I resolved my issue. How I soldered the wires to the board there was a short. I was trying to use the included pin headers on the board then connecting the wire. When I replaced everything with a new board and soldered wires directly to the pins on the board it worked! LOVE YOUR content. Been also trying to get Bluetooth to work on my Zune but having issues where the pads keep coming off the Bluetooth adapter.
Thanks! I'm glad you got it working. Some of the soldering for the Zune project is tricky. I would recommend using leaded solder and thinner gauge wires for the best results. I was just using some recycled wire and it was more difficult than it should have been lol. @@Glitch_860
The Teensy 2.0 isn't being made anymore. But it I were to build this, I'd probably want to use QMK firmware on the RPi Pico, or similar rp2040 based board. I also might print it in PETG, PLA can be quite brittle.
You could use a cheap Arduino Pro Micro clone.
@@MadModLabs I don'tt think they have enough I/O pins. The Chinese clones seem to have only 18 lines brought out. Same with the one made by Spark Fun. There is the real Arduino Micro though for about $25. The RPi Pico is much cheaper and has enough I/O. I'm sure that QMK has already been ported the pico.
@@scharkalvin the pico is great if you prefer. I have been removing the LED resistors on the pro micro to access pins B0 and D5. You can do a lot with 20 pins depending on how you set up the switch matrix.
@@MadModLabs I forgot about the 'extra' dedicated lines to the LEDs. Another idea would be to add an external 3 to 8 decoder IC (74HCT138) to drive the row lines, but that means moding the firmware to output encoded rows rather than one at a time.
@@scharkalvin Yea adding an encoder would complicate things. In some of my other projects that require more switches, I use a different development board that has more pins like the Arduino mega or the teensy 2.0++. I prefer to keep it simple even if I have to buy a clone development board haha.
can I use 65% hotswappable PCB? MW65
You will need to modify the case
How much did you spend for one of it?
hello can i build the same but with a pcb?
You will need to modify the case
Can you convert this into wireless option?
you can with a nice!nano and KMK instead of a teensy 2.0 and QMK
next project: split kb!!
but not linear plz!!! Im gonna make this one now!! and after, de split one, provided that u teach me lol
can you do a keyboard with a trackpoint?
I have never tried to build a keyboard with a track point. I think this is a cool idea though. I definitely want to look into it as a future project.
@@MadModLabs great thank you, they are impossible to find other than the ones lenovo makes but they suck I've had 4 of them
@@82sjmc I know a guy that has the Tex Shinobi. It is a pretty good keyboard if you like the ThinkPad layout. I would recommend getting the DIY kit though so you can add whatever switches you like. tex.com.tw/products/shinobi?variant=16969883648090
nice!
Magnific
I built this and when I plug it into my computer it doesn’t recognize it’s a device but power is gettin to the teensy any ideas on how I could get it to work?
Did you flash the firmware with teensyduino?
Yeah
@@kydenpeterson You could try a different USB-C to USB-A cable. Or you could try adding a 5.1k resistor from each of the CC pins to ground on your USB-C breakout board. This will make the port compliant with USB-C standards and allow more cables to work. I had to do that in this video: th-cam.com/video/iv__343ZwE0/w-d-xo.html
That didn’t work
@@kydenpeterson if you plug the teensy into your computer with a mini USB cable, without using the breakout, is the device recognized?
i like ur video
Can this for raspbery pico?
Yes but overkill. Use something simpler and cheaper. Maybe there are cheaper and simpler options than an arduino as well.
what are the steps for using an pro micro instead of a teensy 2.0? 😅
The process is pretty much the same using an Adruino Pro Micro until flashing the firmware. You must be careful selecting the pins for the rows and columns on the Pro Micro. The Pro Micro pins are labeled differently. This link has the pin labels translated for QMK firmware: golem.hu/article/pro-micro-pinout/
Also, Instead of flashing the firmware.HEX file with Teensyduino, you will need to use a tool for programming Atmel microcontrollers like AVRDUDESS: blog.zakkemble.net/avrdudess-a-gui-for-avrdude/
@@MadModLabs i think the arduino pro micro doesn't have the b7, c7 and d6 pins, where should i wire those?
@@huyu463 You are correct. The Pro Micro does not have those pins. You must define a different pin while creating the firmware in the keyboard firmware builder.
@@MadModLabs how i load the firmware in the firmware builder? is the .hex file? or i have to create it myself?
@@huyu463 I don't think the firmware builder will let you re-upload a hex file. The firmware will need to be created from scratch
can you do a ISO variant of this?
Yes. I am actually working on a video with information on how anyone can create a functional keyboard with their own custom layout.
This project has been updated to include and ISO layout. The models are available for free here: cults3d.com/en/3d-model/gadget/mechanical-keyboard-68-key-65
@@MadModLabs thx i will give it a try
0:35 Can i have stl this white keyboard
@@vrphoenix9761 www.thingiverse.com/thing:3903102
@@MadModLabs Thank you so much
No sounds test? D:
I have found the sound of these keyboards vary a ton depending on how dense they are printed, what switches you use and whether or not you add any dampening material inside the case. I have another video of a completely 3d printed keyboard that does include a sound test, if you are interested. Thanks for watching!
Why not 3d print the key caps
How long did it take to print all the 3D printed parts?
With a stock Ender 3, the combined Cura slicer estimate for printing time is approximately 23.5 hours. This estimate includes all 7 pieces printed at .2mm player height with 2 walls and 20% infill.
@@MadModLabs thank you! I wanted to know how much this would cost for me to have it printed at a fablab near me since they charge per minute :)
@@hlrn4141 That is awesome! I hope your keyboard turns out great. If you are needing 3D printing services, I have had parts shipped from my partner PCBWay.com definitely check out their website and see if it is in your budget.
@@MadModLabs hi, i tried having the parts printed at a nearby store but when they tried preparing it with prusaslicer, something went wrong during slicing for both the bezel left & right files. Is there a way to fix this? 😅
@@hlrn4141 I sliced it with Cura if that helps
how can i find compatible keycaps for the layout?
Does this setup suffer from ghosting?
No. It would if you did not include the diodes and just used wires.
ps: if you don't have 68 fricking diodes you can use led's bycuz led stand for light emitting DIODE. and it woud look cool😁
👇
Am i the only one debating if the voice is ai or not???