No video

How to Design Mechanical Keyboard PCBs with Kicad

  Рет қаралды 83,375

Joe Scotto

Joe Scotto

Күн бұрын

Today we're going to be taking a look at just how simple it is to design your own mechanical keyboard PCB within Kicad. We will cover everything from setting up the program along with applicable symbol and footprint libraries, designing the schematic, laying out the PCB, and finally some information on the differences between HASL and ENIG when ordering.
~ Links ~
• How a Mechanical Keybo...
• How to Build a Handwir...
• How to Design Mechanic...
Kicad: kicad.org
ScottoKicad: github.com/joe-scotto/scottok...
Find out more about the project: scottokeebs.com
Donations greatly appreciated: bit.ly/41odBEu
Patreon: / joe_scotto
~ Handwiring Tools ~
TS100 Soldering Iron: amzn.to/3LCsrkb
D24 Chisel Tip: amzn.to/3VFxiES
63/37 Solder: amzn.to/3uBlMPu
~ Handwiring Parts ~
1N4148 Diodes: amzn.to/3Ccljbb
16g Copper Wire: amzn.to/3xLDVvJ
Raspberry Pi Pico: amzn.to/3HglCVb
Arduino Pro Micro: amzn.to/3HkR9Fn
Ethernet Cable: amzn.to/3uyaOKr
M2x6mm Screws: amzn.to/3UI1bDH
M2x8mm Spacer: amzn.to/3Y4KzJ3
M2 Heat Set Insert: amzn.to/3WjklB9
Durock Stabilizers: amzn.to/3FgcLQR
~ 3D Printing ~
Ender-3 Pro: amzn.to/3VIWryL
PEI Magnetic Bed: amzn.to/3Hi7URx
Dual Z Upgrade: amzn.to/3h7DTJy
BLTouch Auto-Leveling: amzn.to/3UGEBv8
~ Favorite Cheap Switches ~
Gateron Milky Yellow: amzn.to/3Bk0Cci
Akko Lavender Purple: amzn.to/3VJy440
~ Social ~
/ joe_scotto
/ joe_scotto
ko-fi.com/joe_scotto
~ Community ~
ScottoKeebs Discord: / discord
Handwired Keyboards Reddit: / handwiredkeyboards
~ Timestamps ~
0:00 - Intro
0:22 - Setup
2:48 - Schematic
7:35 - Footprint Assignment
8:43 - PCB Setup
9:14 - Grid System
10:04 - Positioning
13:55 - Routing Traces
15:37 - Vias
16:17 - Controller Wiring
16:46 - Design Rules Checker
17:00 - Edge Cuts
17:38 - Filled Zones
18:45 - Exporting Gerbers
18:56 - Ordering PCBs
19:15 - HASL vs ENIG
19:58 - Outro
~ Disclaimer ~
Some links may be affiliate links where I will make a small commission. Nothing in this video was sponsored by any outside party and I wasn't paid for the content in this video.
#mechanicalkeyboard #kicad #pcb

Пікірлер: 213
@joe_scotto
@joe_scotto 11 ай бұрын
I l put a ton of work into this one so definitely let me know what you think! You can find the ScottoKicad library here: github.com/joe-scotto/scottokeebs/tree/main/Extras/ScottoKicad If you have questions on anything feel free to ask down below or join my discord: discord.gg/ftAUApaQs4
@sanketss84
@sanketss84 11 ай бұрын
thanks for sharing this and making it accessible for lot of the ones just getting into this hobby.
@agatasoda
@agatasoda 11 ай бұрын
Fantastic! I didn't know I wanted to even build a keyboard until this channel popped up.
@zamp-skateboarding
@zamp-skateboarding 5 ай бұрын
How did you set the dark theme? Anyway nice tutorial! Keep going :)
@joe_scotto
@joe_scotto 5 ай бұрын
Search up “Dracula Kicad”
@gonthyalavishalchandan1193
@gonthyalavishalchandan1193 5 ай бұрын
Next video link please
@zachbrown7272
@zachbrown7272 7 ай бұрын
EE and board designer here, you're style is pretty good but I have a few minor nitpicks. First, you're using global labels for your rows and columns. this isn't a huge deal, but net labels are preferred since they are just the scope of the page. You also directly connect two components together in the schematic, but best practice is to leave a grid unit of space and connect them with a wire so that it is clear that they are not one part. This also applies to wires coming out of any pin, so not connecting the labels straight to the MCU pins or running a wire straight across the switch pins.
@thisyologuy
@thisyologuy 6 ай бұрын
If I may add more to that. Firstly two layer boards are costly and in there is no need for that in such simple design. All traces can be routed on the top layer. Secondly if you are doing infill, use is. Good practice is to connect it to the ground (GND pin) of the MCU.
@riccardoiacob4560
@riccardoiacob4560 5 ай бұрын
​@@thisyologuy2 layer boards are the standard for almost any manufacturer, so unless you're planning on producing hundreds of thousands of boards you're probably going to spend more money because single-layer boards are considered "unusual" options thus have to be in a separate production line. Ground planes should be stitched together as often as possible, to reduce return path lengths and impedances. I stand with what Zach said, although using global labels in single-schematic projects may make them kind of clearer to see in the global scope.
@nickklaver11
@nickklaver11 3 ай бұрын
@@riccardoiacob4560 unless you have a cnc machine for prototypes then it makes sense to put components on the back plate for through hole components. i got this advice from a teacher along with the ground mask and making the traces as thick as you can to make for eazy soldering
@forfran
@forfran 15 күн бұрын
I need help with finishing my pcb for a hs keyboard
@aaronacj
@aaronacj 4 ай бұрын
Not interested in KBs, but your walkthrough on KiCAD is better than most dedicated tutorials. An in depth tutorial of kicad would be amazing with your style of to the point instruction.
@joe_scotto
@joe_scotto 4 ай бұрын
I'm glad it was helpful! I plan on making more Kicad videos in the future that might be of interest to you :)
@WulffDen
@WulffDen 4 ай бұрын
Man, this walkthrough has been so helpful with a recent project. I've been back here probably like 50 times by now. Thank you so much for this.
@joe_scotto
@joe_scotto 4 ай бұрын
Glad it’s helpful :)
@compfixer87
@compfixer87 11 ай бұрын
As an avid KZbin video consumer, this is now my favorite video on the entire platform. Thank you! I’ve been trying to teach myself KiCAD for a long time now so I can fabricate some more stable/professional boards for a few custom, Home Assistant-integrated sensors I created and hand wired on perf board, but I kept getting stuck. Your video has shown me how to properly get started, and planted the seeds of a desire to maybe design my own keeb in the future rather than using the (amazing) open source boards I’ve built to date. Maybe I can finally contribute back to the open source home automation and keeb communities with my own designs now. I cannot express how excited this video has left me, nor can I sufficiently convey my gratitude. Thank you again!
@ChaitanyaDankhade
@ChaitanyaDankhade 8 ай бұрын
hey how to add rotary encoder on pcb
@Aliens400
@Aliens400 11 ай бұрын
Very good, easy, and clear to follow tutorial. You couldn’t have done a better job! The only thing I would mention worth adding is the KLE placer plugin, which is pretty much necessary for getting the key footprints in the right location for full sized keyboards. But overall this is a brilliant intro video!
@joe_scotto
@joe_scotto 11 ай бұрын
I’ll have to look into that plugin. I’ve started designing my handwired boards with Kicad but a tool to convert KLE would be awesome!
@Aliens400
@Aliens400 11 ай бұрын
@@joe_scotto Noah Kiser does a really good job at explaining how to use it, I included the link that starts at him using the tool, but for install instructions go to ~1 : 05 kzbin.info/www/bejne/bIuXapWvo7ekoJosi=2ZARvlQ_-5lMZ-w2&t=2556 Great work again! I think the software and case building episodes in this series are really going to be interesting! Can't wait!
@Bobbakerfield
@Bobbakerfield 6 ай бұрын
Great work. I was watching a few other peoples videos about how to do this and they didn't go into as much detail as you did on the routing. Very appreciated. Also thanks for making and sharing your kicad components list. You've almost taken all the guess work out of how to do this.
@SpeedyPotato_
@SpeedyPotato_ 11 ай бұрын
i wish i had this when starting out, I self-learned with ai03's old guides a few years back and still found a few neat tricks I haven't seen before. Thanks!
@KyekOfficial
@KyekOfficial 11 ай бұрын
Great guide Joe, I know kicad already but I watched it to see if it would be a good guide to recommend. I think you explained every step really well so I'll be recommending this guide moving forward. Thanks!
@MrJibJub13
@MrJibJub13 6 ай бұрын
you files and linked 3d files are really helping me set up kicad for keyboards. i looks like it was a lot of work and thank you for it!
@kwahlman
@kwahlman 9 ай бұрын
For the "Select item(s)" it mean you can select several items at once, if it is a capitalized letter inside a pair of round brackets with a space between the word and the brackets it is a hotkey. If you hover over the tenth icon from the bottom you will see that it has the S hotkey "Add a hierarchical sheet (S)". They are a bit indecisive in how they label buttons though. The last icon "Delete clicked items" do not use the "item(s)" notation. Not trying to sound ungrateful or rude, just giving the reason for why S doesn't work for select. I love the video, I wanted to get into this myself and this video is a great place to start. Thanks for taking the time to make this!
@nutellanutella
@nutellanutella 11 ай бұрын
You can directly type "19.05 / 8" in the grid settings and it will update the correct number
@joe_scotto
@joe_scotto 11 ай бұрын
Oh wow… I’m fairly certain I tried this before and it didn’t work but just now I tried it and success! Thank you!
@rakibshahid7913
@rakibshahid7913 11 ай бұрын
Just wanted to say your channel is a godsend. Recently got into this stuff not too long ago and your channel is a phenomenal resource
@overvoltagestudio
@overvoltagestudio 11 ай бұрын
Fantastic video! Great entry level explanation and guide for beginner keeb DIY:ers. Side note: Copper fills are usually used for grounding or EMI reduction, basically it only becomes necessary when antennas or high speed signals are involves. Completely unneccesary on boards like this where the MCU and USB is on a separate board, but yes it looks pretty :)
@joe_scotto
@joe_scotto 11 ай бұрын
Yeah, the copper fill I kept simple because it's something that confused me when I first learned it. I want to do another video eventually covering on-board MCU circuits with direct wiring. That would allow me to show how you can use a filled zone in order to automatically connect all the direct pin switches to ground without having to run traces.
@overvoltagestudio
@overvoltagestudio 11 ай бұрын
@@joe_scotto That would be awesome to see!
@sanketss84
@sanketss84 11 ай бұрын
yup thats correct. it would have worked really well for an example with a direct wired macropad vs row col.
@SanderMakes
@SanderMakes 11 ай бұрын
Hey Joe, I just wanted to let you know you really helped me out with this video. A lot of the things you showed me, really made me have KiCAD click for me. Thanks!
@joe_scotto
@joe_scotto 11 ай бұрын
Glad it helped :)
@user-ch9iz3ib4i
@user-ch9iz3ib4i 11 ай бұрын
This literally came out exactly when I needed an easy Kicad guide, thanks a million! Loved the video and found it supremely helpful:)
@sergeikrivtcov9518
@sergeikrivtcov9518 11 ай бұрын
I highly recommend the excellent "Keyboard footprints placer" plugin for Kicad. It automatically places diodes, switches and stabs on the PCB according to the KLE json. Perhaps not that necessary for smaller projects like this pad, but will save a lot of elbow grease when designing 40%+ keyboards. Edit: grammar
@sanketss84
@sanketss84 11 ай бұрын
thanks for sharing this will surely check it out.
@_adamws
@_adamws 10 ай бұрын
I'm the author, glad you liked it
@sergeikrivtcov9518
@sergeikrivtcov9518 10 ай бұрын
@@_adamws thank you for this plugin! This is golden!
@sanketss84
@sanketss84 10 ай бұрын
@@_adamws thank you for this.
@oaledo
@oaledo 10 ай бұрын
This is awesome work. I'm a complete novice to this field and was still able to follow along. Great job keeping it concise while still covering just about everything one could need to know. Now to figure out how to wire in some rotary encoders, can't be tooo complicated...
@alexmiller7879
@alexmiller7879 11 ай бұрын
I wish this existed when I first started designing keyboards. This is extremely straight forward. I learned everything the hard way. Trail by fire.
@YoutubeBorkedMyOldHandle_why
@YoutubeBorkedMyOldHandle_why 8 ай бұрын
Thank you for sharing. I recently built a full keyboard for a project, which I designed with KiCad7. Might I suggest a couple of enhancements to your design? 1. You are connecting the rows and columns directly to your microcontroller. For a 3x3 grid not too much of a problem, but for mine there are 5 columns and 8 rows, so this could start eating up the GPIOs, and also need a lot of connection wires. I've used 1 74hc164 and 2 74hc165 shift registers. The 164 is used to one-at-a-time pull the (logic low) columns low, and the 165s are used to collect the button press data, serialize it, and send it back to the microcontroller. 2. In your design, the microcontroller needs to constantly monitor the state of the pins. I've used a 'trigger' pin which works like this: I've added 8 diodes, cathodes connected to each of the rows, anodes tied together and pulled high, which is effectively a cheap 8 input OR gate. The anode of the diodes is the trigger pin, which will go low if 'any' of the buttons are pressed and high if 'all' are released. This signal is used for 2 external interrupts on the microcontroller, one which fires on a falling edge, and the other on a rising edge. So, when a falling edge is detected an interrupt is triggered, which causes the microcontroller to send 5 bytes to the 164 in rapid succession with a short delay between them, causing one of the 5 columns to be pulled low for each. IFF the 'pressed' key is sitting on one of these columns, then the signal will be passed through to the corresponding row and is captured by the 165. The 165 is read after a short delay for each byte. The short delay allows for the detection of 'multi button' presses. I have 6 data wires plus VCC and GND, and the microcontroller need not constantly monitor the keyboard. The rising edge signals that the key(s) is(are) released, whereupon the microcontroller continues to monitor for 'double', 'triple' key presses etc.
@gillsejusbates6938
@gillsejusbates6938 6 ай бұрын
1) Just use a bigger microcontroller, or duplex your matrix. 2) its not like constant matrix scanning puts any strain on the chip or slows down registration, since USB polling is at 1000hz. This also requires custom QMK matrix scanning and debouncing. I think a better way to put your suggestions are complications, not enhancements, especially for a beginners tutorial.
@YoutubeBorkedMyOldHandle_why
@YoutubeBorkedMyOldHandle_why 6 ай бұрын
@@gillsejusbates6938 1. I'm kind of a minimalist ... I mean why use a $5 uController when a $0.50 one will do just fine? I don't know what you mean by "duplex (my) matrix." As mentioned in my comment, my keyboard has 5 columns and 8 rows 'multiplexed' with one 74hc165 for the rows and one for the columns. 2. So, what I've achieved is a keyboard which allows both 'single/double/triple/quadruple' presses (where 1 or more keys are repeatedly pressed) and also 'multi-key' presses (where more than one key is pressed simultaneously), and/or a combination of these. This happens with frames as follows: - A frame is from the first detection of a rising edge (a key was pressed) until the falling edge is detected (all keys have been released.) - Any key press starts the frame which causes a timer to kick in and wait for a 'human' amount of time. - Typically, for 'multi-key' presses, the difference between 1 key being pressed and another will be ~10 to 20 ms. But a 'single/double/triple/quadruple' press (i.e. the amount of time the button is actually held down), will typically be 200+ ms. So, at ~80 to 100 ms I'm pretty much guaranteed to have a stable press, so I take a measurement at this point by polling with the 74hc164 (MUCH faster than 1 kHz) and reading the output of the 74hc165s. This also addresses your concern about debouncing ... which is 'unnecessary' because everything will have settled down by this point. - After measuring the keys at the 80 to 100 ms mark, I then wait for a falling edge to end the frame, and then repeat the process in case this is a 'multi-key' press, or a 'time out' of around ~300 to 500 ms ends the session. - Data is accumulated and at the end of the session, it is evaluated, and stuff is done about it. - In the meantime, the uController can wait for days or weeks if necessary, in sleep mode, consuming minimal power. I appreciate that beginners want things nice and simple ... but not everyone is a beginner. Some of us want things to actually happen.
@katpuz01
@katpuz01 5 ай бұрын
Thank you for sharing your Kicad Libairy. It was a massive help in designing my first PCB
@jenniehan5871
@jenniehan5871 10 ай бұрын
I have been trying to design my own PCB for a 2key macro pad and this is exactly what I was looking for! Thank you, I found it so much easier to follow than all the other tutorials out there.
@joe_scotto
@joe_scotto 10 ай бұрын
Glad I could help!
@astjuly8239
@astjuly8239 2 ай бұрын
I have no words... This is just amazing and simple! Thank you so much!!!!
@sergeikrivtcov9518
@sergeikrivtcov9518 11 ай бұрын
Excellent and informative video as always, Joe! Very well done. I am looking forward to electrostatic capacitive keyboard PCB design video 😅
@ultrahalf
@ultrahalf 11 ай бұрын
Honestly THANK YOU 🙏
@alexandrecosta2567
@alexandrecosta2567 8 ай бұрын
This is such a niche video but at the same time so unbelievably targeted to me. I cannot thank you enough for your effort!
@joe_scotto
@joe_scotto 8 ай бұрын
You’re welcome, glad I could help!
@iwantpig
@iwantpig 9 ай бұрын
Much easier than i was anticipating. Of course thanks to your provided libraries and helpful tips. Probably something ill try out in the future.
@5t4n5
@5t4n5 8 ай бұрын
Thank you, Joe. A lot of coffee and not much sleep and i made a little test piece that i just sent off to be made to see i got it all right. I've never done anything like this before, so thank you lots and lots for taking the time to put all this together. This completely PCB/custom-keeb newb really appreciates all you do on this channel. 😀
@sonicase
@sonicase 11 ай бұрын
nice,... i like how it's a short but concise video and easy to follow. I've been meaning to do this for quite a while, maybe i'll give it another shot now.
@Back-Air
@Back-Air 9 ай бұрын
Thanks for the really cool tutorial! I just Handwired my first keyboard not too long ago and thought that I had to try to do one with a PCB instead, and this really helped. Now I just need to find kicad files for rotary encoders
@throughtheglasseye6678
@throughtheglasseye6678 11 ай бұрын
quality series of videos! i am tuned in and look forward to seeing another part.
@brdevll
@brdevll 6 ай бұрын
I was struggling so much trying to add footprints to ergogen that I ended up ordering an existing pcb design (corne to be specific), but you basically demystified kicad for me. If I had watched this video before I think I would stick to making my own design. Well, next time for sure!
@sameesyed6507
@sameesyed6507 5 ай бұрын
Amazing video for a mech eng learning trying to learn pcb design, whens the next video coming?
@tylergubala7355
@tylergubala7355 5 ай бұрын
They seemed to have changed it in version 8 where s is no longer the grid origin hotkey for the PCB editor. Instead you have to go Toolbar -> Place -> Grid Origin
@joe_scotto
@joe_scotto 4 ай бұрын
They did along with changing other hotkeys but luckily you can remap them in the settings. Version 8 also has a bunch of other issues and I've been telling people to avoid it for now until they're fixed.
@crossscar-dev
@crossscar-dev Ай бұрын
@@joe_scotto please pin this comment
@charllouw3208
@charllouw3208 2 ай бұрын
I followed the setup exactly but when I press A to open symbol library all of the Placeholder symbols are missing, only Placeholder _TRRS is there, anyone have an idea how to fix this?
@joe_scotto
@joe_scotto 2 ай бұрын
Don’t use the search function, manually scroll to the library. Kicad broke search in the recent updates.
@endriuk02
@endriuk02 4 ай бұрын
This video is awesome, it gave me all I needed to design my first pcb, thanks man!
@MrEdwardSP
@MrEdwardSP 11 ай бұрын
This is super concise and well structured tutorial, thank you so much for your time spent on making this video!!!
@pudgey952
@pudgey952 6 ай бұрын
Very high quality video. Seeing you explain it is empowering. Thank you very much!
@vladventura1928
@vladventura1928 6 ай бұрын
Loved the tutorial, I had no idea on how to use KiCAD
@sanketss84
@sanketss84 11 ай бұрын
another way to save costs is by panelize the pcb especially for smaller pcbs and you could also build reversible pcbs if its a split keyboard.
@bencunningham-walker493
@bencunningham-walker493 8 ай бұрын
This is an amazing tutorial, so clear and such great quality
@lophixarts
@lophixarts 7 ай бұрын
How to include a volume knob? Or even a mini display?
@raidboy7858
@raidboy7858 11 ай бұрын
thank you so much I really love your videos
@joe_scotto
@joe_scotto 11 ай бұрын
I’m glad you enjoy them :)
@marty_m211
@marty_m211 5 ай бұрын
I am almost finished doing my first pcb keyboard board and when i try to finish it with the plugin it says this: 'FOOTPRINT; object has no attribute 'HasProperty'. Can anybody help me fix it?
@joe_scotto
@joe_scotto 5 ай бұрын
This is caused by Kicad 8 and the author of the export plugin has fixed it but it's not implemented into the official plugin manager yet, that said you can do the following to fix the error: 1. Download this (V4.0.0 of the plugin): github.com/bennymeg/JLC-Plugin-for-KiCad/releases/download/4.0.0/JLC-Plugin-for-KiCad-4.0.0.zip 2. Open Kicad -> Plugin and Content Manager -> Installed -> Uninstall Fabrication Toolkit (If you installed it before) 3. Install from File -> Install the ZIP you downloaded 4. Should be fixed, try exporting again.
@ruairihair
@ruairihair 11 ай бұрын
Noah Kiser did a tkl build that's worth checking out
@ajoo0h
@ajoo0h 11 ай бұрын
Thank you for sharing this! Fantastic job and hope to learn more!
@joostul
@joostul 11 ай бұрын
Best video ever! Makes me really excited to design my own keyboard, thank you so much!
@joe_scotto
@joe_scotto 11 ай бұрын
Glad it was helpful!
@FringanSthlm
@FringanSthlm 4 ай бұрын
Really great guide! I've been able to design a custom keyboard for the first time. Only thing missing is when a manufacturer is asking for a BOM (which I have) and a CPL file (Pick&Place File); I have no idea what the CPL file is but I'm sure google will help :)
@codexrat
@codexrat 10 ай бұрын
Great Video Scott. Always appreciated your detailed videos. You have really helped me on the software side of things i.e. setting up vial for custom boards. And Now that you have delved into the cad side of things i am quite thrilled tbh. Would love to see an onboard chip design guide for atmega32u4 with type-C port integration. I know its very handy to have a swappable pro micro but an onboard mcu is quite professional as well 😊 Keep up the good work. Cheers.
@riccardoiacob4560
@riccardoiacob4560 5 ай бұрын
You could also use the draw bus tool instead of the labels
@numtostr
@numtostr 11 ай бұрын
I think that (s) in "Select item(s)" is just a parenthetical plural verb. BTW great video as always. Next video idea: Adding RGB matrix to a PCB.
@joe_scotto
@joe_scotto 11 ай бұрын
Maybe, but it would not make sense since all the other tools have the same thing… Wire tool (W), Add Tracks (X)
@nbredia
@nbredia 4 ай бұрын
For grid sizes, is it by switch size or keycap size? I was planning on using Work Louder caps on a macropad, which are choc with MX spacing.
@tylergubala7355
@tylergubala7355 5 ай бұрын
This is great, thank you. Any chance you will be putting the KB2040 into the Scottokeebs libraries?
@pcarmonac
@pcarmonac 2 ай бұрын
Thank you very much for what your video contributes, but I am still pending the process of ordering the PCB, since I like the idea of ​​designing and modifying, for example the Corne V3 and making a personalized version, but I am stopped when putting the order. I searched on the Internet and I have not been able to find the ideal one, for example, the thickness of the PCB, the amount of grams of copper (you explained the ideal termination for those of us who use a common soldering iron) and countless other options that JLC ​​or PCB gives you at time to order. Thanks again for your content
@joe_scotto
@joe_scotto 2 ай бұрын
1.6mm for the PCB thickness and the lowest copper grams will be fine for most boards.
@pcarmonac
@pcarmonac 2 ай бұрын
@@joe_scotto I ask because I recently bought a Corne v3 kit to assemble and I made the orientation error when I soldered one of the LEDs, and when I desoldered the pad/track came out. Why does that occur? little grammage of copper? too 'cheap' termination of the pcb? Greetings
@joe_scotto
@joe_scotto 2 ай бұрын
@@pcarmonac most likely poor soldering technique. If you use too much heat or apply it for too long, you can damage the pads.
@scotts-tech
@scotts-tech 6 ай бұрын
Does anyone know of a video like this but for backlit mechanical keyboards? They make "rgb" switches. They make backlight compatible keycaps. It should be possible to make one. Would be nice to see if someone else has figured out all the details on building one of those. It seems like the led would go under the key switch. On a g910 keyboard, the leds are directly under each switch and the metal sheet that the switches snap into is raised up just far enough for there to be room under each switch for an led. Individually addressable led lights seem to be too hard to get in quantity (your only choice is to desolder them from light strips and they aren't even on mouser) but I just want to find a way to home build a solid color backlit mechanical keyboard.
@crossscar-dev
@crossscar-dev Ай бұрын
a fill zone is only really needed for something like a ground plain
@alexbalanovsky4708
@alexbalanovsky4708 11 ай бұрын
Great video and important tips. Thanks
@crossscar-dev
@crossscar-dev Ай бұрын
I can't select the pin as a reference for move with reference diodes
@Thanh-mb3ke
@Thanh-mb3ke Ай бұрын
Hello, I have some problems need some advice form you. My plan is build a Keyboard with 30cols x 6 rows, so if i get 3 Arduino Pro Micro to control 3 parts of keyboard as Master and slaves model, does it has input delay problem things. I'm just a newbee in this major. Hope to see some advice from you. Thank you.
@joe_scotto
@joe_scotto Ай бұрын
You could connect two together but not 3. I would recommend looking into RP2040.
@tommythe0g
@tommythe0g 9 күн бұрын
Can someone explain to me why there isn't GND, please?
@ulfurfemogfyrre8078
@ulfurfemogfyrre8078 Ай бұрын
great video, thanks! it seems like the 3d models for the diodes and switches are missing, though :/
@joe_scotto
@joe_scotto Ай бұрын
That's Kicad 8 being dumb. Don't search for them when trying to add, manually scroll to the ScottoKeebs library and expand it.
@AmazingSpanoMan
@AmazingSpanoMan 6 ай бұрын
I'm following this guide and so far so good except for some reason the 3d files aren't rendering in the 3d model
@AmazingSpanoMan
@AmazingSpanoMan 6 ай бұрын
Never mind. Apparently had to relink all the 3d model locations manually in the footprint properties.
@ahmedmamdouh523
@ahmedmamdouh523 8 ай бұрын
Hi joe, choc V1 not previewed in 3d preview. Could you check.
@zc-maximus
@zc-maximus 4 ай бұрын
for me the footprints do not appear is it common problem or not
@semputs
@semputs 11 ай бұрын
Thanks for this vid. Your other vids on OLED and handwiring helped me build my own keeb from scratch (made a few vids on those). Your vids are always just nice to watch and very engaging. Do you think you'll make a PCB design video for your ergo scotto keebs? I'm just wondering how you'd make the screw holes, aligning rotated switches and making the casing and how the design from Kicad would be used in fusion360, or just use Kicad 100% for the case design, etc.
@joe_scotto
@joe_scotto 11 ай бұрын
Glad you enjoy them! I don't think I'll make a video talking about my ergo boards as PCBs but I might do one using a tool that converts a KLE to Kicad that many have suggested. I'm currently working on a second PCB video that will go over some more advanced things, specifically for direct wiring but will include mounting holes in there to give people an idea.
@lpanebr
@lpanebr 6 ай бұрын
Amazing content. Thank you so much!
@gunjja13
@gunjja13 11 ай бұрын
Thank you so so much Joe 🙏🙏
@CreamyCheese_
@CreamyCheese_ 7 ай бұрын
Hey Joe! Just had a few questions: I downloaded the GitHub but the files inside it are completely different! So, I used OctoPart to download the first result for "Mx Switch" It worked great and I completed ergogen and schematic with 0 electrical rules check violations. In PCB Editor, I get the layout down and everything wired up.. Then it says the switches aren't connected. So I checked the schematic and my best guess is that the Green Dots on the wires (junctions) are ruining the connections? Thanks for any help!!
@madhunugg
@madhunugg 4 ай бұрын
Instead of using a calculator, you can actually do the fourth or eighth grid settings in the kicad dialog box directly.
@Abu-Ubayda
@Abu-Ubayda 11 ай бұрын
Thank you! i was waiting for your giude.
@owen-nd9eb
@owen-nd9eb 6 ай бұрын
Whenever using the Arduino, when running the design rule checker I always get 50-ish errors consisting of "Silkscreen clipped by board edge" and "Silkscreen clipped by solder mask". I looked it up and some sources said that it should still be fine im still uneasy about it. Thoughts?
@joe_scotto
@joe_scotto 6 ай бұрын
You can ignore those
@josed2828
@josed2828 5 ай бұрын
I loved the video I learned a lot really thanks you
@Poide_Leather
@Poide_Leather 8 ай бұрын
Thx for amazing tutorial I followed your video But i can't see the component in3d viwer TT Only thing i can see is pcb with holes can you help? 12:29
@thewolfsshadow6702
@thewolfsshadow6702 4 ай бұрын
what do you do when your microcontroller doesn't have enough pins for all your columns and rows?
@joe_scotto
@joe_scotto 4 ай бұрын
I pick a different controller but a Raspberry Pi Pico for example should have more than enough pins for most designs. There are also more advanced matrix designs such as the Japanese Duplex but I haven't tried it before.
@anaplayz9534
@anaplayz9534 9 ай бұрын
I'm really looking forward to the firmware part as that's what I'm the most uncertain about. I'm building a custom keypad for gaming and trying to figure out what microcontroller I should use so hopefully you will touch on that as well on that video.
@therick0996
@therick0996 11 ай бұрын
i don't think there is a hotkey for select. when it say item(s) i think it's saying you can select plural. note the rest of the hotkeys are noted with a space and then a capital letter in parenthesis
@theresaapocalypse5893
@theresaapocalypse5893 8 ай бұрын
Would you mind if I were to borrow some assets from the library for some future program development?
@alexmelillo1247
@alexmelillo1247 11 ай бұрын
Tremendously helpful!
@kyu_273
@kyu_273 7 ай бұрын
Thanks for the guide! It's really helpful. I was wondering, what if I run out of pins on the board in the schematic?
@joe_scotto
@joe_scotto 7 ай бұрын
You’ll need to use a different controller then. Basically your controller needs to have enough pins to support your matrix.
@trashtbyghosts
@trashtbyghosts 6 күн бұрын
bro ur a pcb rockstar
@Bianchi77
@Bianchi77 11 ай бұрын
Nice video, thanks for sharing, well done :)
@malikilam
@malikilam 10 ай бұрын
I downloaded your Symbol library, but the placeholder switch is not rotated to 45 degrees like in your video. That rotation makes it a lot cleaner to use in the schematic. Though I've searched google far and wide I can't seem to find how to rotate a symbol at 45 degrees, only increments of 90 degrees. (I have found how to do it in older versions of Kicad but not the latest version.) Can anyone point me in the right direction?
@Graham_Wideman
@Graham_Wideman 6 ай бұрын
searcg google for "kicad rotate symbol 45 degrees" -- there are several ways to do it.
@Zybird
@Zybird 5 күн бұрын
What is the differences between the plate and non plate I'm new to this stuff
@joe_scotto
@joe_scotto 2 күн бұрын
The plated ones have copper so both the hotswap pad and hole connect making it easier to route the traces. The non plated just have copper on the pad but not the hole.
@RennanMendesSerenzaRennan
@RennanMendesSerenzaRennan 4 ай бұрын
How are RGB LEDs connected to a printed circuit board?
@lpanebr
@lpanebr 6 ай бұрын
I just discovered that in the user grid you can just type 18/4 and it will do the math for you!
@aaronstone628
@aaronstone628 7 ай бұрын
How did you get your color scheme like that? Those are awesome colors
@vzx
@vzx 11 ай бұрын
7:16 When we have the keyboard larger than 3x3, how do we wire to the pin? Is there any specific reasons the traces to be put on those specific pins?
@joe_scotto
@joe_scotto 11 ай бұрын
That’s one of those things you need to decide based on your design and controller choice. You need enough pins on your controller for each column and row, so 6 for a 3x3 matrix (3 columns and 3 rows). The traces then need to be ran to where you defined them in your schematic but you can choose which pins as long as they’re GPIO.
@manouchehrmail
@manouchehrmail 5 ай бұрын
Thanks for the effort but it seems the symbols are not compatible with KiCAD 7 and 8. The error massage is this: "Expecting '(' in ....ScottoKeebs_sym', line 7, offset 1." I opened this file and compared it with a standard symbol files from KiCAD and I noticed your file is in a totally different format that those standard ones. So I can't import your libraries. Am I doing something wrong? Thanks anyway for your great job and sharing it.
@joe_scotto
@joe_scotto 5 ай бұрын
I’m not sure what’s going wrong but I and others are using them in both Kicad 7 and 8. I would recommend joining my Discord and seeing if anyone there knows: scottokeebs.com/discord
@manouchehrmail
@manouchehrmail 5 ай бұрын
@@joe_scotto I tried but I can't manage to create an account on Discord. Your Sym file is in HTML but standard ones are not. I expect KiCAD to do required conversions but it fails. By the way, I just installed KiCAD. Shall I do anything else before importing your library?
@joe_scotto
@joe_scotto 5 ай бұрын
@manouchehrmail Oh, you’re downloading the files wrong. Go to the link below, click the green “Code” button, and download it as a ZIP. Then find the ScottoKicad folder and use that. scottokeebs.com/github
@manouchehrmail
@manouchehrmail 5 ай бұрын
@@joe_scotto Thank you so much. Now it works :)
@jjang_won
@jjang_won 11 ай бұрын
Thank you for the video. I want you to make a video about KMK firmware.
@beyondwaveforms3059
@beyondwaveforms3059 4 ай бұрын
what if we use shift register to make the keyboard truly nkey?
@BlueOctopusDev
@BlueOctopusDev 8 ай бұрын
i love this video, it's my dream to live doing this
@aaulia
@aaulia 11 ай бұрын
Thank you, this is awesome.
@whereIsJerome
@whereIsJerome 11 ай бұрын
This is a fantastic video, it's clear you put a lot of work and effort into it and for that, many thanks. Learned how to properly place elements in the PCB editor (finally!). I cloned your repo for the footprints and 3d models and have a quick question: how do you get to preview the mx switches in the 3d preview? I selected the same footprint as you did in the video and when I toggle the throughhole components on and off, nothing shows. Are those something extra? Quick note, not sure if you're aware, but you can do basic math inside KiCad, like 9 / 4 in the custom grid layout dialog box instead of using spotlight and copy pasting solutions.
@joe_scotto
@joe_scotto 11 ай бұрын
Glad it's helpful! It sounds to me like your path isn't configured properly. You need to make sure that the "SCOTTOKEEBS_KICAD" path is set to the root folder where "ScottoKicad" is. If that's not configured properly, the library won't know where to look. It's also possible the footprint you chose doesn't have them but it sounds like you're using the same as me. Specifically, hotswap only has the SMD sockets and not the switches.
@crysoscrysos809
@crysoscrysos809 6 күн бұрын
some of the symbols arent showing up for me what should i do
@joe_scotto
@joe_scotto 5 күн бұрын
Don’t use search, scroll to the library instead. It’s a Kicad bug.
@vzx
@vzx 11 ай бұрын
13:26 How do you rotate the D9 with finer angle step?
@ismailsalih1299
@ismailsalih1299 10 ай бұрын
Can you plz make a kmk tutorial for creating custom firmware
@randallnorwood6803
@randallnorwood6803 10 ай бұрын
i cant get past the symbols step. i check that it went in but it's empty in the next step. im just plain stuck
@lpanebr
@lpanebr 6 ай бұрын
Does a 3x3 component need diodes?
@Amir-zi1hj
@Amir-zi1hj 8 ай бұрын
Hi, how did you flip the PCB for right side in kicad?
@Dave-gj7ss
@Dave-gj7ss 5 ай бұрын
Thank you so much dude
@joe_scotto
@joe_scotto 5 ай бұрын
No problem 🙂
Simple STM32 Mechanical Keyboard PCB Design in Kicad
30:08
Joe Scotto
Рет қаралды 7 М.
How to Design Mechanical Keyboard Plates and Cases
11:16
Joe Scotto
Рет қаралды 57 М.
SPILLED CHOCKY MILK PRANK ON BROTHER 😂 #shorts
00:12
Savage Vlogs
Рет қаралды 42 МЛН
How I Did The SELF BENDING Spoon 😱🥄 #shorts
00:19
Wian
Рет қаралды 33 МЛН
艾莎撒娇得到王子的原谅#艾莎
00:24
在逃的公主
Рет қаралды 39 МЛН
The fastest way to make crisp PCBs at home!
10:56
Made with Layers (Thomas Sanladerer)
Рет қаралды 880 М.
Master New KiCad 7 In Under 2 Hours | #PCBCUPID
2:01:32
Pcb Cupid
Рет қаралды 43 М.
Creating a Keyboard PCB with Diodes (Kicad 6.0)
46:31
Noah Kiser
Рет қаралды 44 М.
I 3D Printed a Custom Keyboard... (So you don't have to)
12:57
Hipyo Tech
Рет қаралды 243 М.
My favorite ergo split keyboard ˢᵒ ᶠᵃʳ
13:35
EIGA
Рет қаралды 38 М.
"Absolute Magic!" - Building a Keyboard Using HOT AIR SOLDERING
13:51
How a Mechanical Keyboard Works (Matrix and Direct Wiring)
3:14
Making a mechanical keyboard case from scratch
15:10
kevin
Рет қаралды 21 М.
SPILLED CHOCKY MILK PRANK ON BROTHER 😂 #shorts
00:12
Savage Vlogs
Рет қаралды 42 МЛН