Introduction: Rotating Sports Sign With LCD Display!

About: Background in biomedical engineering and enjoy all things electronics, coding, 3D printing, woodworking, and crafting!

In this Instructable, I will show you how I made my rotating sports sign with an LCD display. I have been an avid Pittsburgh Penguins and Ohio State fan since I was younger and I wanted to create some type of sign/display that would show my love for both. I purchased a few stepper motors and motor drivers a while back and wanted to utilize them in this project. I also had a 3.5" Arduino Uno TFT LCD display shield that I wanted to use as well. I often find myself googling when the next Penguins or OSU football game will be so I decided to embed both teams schedules within the display.

The display shows a combined team logo on the home screen. This can be turned on and off separately from the rotating sign. By pressing on either teams logo, the display will take you to their respective team schedules. The bottom right hand of the screen is a hidden home button which will take you back to the combined team logo screen.

Here are the features of this project:

  • Stepper motor driven rotating display. Rotation speed can be adjusted
  • LCD display showing the combined team logo with the ability to view each teams schedules separately
  • Ability to independently control the display and stepper motor
  • The sign can easily be printed to display YOUR favorite team or teams!

All in all, I had fun with this project. As for most of my projects, I wanted to incorporate a bit of electronics/circuitry, coding, and 3D printing and I did just that with this one! Follow along if you want to see how I made this!

Supplies

Electronics:

3D Printing:

Miscellaneous:

  • Soldering iron
  • Super glue/Hot glue
  • Wire cutter/strippers
  • Small precision files/sandpaper
  • 3D Printer (optional): My 3D Printer -

Step 1: Electronics and Schematic

I had in mind from the very beginning that I wanted to utilize a stepper motor as well as my Arduino Uno TFT LCD Display shield. Those were the two main components for this project. Knowing that, I created a schematic using EasyEDA (schematic above). I wanted to have the ability to turn on/off the LCD screen as well as the rotating sign independently. My idea was to use two switches for this, with one turning on the Arduino which would drive the LCD display. The other switch would allow power to the motor and motor driver. I wanted to have some ability to control the speed of rotation for the sign as well so I incorporated a 555 timer into the project with a potentiometer to drive the motor.

I actually followed Instructable User: KushagraK7 and his tutorial "Stepper-Motor-Speed-Control-With-555-Timer" for help on how to drive the stepper without a microcontroller. I could have driven it with the Arduino however I was limited for a few reasons. The additional memory to incorporate the stepper library and lines of code needed to drive the stepper with the Arduino would have taken up too much space. I'll explain later on but incorporating the GFX and TouchScreen libraries as well as storing the bitmap files for the LCD images on the display shield took up about 98% of program storage. In addition, it was much easier for me to code only the LCD portion rather than have to incorporate driving the motor as well.

I used the 12V power supply to drive the motor and then a 5V linear voltage regulator to power the necessary 5V to the Arduino. I tested the connections using a breadboard first. Once I knew everything worked properly, I soldered the components onto a prototyping board (see below).

Step 2: Team Logos and Schedules

Before programing the Arduino, I needed to figure out what I was going to display on the LCD screen. Because I wanted to incorporate two teams (Pittsburgh Penguins and Ohio State) I first started by Googling team logos for both. My idea was to display both logos on the home screen since the sign would rotate and display both logos at the same time as well. I ended up finding two images that I liked and cropped them together using a simple photo editor.

Next, I needed to find each teams schedule as my idea was to also have the ability to navigate to each teams schedule on the LCD. I found a simple Ohio State schedule and saved that image. Because the Penguins play an 82 game schedule and their schedule is often broken down monthly, I chose to save screenshots of each month that they play (see above).

I knew already that my LCD screen size was limited to 480x320 pixels. I used this website: https://online-converting.com/image/convert2bmp/#google_vignette to convert my saved images to Bitmap format with the correct 480x320 size. I saved each of the bitmap files onto my Micro SD card.

If you are making this and want to incorporate your own team, just find your favorite sports team logo!

The next step was programming the Arduino!


Step 3: Arduino Program

As I've already mentioned, my goals for the LCD display were to:

1) Display a combined OSU/Penguins logo on the home page

2) Toggle to the Penguins schedule, select a specific month, and load the schedule onto the screen

3) Toggle to the OSU schedule and load the schedule onto the screen

4) Incorporate a way to navigate back to the home screen

I used several tutorials for help on programming the Arduino/LCD display. In addition, the LCD display shield had a built in SD card slot which I used to store my image files onto. Check these tutorials out for a nice intro on programming these LCD displays:

The specific libraries I used for this code included: SPI, Adafruit_GFX, MCUFRIEND_kbv, and TouchScreen. The code itself is fairly simple. After initializing the display, I load the home screen combined team image. If the left side of the screen is pressed (Pittsburgh Penguins side), a new screen is displayed giving me the option to choose a specific month. Whichever month is pressed will load onto the LCD. Pressing on the bottom right hand corner of any screen will take you back to the combined team image home screen. If the right side of the screen is pressed (OSU side), the Ohio State schedule is displayed.

The code is attached below for your reference!

Step 4: Sign Design With Fusion 360 and 3D Printing

Once the code and electronic wiring was completed, I moved on to designing the sign/enclosure. I used Fusion 360 as my CAD software of choice. I ended up designing a circular sign with each teams logo on one side of the circle. I used The Nerdy Reviews tutorial on Youtube for help on how to convert an image to an SVG file for use on Fusion 360. The process is painless and the results turned out very well. That is how I designed the OSU and Penguins logo. I then created an enclosure for the electronics and LCD display. I made sure to include holes for the two toggle switches, potentiometer, and barrel jack.

I purchased a SUNLU multicolor PLA filament bundle that included all of the colors I needed. I printed the base, rim, lid and sign holder first in black. The LCD, toggle switches, potentiometer, and barrel jack fit well into the cutouts. I then moved on to printing the background circle in grey. I printed this in two as my print bed was not large enough to print in one complete print. I glued the two halves together with super glue.

The Penguins logo was the most difficult to print. I started with the black portion of the penguins logo and then printed the inside portions at 98% size knowing that it would likely be a snug fit. I did have to sand down and file some of the inside prints (i.e. belly, gloves, stick) in order for them to fit. I superglued the penguins print onto the grey circle and used several books to keep the print flat on the circle while drying.

The OSU logo was easier to print and printed each part in the respective color. I glued that onto the grey circle and again weighed it down with several books while drying.

I've included all of my stl files below should you want to print your own!

Step 5: Completing the Project!

Once the printing was completed and the components were soldered together, all that was left to do was to place into the enclosure and test it out!

The sign holder fits directly into the stepper motor shaft and is easy to remove for any trouble shooting. Altogether, the project turned out very well! It functions exactly how I intended.

A couple things that could be done in a future upgrade:

  • Add some sound dampening as the stepper motor is a bit noisy with rotation
  • Replace the Arduino with a WIFI enabled microcontroller that can download the teams schedules each year. As I have it now, I will have to hard upload the teams schedules on a yearly basis

Hopefully you enjoyed this! The project would be very easy to tailor to your favorite team/team logo! Let me know if you have any comments/questions/suggestions down below! Happy making!

Anything Goes Contest

Participated in the
Anything Goes Contest