Final Project
Here is where I will be documenting the process of making my final project. As this is my first full integration project, I wanted to make something simple. What I decided to make was an RGB Macropad, a convenient place with all the keybinds and media keys I need. I will be incorporating laser cutting, 3D printing and microcontrollers into a fully integrated project. The raw files can be aquired below and the rest of this page is my week to week documentation of the process.
Table of contents
List of Materials
Raw Files
Week 1
Week 2
Week 3
Resources Used
List of Materials
Parts to purchase | Quantity |
---|---|
Arduino Pro Micro | 1 |
4x4 Membrane Keypad | 1 |
WS2812 Neopixel | 6 |
Frosted Acrylic Sheet | 1 |
Parts to 3D print | Quantity |
Center | 1 |
Mount | 1 |
Corner Spacer | 4 |
Feet | 4 |
Parts to laser cut | Quantity |
Top Plate | 1 |
Keypad Support | 1 |
Front Plate | 1 |
Back Plate | 1 |
Bottom Plate | 1 |
Side Plate | 2 |
Raw Files
[Google Drive folder with the raw files.]Week 1
Ideation
Originally, I wanted to make a mechanical tenkey pad for macros and shortcuts from scratch, soldering my own mechanical switches together in a switch matrix. However, because of the lack of time, I decided to use a 4x4 Matrix Membrane Keypad, which achieves the same purpose. With the main component decided, I went ahead and sketched out a basic case design. I took reference from https://create.arduino.cc/projecthub/brian-lough/the-simplest-diy-macro-keypad-d2e428 in order to learn more about the 4x4 matrix keypad.
Sketch
The case consists of 4 acrylic walls, connected at the corners with 3d printed pieces, and sandwiched between 2 acrylic plates. The keypad rests on platforms on the corner pieces and is held down by the top plate. I plan to use M3x25 screws to connect everything together. With this sketch, I started to 3D model the case
3D modelling
Version 1
The differences between the sketch and this first version is the addition of the mount for the microcontroller and that the feet has not been modeled yet. However, after modelling it I realised that I did not have any place to mount the neopixel strips I planned to use.
Version 2
Changes were made to the corner pieces such that now there is a "floating" panel in the middle where the neopixels can stick onto. The keypad will still rest on the top of it. Originally, the turqoise and pink parts (pictured below) were a single body, but I separated them so that there will be no supports during 3D printing.
Another change made was adding more space for the keypad. The keypad is very thin and floppy on its own so I plan to stick it onto a laser cut panel in order to give it more rigitidy and strength. The thickness of the acrylic plate was accounted for in the space between the top plate and the place where it will rest.
3D printing and laser cutting
Machine and settings used for 3D printing
Machine | Ultimaker 2+ |
Material | Orange PLA |
Layer Height | 0.2mm |
Infill Density and Pattern | 20% Grid |
Printing speed | 80mm/s |
Supports | None |
Build Plate Adhesion | Brim |
Machine and settings used for Lasercutting.
Machine | Epilog Fusion Pro |
Material Thickness and Type | 3mm Frosted Acrylic |
Cut Settings | Speed - 18 |
Power - 90 | |
Frequency - 90 | |
Engrave Settings | None |
Issues
After I got all the parts, I faced 3 issues.
Issue 1: I did not properly measure how wide the neopixel strips were before printing. The current width on the 3D model was 5mm, but the neopixels are 9~10mm wide. With the current model, only half of the width would be secured.
Issue 2: Using the brim was a mistake. Because the parts being printed were totally flat with relatively large surface area, I could have gotten away with printing without the brim. However, I still did, which resulted in lots of time being spent cleaning up the print, as the brim got into all the slots for the acrylic plate.
Issue 3: I did not account for tolerances and shrinkage during the print. As a result, the acrylic plates could not fit into their slots and lots of post processing work had to be done to make sure they fit. Moreover, the holes I modelled to be M3 ended up shrinking as well, requiring me to drill it out again using a 3mm drill.
Even with all these issues, I still sanded all the parts to make it fit in order to see how everything went together.
Week 1 assembly
Next week, I plan to reprint the corner piece with the correct width for the neopixel, print out the mount for the microcontroller, as well as solder the keypad and neopixels to the microcontroller.
Week 2
From the first week, I just kept the laser cut parts as there were no changes done to the design. During this week, I plan to print out the remaining parts such as the arduino mount and the feet, remodel and reprint the corner pieces as well as finish soldering the electronics.
3D Modeling
As stated in week 1, the original mounting place for the neopixel LED strips was too narrow. I extended the extrude downwards by an extra 5mm, and modelled the feet for the macropad. With this, the design is finalised.
3D printing
Machine and settings used for 3D printing
Machine | Ultimaker 2+ |
Material | Black PLA |
Layer Height | 0.2mm |
Infill Density and Pattern | 20% Grid |
Print Speed | 80mm/s |
Supports | None |
Build Plate Adhesion | None |