Hey Noah! This has been immensely helpful. This is so good to help me make a custom TKL keyboard. I am eagerly waiting for Part 3 so that I can send an order to JLCPCB to get this done and start using my "own" keyboard. Thanks again!
For those following along: at 15:45 when Noah brings in the new capacitors to the PCB editor, he flips them to the back of the board. He doesn't mention it explicitly, so it is easy to miss. P.S. Thank you Noah for sharing this awesome tutorial. It has been very educational!!
Thanks, Noah. Good talk. Practicing engineers in other fields will love your running commentary on the why's---not just the what and how, which were also great---of what you're doing.
Your series has helped me a lot. I have learned so much about keyboard design and KiCad 7 due to your videos and instructions. I am looking forward to part 3 of the RP2040 series.
These videos are great, super easy to follow along with and tailor for exactly what I've been wanting to do for months! So excited for part 3! I am hoping to adapt this to introduce some LED lights and possibly a knob for volume control!
I'm in the process of figuring out just that. For what I could research qmk uses ec11 rotaries, whose symbols and footprints are readily available in kicad. My project uses a mouse wheel style rotary that is compatible electrically with ec11 but the symbol in kicad doesn't match. For RGB is simple enough to add enough ws2812 for each key. That only consumes 1 pin on the MCU. What I'm interested in is working with an io expander which would bring a lot to this series
57:02 "connecting the diodes using the netclass width which is 0.25mm". Well, in this video, before this time stop you are connecting diode to thruhole using default netclass size of 0.2mm, because when you start the track from the diode pad, the default becomes 0.2mm. But other times near this point you start the track from the thruhole which gives a default netclass size of 0.25mm which is what you intended I think. That bit confused me. So if you want the 0.25mm size, you must start from the hole when set to "use netclass width" to get the 0.25mm. If you go the other direction from diode, the netclass width for that track will be using the 0.2mm size.
Is there any chance for the last part or has it been thrown out of the window, really enjoyed the walk through! so it would be great to have the last part.
Question: Do you know of a plugin similar to KiCAD KLE Placer which also has provision for placing RGB LEDs in addition to the MX switches and Diodes? Also, thanks Noah, for these most excellent 2 videos of yours. I am working through to make a custom PCB to replace my included EK68 pcb for which I do not have source code for QMK etc and it is way too limiting with only 1 FN layer at 65%.
Quick question in case i can maybe give back a little for your great tutorials: Is there a reason you do not use the click & drag move on traces to reroute them? Or the shortgut to move components while keeping their connections?
2 questions. 1st: where is part 3? Idk like to see where this goes. Also, how digitally would it be to add an led (non rgb, only white backlight) to this?
Now that I'm thinking about it. What I'm asking for is "dumb" backlighting. Meaning no programming led controllers into the firmware. What I'm suggesting is simply adding a standard switch which turns the lights on and off. Would it be possible to simply create an LED matrix that is powered off of the existing 3v3 rail? If so would I need to add resistors to each LED? Sorry about the multi answer question here. I don't like RGB but I love having backlighting.
@@matthewfogelson9665 I was also wondering how possible some non addressable non RGB LED lighting would be. I am currently looking into this using reverse mount LEDs as I am not sure how much clearance there is between board and switch as this will be my first keyboard PCB design. Have you made any progress on adding LEDs to this design?
It's a different use case to use a development board, but it is a lot easier to do. I have made a video on designing a PCB using a dev board: ruclips.net/video/iznKltVU1yw/видео.html
Do you know of any good guides on creating a Bluetooth Keyboard? I’m looking at creating a board that can use either Bluetooth(Using a rechargeable battery) or USB C. Might have to create a usb dongle to reduce Bluetooth latency
I do plan on making a video about ZMK keyboard design, which can be bluetooth wireless or wired. There are bluetooth-compatible pro-micro dev boards like the nice!nano that you can design a board around as well, just like any pro-micro board (like my previous videos)
Hey Noah thank you so much for making this video! also, how does the daughterboard get implemented in this design? is the onboard USB-C footprint no longer necessary?
I have recently started using this guide and I had just realized when I view the pcb in the 3d viewer, everything is backwards. The key that is supposed to be on the right is now on the left, and looking at your previous video it seems to be the same case.
First of all, great video! Then a question, how important is the value of the decopulling capacitors? i was placing them and didnt really know which value to use for a certain pin. Or is this not relevant for this?
For the voltage regulators (the 3.3v external reg and the rp2040's built-in 1.1v reg), they need 1u caps on the input and output pins. The rest of the pins use 100nF, with a bulk 10u cap upstream from it all.
very nice video! one question though, for the pcb im making along with these videos, i plan to exclusively use it with a unified daughterboard, so with removing the c port from the board would it also be fine to remove the fuse and esd chip? thanks!
I don't recommend using atmega for new designs, but if you are curious, Masterzen has written a good guide for designing an atmega PCB: www.masterzen.fr/2020/05/03/designing-a-keyboard-part-1/ You can also find the ai03 guide, but it is a bit outdated: wiki.ai03.com/books/pcb-design/chapter/pcb-designer-guide
@@niqu9814 It is the most common, but it not the cheapest or most capable. The RP2040 is half the price, and has orders of magnitude more RAM, Flash ROM, and effective clock speed. With more and more features coming to keyboard firmware in the way of VIA and Vial, the 32u4 simply cannot fit those features in RAM or ROM. Even before the RP2040 was released, more feature-rich keyboards used STM32 processors instead of the 32u4 for those same reasons. The RP2040 can also run ZMK, KMK, QMK, and a lot of other keyboard firmwares, more so than the 32u4. It comes in at a fraction of the cost of the 32u4 or STM chips, while also being considerably more available (not suffering from recent supply chain issues).
TLDR: There is not a reason to use the 32u4 in new designs. The supply issues, higher price, and less capabilities are all remedied by switching to the RP2040 or other ARM platforms like STM.
Would you be able to explain quickly how the process changes with a “per key led” and rotary encoders? If not, could I give you my email? I’ll compensate 👌🏽👍🏽
Per-key LEDs require additional circuitry depending on how you set up the LEDs. They could be a simple addressable chain, or a matrix of LEDs powered by a LED controller ICs. An encoder is more simple. The switch pins of the encoder go into the switch matrix just like an MX switch, the common pin goes to GND, and the A and B pins go to their own GPIOs on the MCU.
This series has been massively helpful designing a pcb for a different layout. Hope part 3 comes out soon.
Hey Noah! This has been immensely helpful. This is so good to help me make a custom TKL keyboard. I am eagerly waiting for Part 3 so that I can send an order to JLCPCB to get this done and start using my "own" keyboard. Thanks again!
For those following along: at 15:45 when Noah brings in the new capacitors to the PCB editor, he flips them to the back of the board. He doesn't mention it explicitly, so it is easy to miss.
P.S. Thank you Noah for sharing this awesome tutorial. It has been very educational!!
This is gold! Watched it 2 times and learned a lot. Would really enjoy a part 3. Maybe even with jlcpcb parts assembly? Thank you!
Thanks, Noah. Good talk. Practicing engineers in other fields will love your running commentary on the why's---not just the what and how, which were also great---of what you're doing.
Well I made it to the end only to realize that part 3 is not here yet... hope it comes out at some point
Your series has helped me a lot. I have learned so much about keyboard design and KiCad 7 due to your videos and instructions. I am looking forward to part 3 of the RP2040 series.
These videos are great, super easy to follow along with and tailor for exactly what I've been wanting to do for months! So excited for part 3!
I am hoping to adapt this to introduce some LED lights and possibly a knob for volume control!
I'm in the process of figuring out just that. For what I could research qmk uses ec11 rotaries, whose symbols and footprints are readily available in kicad. My project uses a mouse wheel style rotary that is compatible electrically with ec11 but the symbol in kicad doesn't match.
For RGB is simple enough to add enough ws2812 for each key. That only consumes 1 pin on the MCU.
What I'm interested in is working with an io expander which would bring a lot to this series
This tutorial is detailed and well-explained.👍
Amazing tutorial! as a beginner I learned many things in this series can’t wait for part 3
Thanks so much for making these!
Absolutely!
Thanks for this series. Invaluable stuff right here. Looking forward to part 3.
Super informative and well presented, hope you'll continue this series!
57:02 "connecting the diodes using the netclass width which is 0.25mm". Well, in this video, before this time stop you are connecting diode to thruhole using default netclass size of 0.2mm, because when you start the track from the diode pad, the default becomes 0.2mm. But other times near this point you start the track from the thruhole which gives a default netclass size of 0.25mm which is what you intended I think. That bit confused me. So if you want the 0.25mm size, you must start from the hole when set to "use netclass width" to get the 0.25mm. If you go the other direction from diode, the netclass width for that track will be using the 0.2mm size.
Love the videos, Is part 3 coming anytime soon?
Is there any chance for the last part or has it been thrown out of the window, really enjoyed the walk through! so it would be great to have the last part.
Question: Do you know of a plugin similar to KiCAD KLE Placer which also has provision for placing RGB LEDs in addition to the MX switches and Diodes?
Also, thanks Noah, for these most excellent 2 videos of yours. I am working through to make a custom PCB to replace my included EK68 pcb for which I do not have source code for QMK etc and it is way too limiting with only 1 FN layer at 65%.
great series, it has helped me A LOT! any change of part 3 coming anytime in the near future ?
Amazing work, thank you very much for sharing! Looking forward to the next video:)
Great video, is there a part 3 coming anytime soon?
I would highly recommend the grounding video by rick Hartley, it will change your life.
Quick question in case i can maybe give back a little for your great tutorials: Is there a reason you do not use the click & drag move on traces to reroute them? Or the shortgut to move components while keeping their connections?
2 questions. 1st: where is part 3? Idk like to see where this goes. Also, how digitally would it be to add an led (non rgb, only white backlight) to this?
Now that I'm thinking about it. What I'm asking for is "dumb" backlighting. Meaning no programming led controllers into the firmware. What I'm suggesting is simply adding a standard switch which turns the lights on and off. Would it be possible to simply create an LED matrix that is powered off of the existing 3v3 rail? If so would I need to add resistors to each LED? Sorry about the multi answer question here. I don't like RGB but I love having backlighting.
@@matthewfogelson9665 I was also wondering how possible some non addressable non RGB LED lighting would be. I am currently looking into this using reverse mount LEDs as I am not sure how much clearance there is between board and switch as this will be my first keyboard PCB design.
Have you made any progress on adding LEDs to this design?
Best series
Why are you implementing both a jst and usb-c connector?
Would it be better to just use a development board and solder it on after or to integrate it into the board like you did in this video?
It's a different use case to use a development board, but it is a lot easier to do. I have made a video on designing a PCB using a dev board: ruclips.net/video/iznKltVU1yw/видео.html
Part 3 when?
Part 3 plz 😊
Do you know of any good guides on creating a Bluetooth Keyboard? I’m looking at creating a board that can use either Bluetooth(Using a rechargeable battery) or USB C. Might have to create a usb dongle to reduce Bluetooth latency
Or do you plan on making one soon?
I do plan on making a video about ZMK keyboard design, which can be bluetooth wireless or wired. There are bluetooth-compatible pro-micro dev boards like the nice!nano that you can design a board around as well, just like any pro-micro board (like my previous videos)
Hey Noah thank you so much for making this video! also, how does the daughterboard get implemented in this design? is the onboard USB-C footprint no longer necessary?
It's weird that he runs the pins in parallel, I want to see where that leads to
I have recently started using this guide and I had just realized when I view the pcb in the 3d viewer, everything is backwards. The key that is supposed to be on the right is now on the left, and looking at your previous video it seems to be the same case.
He flipped all the switches with f to get the HS components in the back
@@derchesten no, the footprint itself is backwards. Flipping it still results in it being backwards.
First of all, great video! Then a question, how important is the value of the decopulling capacitors? i was placing them and didnt really know which value to use for a certain pin. Or is this not relevant for this?
For the voltage regulators (the 3.3v external reg and the rp2040's built-in 1.1v reg), they need 1u caps on the input and output pins. The rest of the pins use 100nF, with a bulk 10u cap upstream from it all.
i dont plan on having a usb c port on my pcb. is it ok to just delete that part without issues?
very nice video! one question though, for the pcb im making along with these videos, i plan to exclusively use it with a unified daughterboard, so with removing the c port from the board would it also be fine to remove the fuse and esd chip? thanks!
Yes, you are correct! If using the unified daughterboard, you do not need the fuse or ESD chip.
@@noahkiser thank you! this is my first time working with anything electrical, so i just want to make sure!
@@noahkiserplz I need 3 part. Your tutorial is best. I want to create keyboard for my wife birthday)
Is there a follow up video?
There will be in a few weeks
@@noahkiser awesome! Looking forward to it. Thanks for the reply
Soon?)
@@noahkiser
These videos are so helpful maybe you can make a video how to make atmega work and setup QMK with it
I don't recommend using atmega for new designs, but if you are curious, Masterzen has written a good guide for designing an atmega PCB: www.masterzen.fr/2020/05/03/designing-a-keyboard-part-1/
You can also find the ai03 guide, but it is a bit outdated: wiki.ai03.com/books/pcb-design/chapter/pcb-designer-guide
@@noahkiser Now you got me curious, why would you not use the atmega32u4-a? It is the most commonly used processor on custom keyboards
@@niqu9814 It is the most common, but it not the cheapest or most capable. The RP2040 is half the price, and has orders of magnitude more RAM, Flash ROM, and effective clock speed. With more and more features coming to keyboard firmware in the way of VIA and Vial, the 32u4 simply cannot fit those features in RAM or ROM.
Even before the RP2040 was released, more feature-rich keyboards used STM32 processors instead of the 32u4 for those same reasons. The RP2040 can also run ZMK, KMK, QMK, and a lot of other keyboard firmwares, more so than the 32u4. It comes in at a fraction of the cost of the 32u4 or STM chips, while also being considerably more available (not suffering from recent supply chain issues).
TLDR: There is not a reason to use the 32u4 in new designs. The supply issues, higher price, and less capabilities are all remedied by switching to the RP2040 or other ARM platforms like STM.
What happened to part 3?
I will make a part 3 within the next month
i love you
Would you be able to explain quickly how the process changes with a “per key led” and rotary encoders? If not, could I give you my email? I’ll compensate 👌🏽👍🏽
Per-key LEDs require additional circuitry depending on how you set up the LEDs. They could be a simple addressable chain, or a matrix of LEDs powered by a LED controller ICs.
An encoder is more simple. The switch pins of the encoder go into the switch matrix just like an MX switch, the common pin goes to GND, and the A and B pins go to their own GPIOs on the MCU.
PLZ PLZ PLZ PART 3
first
Part 3 when?