Showing posts with label #SVTMaker #cherryMX #mechanical #keyboard #RGB #WS2812 #EC11 #arduino #promicro. Show all posts
Showing posts with label #SVTMaker #cherryMX #mechanical #keyboard #RGB #WS2812 #EC11 #arduino #promicro. Show all posts

Friday, June 18, 2021

Per-key RGB for SVT RGB Dumbpad




For the next SVT Dumbpad iteration, I was exploring to add per-key RGB to the 4x4 keys. Here is how it all started.

While doing some research on what LED are commonly used for per-key keyboards, I found this page on Hackaday new-part-day-sk6812-mini-e introducing this new part called SK6812-mini E. This part is unique as it is a surface mounted parts but half of it goes into the PCB cut-outs.

SK6812-mini e
SK6812-mini e dimensions

The timing was perfect as this part (SK6812-mini e) was available from Lazada at a much cheaper price than previously publish at almost 67% lower. I order them and quickly cut the square holes and soldered them once they arrived.


SK6812-mini e front side

SK6812-mini e back side


Thanks for a few other open source keyboard designs, I figured out how to make the cut-out for the footprint for this special parts. As the part is soldered from the back of the PCB but the LED is front facing, I m really really afraid to screw up the pinout. I had to label them clearly ( DI and DO ).


SK6812-mini footprint

After adding the per-key LED with cut-out holes, I do not I have not enough space for the 4 LED WS2812B LED strips and had to re-position all the diodes and use actual WS2812B surface mount parts instead. I only have areas on the top and bottom part of the PCB for the WS2812B LED for the underglow LED.


SVT RGB2 3D Render

As I have NOT added so many LEDs ( 16 + 8 ) to the keyboard before, I was a little nervous about the 5V power consumptions  and add a three way solder bridge to be able to choose between underglow LED, per-key LED or both of them together. To use back the same SVT Dumbpad  firmware, I wire the four LEDs similar as the underglow so I have six parallel LEDs, four facing the top ( per-key LED ) and two facing the bottom (underglow).

The rest of the keyboard remain unchanged but I enlarged the solder pads of the diodes for easy hand soldering. Once the design was done, I usually waited a few more days just in case I think of last minute fixes or new features to add.


SVT RGB2 Dumbpad PCB



Once the PCB arrived, I quickly soldered those per-key LED first without even soldering the rest of the keyboard components. I just use mini grabbers and ran Arduino FastLED to test those LEDs to ensure all the 16 + 8 LED is working fine.


I spend so much time focusing on the SK6812 footprint I neglect the footprint for WS2812B that I have used in my previous product before. It turns out the silkscreen was flipped 180 degree but luckily the wiring was correct, so I de-soldered all the 8 WS2812B and re-solder them 180 degree flipped.

de-soldered WS2812B

SVT RGB2 Dumbpad

Testing per-key RGB LED

Picture without casing


As I also ordered some frosted acrylic, it looks really good on the new per-key RGB LED with diffused RGB lights coming out from the side and bottom.

Sunday, November 22, 2020

Building a 4x4 mechanical keyboard with RGB and rotary encoder

Introduction ( Part 1 of 4 )

While browsing the local fb mechanical keyboard group, one member was doing a group buy on an interesting qmk firmware numpad called dumbpad from imchipwood. I always wanted a programmable numeric pad and a rotary encoder for multi function use.

SVT RGB dumbpad


Fork of Dumbpad

After doing some searching and looking at the nice pictures of this numpad, I decided to make my own version by forking the dumbpad. Unfortunately, it was designed in EagleCAD, a PCB design software I used to use long ago but switched over to KiCAD for most of my recent PCB designs.

With the KiCAD import tool, I imported the entire design to Kicad and start my journey in designing this simple keyboard.
 
Here are some initial enhancements I planned add to this 4x4 keyboard :-
  • RGB backlit using WS2812B
  • SMD components for PCB Assembly ( diodes, LEDs, resistors, buttons, caps )
  • Large solder pads so it does not peal off easily

The decision for using SMD components was so that I can send the entire keyboard for a PCB assembly services where you order all your components and PCB and the factory will do everything and send you back the completed PCB with all the components fully soldered. Another reason was because, once you go surface mount devices (SMD), you will NEVER go back to Through-Hole (TH) parts.

3-pin vs 5-pin

 
As I researched further, I noticed, without a top plates, the cherry mx style switches will need a 5-pins version for stability instead of the more commonly available 3-pins switch version sold locally. Most keyboard have a plate for stability and take some of the stress from the pressing force. Read more here on why use a plate.



3D drawings

I also added 3D models in KiCAD of the Cherry-MX switch and EC11 rotary encoder for matching the holes and visualizing the dimensions.

Large solder pads

Back to the drawing board, I made more and more changes, the only thing remain the same as the original was probably the position of the switch. I also added the 2 x RGB LED Strips using WS2812 LED strips.




I edited all the footprints and made it bigger for all the soldering pads. The above is a cherry-mx + rotary combo switch.

PCB Plates

Once I made the top PCB plates, more design changes are needed :-
  • Pro Micro cannot fit between the PCB and top plates with only 5mm clearance
  • Reset buttons need to be placed at the bottom
  • Experimenting a FR4 only without copper pour and soldermask so the LED at the bottom PCB can shine through it

Had to go research on various PCB face plates design from 40percent.club and reading various post on different types of design for this.

SVT RGB Plates


I finalized with this design and added more mounting point in case I need support from the PCB to the top plates. The Pro Micro, the micro-controller used in this design was swapped to the bottom and all the pins were swapped. I had to re-route everything again.

SVT RGB bottom layer

Just had enough space for two RGB LED strips with 4 x WS2812 each in between middle and bottom row.

I also added an jumper option for the 3rd LED to choose between LED or underglow RGB.

So far, it all schematics and PCB design without knowing will the QMK software even will work with the RGB LED underglow I just added.

Once the PCB was done, I have to do those boring stuff like ordering SMD parts ( 1N4148, Arduino Pro Micro, EC11 Rotary Encoder , knobs and other parts )

I check and re-check several times and held my breath and sent both the PCBs to the Seeed Studio Fusion Services

In summary here are the enhancements I have added to the original dumbpad :-

  • Added 2 x RGB LED strips for LED underglow
  • Switched all components to SMD
  • Large solder pads for switches
  • Flipped the Pro Micro
  • PCB Plates to hold the switches
  • LED shining through PCB plates
  • Enlarge all pads for the Cherry-MX-Encoder footprints
  • A few extra M3 mounting holes


Continue in Part 2 once I received back the PCB and started coding the SVT RGB dumbpad on QMK firmware

Summary Links


LinkWithin

Related Posts Plugin for WordPress, Blogger...