There are so many Raspberry Pi cases floating around. I don’t expect anyone to care about this one. While there are many like it however, this one is mine.

For the following project the goal was very straightforward. I needed a case that held a Raspberry Pi along with an LCD display. That’s it. I searched through many options beforehand and couldn’t find anything I liked. Most of the cases I saw either didn’t have LCDs, were for LCDs that had additional buttons, or had other differences from what I wanted. I wanted it to be a small, solid-feeling enclosure that would comfortably fit a 16×2 LCD and the necessary wiring. That’s it.

This was also a nice opportunity to put some effort into the design. One feature I incorporated was a mesh like vent on one side which turned out well. I printed this using ABS so the vent may not work well with other materials. It worked well enough that I used it again on a subsequent print (to be posted in the future). For anyone looking to incorporate vents in their own designs, a diamond shape is key. It allows you to print with a cut-off for overhangs set to 45-degrees. This results in open diamonds straight out of the printer (no support material). You probably want to check your 3D printer’s settings and adjust them or the diamond pattern accordingly. If you don’t, the worst case will look horrible and doesn’t vent at all. In the best case you will need to do some clean-up/post printing work. The parts should be printed on the bed as they appear below (top and bottom surfaces are flat).

This was printed on the Lulzbot TAZ5 from my earlier blog post so YMMV depending on your printer’s capabilities (min. wall thickness, etc.).

Required Parts, Materials, & Files

  1. Raspberry Pi 3 or 2
  2. 16×2 LCD Display
  3. RPi LCD Case (top)
  4. RPi LCD Case (bottom)
  5. Qty. (4) 3/16″ No.1 Sheet Metal Screws (for the display)
  6. Qty. (4) 5/16″ No. 1 Sheet Metal Screws (for the case/Pi sandwich)
  7. 3mm or 1.75mm Black ABS Filament
  8. misc. wires/connectors

Cost Estimate

Cost of a Pi + LCD + Wires/connectors + 3D print
The cost of 3D printing will be the wild card here depending on whether you have your own printer or are going to send this somewhere else to have them print it.

Skills Required

  • Soldering
  • 3D Printing
  • Basic terminal commands & basic Python scripting

Timing

~1 day? This of course largely depends on the speed of your 3D printer.
Display wiring ~ 30 minutes
Part assembly ~15 – 20 minutes
Software config – up to an hour if you’re doing something like this for the first time.

Basic Instructions

  1. Start out by printing the case. Making sure it goes smoothly before moving on. You can wire up your display and config your Pi in the meantime but they will be hanging about and unprotected until the case is done.
  2. I followed more than one tutorial to get the display working the way I wanted. I modified the python script for the LCD. It now displays wifi and ethernet IPs.
    Tutorials:
    Original Adafruit 16×2 LCD Tutorial
    systemd Tutorial
  3. Modified display script:

    # Refer to Adafruit tutorials for additional code Re:Display Config/Setup
    # Initialize the LCD using the pins above.
    lcd = LCD.Adafruit_CharLCD(lcd_rs, lcd_en, lcd_d4, lcd_d5, lcd_d6, lcd_d7,
                                                            lcd_columns, lcd_rows, $
    cmd1 = "ip addr show wlan0 | grep inet | awk '{print $2}' | cut -d/ -f1"
    cmd2 = "ip addr show eth0 | grep inet | awk '{print $2}' | cut -d/ -f1"
    
    def run_cmd(cmd):
            p = Popen(cmd, shell=True, stdout=PIPE)
            output = p.communicate()[0]
            return output
    
    while 1:
            lcd.clear()
            ipaddr1 = run_cmd(cmd1)
            ipaddr2 = run_cmd(cmd2)
            lcd.message('w%s' % ( ipaddr1 ) )
            lcd.message('\n')
            lcd.message('e%s' % ( ipaddr2 ) )
            sleep(2)
    
  4. Assuming those tutorials were successful, go ahead and assemble everything. Assembly should be last since you won’t be able to access the wiring when it’s all closed up.
I am a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for me to earn fees by linking to Amazon.com and affiliated sites.

One thought on “Raspberry Pi LCD Case

Leave a Reply