The 8-ball has transformed into the unimaginable. With the same concept as this famed icon, I have created a device that will help you get dressed for the day by giving you a complete outfit with a simple shake of the cube. With modification, the possibilities for this project are endless. By simply changing phrases and other sets of code, this could become anything YOU want it to be.
Here's a link to the video:
Step 1: What You Need
- 1 LCD screen 16×2 http://www.adafruit.com/products/181)
- 10 K potentiometer (comes with LCD screen above, for contrast variation on backlight)
- 9V battery
- Barrel jack adaptor https://www.sparkfun.com/products/9518
- Male break-away headers https://www.sparkfun.com/products/116
- 1 Accelerometer https://www.sparkfun.com/products/9652
- 1 breadboard
- Arduino Uno
- LOTS of hookup wire
Step 2: LCD Prep
Look at the lcd screen for reference. Solder headers to the first 6 and last 6 pins on the lcd as shown. Attach hookup wire (the yellow wire) to the headers. Since both ends of this hookup wire have female connections, I cut the wires in half and soldered and shrink-wrapped regular hookup wire to the other end.
Step 3: LCD Hookup
I closely followed this image from alecnotalex on Instructables for my lcd hookup. Follow the hookup wires from the lcd to the potentiometer to the Arduino as followed, ignoring everything else on the board as this was an older project example from alecnotalex.
NOTE: Since you used hookup wire from the lcd itself as opposed to hooking up the lcd directly to the board, just attach the wire from the lcd to where you see the lcd attached in the image.
Step 4: Accelerometer Hookup
- Place accelerometer on the breadboard
- Hook up VCC on accelerometer to 3.3V on Arduino with hookup wire.
- Hook up GND on accelerometer to any of the grounds on the Arduino.
- Hook up Z-OUT on accelerometer to A0 on Arduino.
- Hook up SLP on accelerometer to 3.3 V on Arduino.
Step 5: CODE!
This is probably the easiest part of the Instructable (believe it or not). Download the code into some sort of word processor, and simply copy and paste into your arduino software.
The base of this code came from alecnotalex on Instructables. I modified it to where data is randomly pulled from not only one but two datasets, one for each row on the lcd. Of course, this is completely editable. You could change the phrases into anything you wanted.
REMEMBER, if you do change the amount of phrases for any row, make sure the correct number is there next to "int numberofphrases = ". ALSO, you may find that playing with the z values will be necessary, depending on the orientation of your device. For instance, I found that my data would continuously scroll while no motion was being detected in the beginning. Open up the serial monitor in the Arduino software and watch the data as you shake your device. With trial and error, you will come up with a correct variation.
Step 6: House the Hardware
This is completely up to you. I used a clear acrylic cube with a pop-off top (found at many arts and crafts stores, Hobby Lobby for me) that I spray-painted. Once opened, I placed the arduino on one side, the lcd across from that, and the breadboard on the bottom. All of this was attached by using the ever-so-useful hot glue gun. I'm sure you will find more professional ways of mounting your device.
NOTE: Unless you solder everything to a solder board, it may be necessary to dab hot glue on any loose connections on your breadboard. I did this to ensure that nothing got unplugged while mounting my device.
As stated in the beginning of this Instructable, this is only just the beginning. Make something cool! Can't wait to see what you create.