I got the idea from the traditional sticky notes. Normally, a piece of sticky note has a very short life and can only be used for one time, so I was thinking how to make a piece of sticky note live longer, and then the idea of touch sticky notes came to my mind.
Step 1: Supplies
- A 8 x 8 LEDs matrix
*The matrix I used here is from ModernDevice.com, and if you want to use the same matrix I used, you have to buy the LEDs as well. I recommend the 8 mm LEDs, because it perfect fits the board of matrix.
- A resistive touch screen with touch screen breakout board
*The touch screen I used here is from AdaFruit.com, and also you can find the touch screen breakout board on the same website.
- A Arduino setup
- Some wires
- A piece of sponge or anything which is transparent
- A case for all the things above
*I built the case by a 3D printer, but you can also by anything you like.
- Soldering tool and solder
- Leg cutter for cutting legs of LEDs
- Utility Knife
- 3D Printer (Optional)
Step 2: Setup the LED Matrix
Because the matrix I use doesn’t contain the LEDs initially, I have to solder 64 LEDs to the board of matrix. Before soldering, I recommend to use a simple circuit to test each LED first to make sure it’s working, for this can prevent taking the broken led off the board.
I highly recommend soldering the LEDs at the very beginning, and then do other parts of the matrix. If you unfortunately did chip holders and chips before the LEDs, there is also a way to solder LEDs. You have to take the chip out of the chip holder first, and solder the LEDs every carefully, and then put the chip back.
Soldering is a time-consuming work, but it’s very important, because it can determine the performance of the final project.
After finishing the solder, you can use a code to text the matrix. I put two codes here for you to test. The first one is for testing whether the LEDs can light or not, and another one is for testing whether you can use matrix to control each LEDs or not.
Step 3: Calculating the Touch Screen
If you want to use the touch screen as the same as I used, you have to do one thing first before calculating the touch screen: soldering four wires to the touch screen breakout board.
Calculating the touch screen is also a time-consuming work, because you have to divide the touch screen into 64 areas and each area controls one LED. And the whole calculation can described in three steps:
1. Installing the library of the touch screen to the Arduino. You can download the library from AdaFruit.com, and also I attached the library here. After installing the library, you can run the code I put here to test the touch screen. Basically, the code can show three values of the touch screen: p.x for X axis, p.y for Y axis, and p.z for the pressure you give for screen.
2. Because a LED matrix is controlled by four chips and each chip controls 16 LEDs, I recommend divide the X axis into four equal parts. And in this case, I want a certain area to reset the matrix, so I divide the X axis into five equal parts.
3. In each individual area, you can make 16 equal areas with 2 rows for X axis and 8 columns for Y axis.
Step 4: Connection and Testing
Now it’s time to put everything together. In my programming, I make pin 2 to 6 for the matrix, and pin 2 for the latch, pin 3 for the output enable, pin 4 for the clock, and pin 5 for the data. Also on the touch screen side, pin 8 for Y minus, pin 9 for X plus, A2 for Y plus, and A3 for X minus. (Remember: you should use two analog pins for Y plus and X minus)
On the testing progress, we’d better do two things. First, we should touch each area to make sure it will turn the certain LED on. Second, we should find the correct direction for both the matrix and the touch screen in that we don’t want to see touching the right upper corner of the touch screen to turn on the LED on the left lower corner.
In the programming, you might have to change the value of the areas by calculation, because I’m not sure every touch screen has the same value of X axis and Y axis.
Step 5: Building the Case
In my project, I build a case by 3D printer, so if you have no internet about 3D printer, you can skip this step.
At first time, I was trying a big case for the whole thing, but the 3D printer I use cannot build anything beyond 10cm x 10cm x 10cm. Therefore, I made a small case for the Arduino, and built another big case combined by 8 separated pieces for the matrix. Anyway, you can design any case you like.
Step 6: Thoughts
1. How to make a case to be more stable and simple?
2. How to write on the LEDs, not behind the LEDs?
3, How to make it portable?