What we're going to build:
In this tutorial we're going to build a lasercut acrylic frontplate for an Adafruit 16x2 LCD + Keypad Shield (Arduino version). Due to a simple adjustment, you'll have comfortable access to all the keypad buttons.
If you don't have a lasercutter, use lasercutting services like ponoko or formulor to get the necessary parts. You can find the regarding lasercut template file below. Beside the lasercut-plates, you'll also need some screws, nuts, tactile buttons and plastic glue to realize this project.
Why I came to this idea?
When I bought my first Arduino and an Adafruit Display+Keypad Shield, it felt quite uncomfortable to work with all those loose parts on my desk. All the cases, bottomplates and frontplates that were available to buy didn't fit to my expectations, since they are not compatible to each other. I wanted to have something with more style and flexibility. So I started to develop my own tinkerer's environment that helps fixing all needed parts and brings more style into weekend's tinkering sessions. So if you also want to add more style and comfort to your tinkering sessions, read on ;)
This frontplate is the first of several elements I developed. For example, it's compatible to a baseplate that holds an arduino uno and a halfsize breadboard + your project's periphery (e.g. knobs, sensors). There will be a following tutorial in the future.
Step 1: Gather Parts, Tools and Files
- Adafruit LCD Shield Kit with 16x2 Character Display
Choose one of the following three display versions and buy a kit. I used the "negative display" version.
www.adafruit.com/products/714 (NEGATIVE DISPLAY)
- 3mm lasercut acrylic glass elements
Download the regarding template eps-file (below) and place your order at Ponoko (international users) or Formulor (german/european users). Choose one of the 3mm/0.118 inches acrylic P1-Plates in a color you like. I'd suggest to choose “Acrylic - Black (Matte 1-Side)” or “Acrylic – White”.
- 5X tactile buttons, 3mm height
Use to replace the 1mm versions that came with the display shield kit.
- Screws, nuts, spacer sleeves, bolts
4X M2.5 x 20mm screws (round head)
4X M2.5 nuts (plastic!)
4X spacer sleeves 8mm height
4X distance bolts M3, 35mm height
8X screws (cylinder head) M3 x 7mm height
4X self adhesive silicone pads
- Shield stacking headers for Arduino (optional)
If you want to have access to the unassigned arduino pins, which I highly recommend, use this stacking headers instead of the male pin strips that are supposed to be stacked onto the arduino.
Also, download the pinout labels pdf-file (below), print it on thick paper (e.g. 10x15cm / 4x6 Inch) and apply it onto the pins (instructions at step 5).
- soldering iron + solder + pliers (to solder the display shield kit)
- CD-marker pen + benzine + old piece of textile (to color engraved frontplate areas)
- Plastic glue (e.g. “Revell Contacta” liquid glue for plastics to put the acrylic button parts together)
- Printer (to print the pinout-labels)
- Cutter knife + ruler (to cutout the pinout-labels)
Step 2: Prepare Lasercut Plates
Order lasercut plates
The actual frontplate is supposed to be made of 3mm lasercut acrylic glass elements. You could also try to use a different material, as long as it is 3mm thick. The template I created only works with that height, because it affects the length of the screws, buttons etc. To get the elements, you can use a lasercut service like Ponoko (best for american and international users) or Formulor (best for german and european users).
- Download the Ponoko template eps-file (find the file at step 1)
- Go to www.ponoko.com, choose one of the 3mm/0.118 inches acrylic P1-Plates.
I'd suggest to choose “Acrylic - Black (Matte 1-Side)” or “Acrylic – White”.
- Upload the template eps-file, order the plate and wait until your shipment arrives.
- Download the Formulor template eps-file (find the file at step 1)
- Go to www.formulor.de, choose one of the 3mm acrylic P1-Plates. I'd suggest to choose “Acrylglas GS, schwarz opak, einseitig matt” or “Acrylglas GS, weiß opak”.
- Upload the template-file, order the plate and wait until your shipment arrives.
Optional: Add some color with a CD-Marker
If you ordered the “Acrylic – White” material like it is shown in the pictures, it makes sense to color the engraved areas on top of the buttons and the FluxGarage-Branding above the display. To do this, just roughly follow the lines of the engraving with a black CD-marker pen or a similar pen that is suitable to write on plastic materials and dries quickly. Wipe away the overlapping color with a benzine-soaked piece of cotton.
Glue button-parts together
When you've got your acrylic plates, make sure you have everything you need. Sometimes the small button-parts get lost during the laser cutting production process. In most cases the tiny button-parts are put into a small plastic bag when they arrive. But don't worry, each button part is included twice in the template file, just to prevent missing parts.
Each of the 5 keypad buttons is made of three arcylic layers, glued onto each other:
- The upper part (engraved)
- The middle part (a bit smaller than the upper part)
- The lower part (same size as the upper part, not engraved)
If you have all the needed button-parts, proceed as follows with each button:
- Peel of the thin foils to make sure that the glue will perform as expected. Yes, every single foil ;)
- Glue the three parts together as shown in the image. Always use only a very small drop of glue. I made best experience using the “Revell Contacta” liquid glue for plastics, as it's described in the parts and tools list.
- Double check if the middle part is really centered.
- Rotate the lower part by 45 degrees, that will make sure that the buttons won't fall out of the frontplate.
As you see in the pictures, I replaced the button's white upper parts with similar black colored parts. This is just a styling issue. If you want to do the same, you could order two p1-plates in different colors, for example. I did this because I have two display shields and I exchanged the buttons to have more contrast.
Step 3: Solder Display+Keypad Shield (and Do Some Adjustments)
Now it's time to solder the Adafruit LCD+Keypad Shield and take care of the following adjustments instructions:
- Replace five of the six tactile buttons (1mm height) that came with the display shield kit. Use five tactile buttons with 3mm height for the keypad buttons instead. For the reset button, you can still use the tactile button with 1mm height.
- Replace two of the three the male pin strips that are supposed to be stacked onto the arduino with shield stacking headers for Arduino (purchase link at step 1). It might be necessary to cut off two legs from one of the stacking headers.
- Before soldering, it's recommended to put the stacking headers into the arduino board so that they are fixed. Then rotate them by 90 degrees and solder them from the bottom-side. Rotating the stacking headers makes sure that you can reach them later, when the frontplate is attached.
- Take care to place the LC-display element as close as possible to the main circuit board before soldering.
Please keep in mind: Due to the fact that the display shield uses the Arduino-Pins A4 and A5 for data-transmission, these pins are no more available for use in your projects.
Apart from the exceptions above, solder the shield as described in the Adafruit assembly instructions:
Step 4: Connect Shield and Frontplate
When both the acrylic frontplate elements and the LCD+Keypad shield are prepared, it's time for the marriage.
- Put the M2.5 screws into the small inner holes of the acrylic frontplate.
- Lay down the frontplate facing the table (engraving to the bottom side). Take care that the screws don't fall out.
- Put the spacer sleeves onto the screws.
- Now take the buttons and put them into the square holes. The engraving should be at the bottom side. Take care to have the right icons in place.
- Put the LCD+Keypad shield onto the screws. In most cases, you need to wiggle a bit, so that the screw's tip comes out.
- Screw the M2.5 plastic nuts onto the M2.5 screws. Usually it fits to do that by hand.
Step 5: Apply the Pinout Labels
If you used the stacking headers and if you want to use the unassigned Arduino pins for your projects, it will make your life easier to apply a simple pinout label.
- Print the pinout label pdf-file on thick paper (e.g. photo-paper). Find the regarding pdf-file at step 1.
- Use the cutter-knife to cut along the dashed lines as shown in the picture.
- Apply the labels to your LCD+Keypad Shield.
Step 6: Add Standalone Legs and Simple Bottom Plate
Last but not least, let's add some legs to make the display shield be able to stand alone. Optionally you can add the bottom plate that is included in the lasercut template to protect your Arduino board.
- Put an M3 screw into one of the large outer holes of the acrylic frontplate.
- Screw a distance bolt onto the M3 screw
- Repeat the previous steps for the other three corners
- Do the same procedure for the bottom plate
You should put some self adhesive silicone pads under the bottom screws to avoid scratching your table. Also, there's a more sophisticated option to proceed with the bottomplate. Have a look at the following step.
Step 7: Variation: Bottom Plate With Countersunk Screws
If you want a more sophisticated solution for your bottom plate, you can drill cone shaped holes into your bottom plate and use countersunk screws (what I always prefer).
Step 8: Preview - FluxGarage Tinkerplate
As mentioned in the introduction, I've also created a compatible bottomplate that can hold your arduino, a halfsize breadboard, your project's periphery (e.g. knobs, sensors) and sure, the display-shield + frontplate. This environment fills the gap between prototyping and boxing up your projects. The FluxGarage Tinkerplate will be part of a following tutorial.