 Hey what's up folks, in this video we're CNC milling some keycaps. These DSA profile keycaps are fully symmetrical and feature a slightly concave top surface. In this video I'll show you how to machine these keycaps in different types of wood. In Fusion 360 I started with a sketch and drew a square that's 18x18mm. I drew a cross in a separate sketch and aligned it perfectly in the center of the square. I then extruded the square and added a 22 degree tapered angle. To create a curve I made another sketch and used the revolve feature to trim the top surface. I then rounded the corners and the top edge using fillets. For the bottom of the keycap I sketched out a square with a 2mm offset. I extruded this as a cut using the same tapered angle with a height of 5mm. This shells out the keycap so it's actually 2mm thick. I then created another extrude for the stem and made it 5mm tall. I rounded the corners using fillets and created another extrude using the sketch of the cross. I kept the design fairly simple and also wanted it to be symmetrical. Once I was happy with the design of the keycap I determined this needed to be two separate operations for milling. I recreated it as a square with all the internal geometry but with a flat bottom surface. This way we can mill the bottom side first and then flip it to mill the top side. I designed a custom fixture that'll hold the keycap in place while we machine the top side. This precisely fits the keycap in place and features extra spacing along the edges so that it can be aligned to the spoil board with a bracket. I used the rectangular pattern feature to create a 1x4 layout so that I could machine 4 keycaps in a single operation. To set up my stock I started by selecting the top of the model at the lower left corner. This way my work coordinates are the same as the spoil board on my desktop CNC. I then added a 2mm offset to the side of the stock so that I'd have some extra material to work with. I left the top and bottoms with the zero offset so that I wouldn't need to worry about facing the material in this operation. For the first operation I used a 1.6 inch flat end mill and adaptive clearing to carve out the internals of the keycap. I set the maximum step down to a half of millimeter and then the fine step down to just 0.1mm. This way we get a fine surface finish on those drafted angles. For the next operation I used a 1.32 inch flat end mill with a 0.2 inch cutting length so that I can actually reach all the way down the stem. I used a 2D pocket with a maximum step down of just 0.2mm so it's easy on the tool and material. For the last operation I switched over to a 1.8 inch flat end mill and a 2D contour to cut out the shape. Since it's a bigger tool I was able to use a maximum step down of 1mm so it's fairly quick operation to finish off the bottom side of the keycap. Using the pattern feature in the CNC workspace I set up a 1x4 layout so that I could mill 4 keycap bottoms in one G-code file. For the top side of the keycaps I set the stock so the origin is also at the lower left corner on the top side of the material. The stock is set to a fixed size so that the width, height and thickness are all the exact same dimensions as the square keycap. The model position is centered with the stock so it should line up perfectly with the bottom side of the keycap. To mill the top side I used a 1.16 inch flat end mill in a single adaptive clearing operation. I set the maximum step down to just a half of a millimeter and a fine step down of 0.05mm. This way we can get a nice and smooth surface finish on the outside of the cap. On to the fixture that will hold our keycaps. I was able to use the 1.8 inch flat end mill in adaptive clearing to carve out most of the material. Using the same tool I used a 2D contour to cut out the outline of the holder. To create the holes for the stem of the keycap I switched over to the 1.32 inch flat end mill and set a 2D pocket with a step down of 0.2mm. And that's pretty much all of the toolpaths and operations. Now on to milling. The desktop PCB milling machine from Banth Tools is my go-to machine for these type of projects. I started by measuring my stock with calipers and checking to see how even each piece is by laying it flat on the spoil board. This way we can quickly see if we need to face both sides. When facing any stock I used a 1.8 inch flat end mill since it's the biggest tool that I can use on this machine. To secure the stock to the bed I like to use double sided nitro tape. When placing the material down I have to make sure to align it to the lower left corner since that's how we set up the coordinates in Fusion 360. I have the maximum step down set to 1mm so it only needs to go a few passes to get it down to the right thickness. Since I'm facing both sides I needed to vacuum up the machine after the first side and then remove the stock using some alcohol. Then I just repeat the same process for the other side of the stock. With both sides surfaced I can then start milling the first G-code file. This is going to be the fixture that will hold all of our keycaps in place. Since it's the biggest part of this project I stuck with the 1.8 inch flat end mill and let the machine do its thing. Once the operation was complete I moved on to the pockets this time using the 1.32 inch flat end mill. The diameter of this tool is just the right size and length for cutting out the holes for the stems of the keycaps. After that I used some more alcohol and a pallet knife to remove the part from the spoil board. The surface finish on those drafted angles are pretty rough so I had to sand it down. They clean up nicely with some 220 grit sandpaper. I made several versions of the holder. This has a 2mm base which could be problematic when moving from the bed so I remade it with the base being 5mm thick. For the keycaps I got some Purple Heart, Walnut, Cherry and Maple. These were all about the same thickness and already even so I only need to face one side. To mill the bottom of the keycaps I started with the 1.16 inch flat end mill. I decided to make 4 keycaps since the stock was smaller than the fixture. For the crosses I switched over to the 1.32 inch flat end mill and had to make sure the offset was the same as the bottom so that the two would line up perfectly. I used the 1.8 inch flat end mill to do the 2D contour which will cut out the square keycaps. This operation takes about 5 minutes and will take longer depending on how many keycaps you want to mill. Again using some alcohol to soften up the adhesive which makes it easier to pull off from the spoil board. They're a bit rough along the edges so I'll have to do some sanding to get them nice and smooth. I ended up making a set of 4 with each having their own flavor of wood. I didn't notice any differences in the tolerances, the main difference is just the way they look. Admittedly I milled one keycap first so that I could test the tolerances. They press fit nicely over these kalebox switches. I also had to test the fixture so I just press fitted them in place. I'll use double sided nidda tape to secure the keycap so they don't lift when milling the top surface. To get perfect alignment I used the 1.8 inch probe and installed the PCB bracket. This bracket is normally used for milling double sided PCB but also works with anything that needs precise alignment. The bayonet tool software walks you through the process and uses the probe to touch several edges of the bracket so it'll automatically set all those offsets. Once again I can line up the fixture with the lower left corner of the bracket. I placed a couple pieces of nidda tape along the sides of the post and installed the keycaps in place by press fitting them on top. At first I did try to mill these without any tape but the keycaps kept lifting and coming loose due to the vibrations of the machine so for sure I recommend using tape to keep them secured in place. This just barely milled the top surface of the tape. I then used a pallet knife to pop the caps off the fixture. Test fitting on kalebox switches once again the tolerances were nice and tight. Once I got the first keycap done I proceeded to secure 4 more keycaps to fill up the whole fixture. I laid a long strip of nidda tape across the fixture to make it a bit easier. With all 4 keycaps secured I ran through all of them and proceeded to remove them from the fixture. The keycaps and tape came off the fixture fairly well so I should be able to reuse it until it gets damaged. Ideally I would have milled the fixture out of aluminum but I had a lot of wood on hand. I had some extra stock ready to go so I made a few more sets. Once I had the process down it was fairly easy to set up a new batch and mill some more. I'll have the design available to download and a learn guide with a full write up of all the recipes. I learned a lot while making these keycaps and I hope this inspires you to give it a go if you're into CNC milling.