64x16 RED LED Marquee
Intro: 64x16 RED LED Marquee
The purpose of this small scale LED marquee is to display messages to our classroom in a more modern and centralized way. In the classroom, this construction would save white board space and is convenient because it can store a large amount of information. It is also fairly simple to program and has a mount, making it easy to place anywhere within the classroom setting.
STEP 1: Materials
The first step of this project is to gather all the materials necessary to assemble your miniature marquee.
- 1 64x16 LED matrix that can be ordered here.
- Access to a 3D modeling computer program such as SolidWorks in which you will be able to create the mount for the Marquee and the containment box for the arduino processor
- 1 Arduino UNO processor and Arduino coding software
- 1 9v battery
- 9 male-female pin cables
STEP 2: Construct Your Marquee Mount
Using your 3D software (we used SolidWorks), design a mount and Arduino processor containment box.
We have provided our own measurements and STL files for both the mount and the containment box, but feel free to make your own adjustments.
Print out your designs.
STEP 3: Schematic/Pin Assignments
The next thing you need to do is wire the electronic marquee to the Arduino. The pin assignments are as follows (as well as included in the code):
LT=8;
SK=12;
R1=10;
R2=11;
EN=2;
LA=3;
LB=4;
LC=5;
LD=6;
GND=GND
Note: we had to toy with this quite a bit in order to get the correct fit for our marquee. If you purchase a different LED panel, you may need to alter the pin assignments to meet your own needs.
STEP 4: Program Your Marquee and Add Power
Attached is the arduino code that we used for our marquee.
Adjust our provided code to your purpose and upload your message into your arduino.
Using a battery power adapter, connect your arduino processor to your nine volt battery to power up your marquee!
66 Comments
rsda 2 years ago
regard,
RSDA
alleebell 6 years ago
Blank Display & pgnspace.h not find
I got a new 64x16 LED module from ebay. Followed the instruction here, I got a blank display. Then I find this project https://chioszrobots.com/2014/08/01/64x16-dot-matrix-led-diy-red-arduino-projects-robots/ to test my wiring between the UNO and the LED module. Many thanks to this user, the code displays several fix images on the LED. I was able to confirm that I have no wiring errors.
For users with complier problem similar to pgmspace.h not find, please check this link - https://github.com/mikalhart/galileo-Pgmspace.h/
As of now, I am not able to display text on the LED module. I still troubleshoot the code one module at a time. Tips for those are lost and don’t know where to start. 1) instead of all zero in the buffer[256] array, just enter some data. For example buffer[0] = 1, buffer[1] = 2, buffer[2] = 4, buffer[3] = 8 etc. You should be able to see LED turn on on the top row of the module. 2) complie the link I mentioned earlier. I was so happy to see “I Love You” on the LED module instead of nothing.
madethz 3 years ago
tconstanty 3 years ago
From:
drawChar(56,16,message[count%(sizeof(message)-1)],0,false); // don't work
To
drawChar(56,0,message[count%(sizeof(message)-1)],0,false); // works
To limit the loop, I've put that drawChar() call in a if():
// 2loops
if(count < (sizeof(message)-1)*2){
R. JohnsC 4 years ago
R. JohnsC 4 years ago
kdalfuss 5 years ago
moustick 4 years ago
I try to replicate the original design, so here are the wallmount STL file and the fusion 360 file. So if you want to start from there to make yours.
Good luck and happy printing
dancopy 5 years ago
I would like to make a clock HH;MM;SS with this screen but I do not have enough knowledge; if anyone did, share the arduino code, please!
danielf401 6 years ago
1.Este proyecto es muy interesante y la verdad es que funciona muy bien.estoy interesado en hacer un reloj con temperatura y humedad, con esta placa me podrian ayudar con el codigo???
muchas gracias
dancopy 5 years ago
¡Oi dani! ¿Conseguiste algo?
También me gustaría hacer un reloj con esa pantalla pero no tengo suficiente conocimiento; si usted consiguió, comparta conmigo, por favor! (meuviolino@hotmail.com)
alleebell 6 years ago
FYI - The "ino" file is from Tustin High T-Tech - the code may be a test for the students to find the errors. I find numerous. Enjoy!
alleebell 6 years ago
The for loop inside void loop(); should be i < 7 or 8 NOT < 4. You should play 7, then 8 to see which variable you like.
----------------------------------------------------------------------------
// move the text 7 pixels (not 8 because it looks better) to the left
for (byte i=0; i<8; i++) {
delay(100);
moveLeft(1,0,15);
};
alleebell 6 years ago
This line was missing.
buffer[7+(i*8)]=charbytes[i];
alleebell 6 years ago
Update of blank LED module - I find a line is missing from the posted Arduino file. I added the bold-faced text below in the void drawChar(uint16_t x, uint16_t y, byte n, byte font, boolean inverse) routine. It is now displaying rolling text.
--------------------------------------------------------------------
// addressing start at buffer and add y (rows) * (WIDTH is 64 so WIDTH/8) is 8 plus (x / 8) is 0 to 7
byte *pDst = buffer + (y << 3) + xover8;
for (byte i=0;i<fontrows;i++)
{ // fill up the charbytes array with the right bits
if (font==0) charbytes[i] = pgm_read_byte(&(font8x16_basic[index+i]));
buffer[7+(i*8)]=charbytes[i];
// reverse bit order for fonts 0 and 1
if (font != 0)
{
charbytes[i] = (charbytes[i] & 0xF0) >> 4 | (charbytes[i] & 0x0F) << 4;
charbytes[i] = (charbytes[i] & 0xCC) >> 2 | (charbytes[i] & 0x33) << 2;
charbytes[i] = (charbytes[i] & 0xAA) >> 1 | (charbytes[i] & 0x55) << 1;
};
if (inverse) charbytes[i] = ~charbytes[i];
DougL60 6 years ago
wilson3682 6 years ago
Nice Project Girls. I downloaded the 3D printer files but the wall mount file is not included. Could you please share that file?
Thanks!
majlogon1 8 years ago
I am having an issue with your code: It seems that the latest version of the Arduino IDE will not compile your code with the "#include <pgmspace.h>" in the code. When I commented the line out, the program will compile, but all I get is a solid red marquee upon upload. Any suggestions?
cafer 6 years ago
ı can not dowload #include <pgmspace.h>.So, this program give a eror
can you publish on a link
jack.fuller.562 8 years ago
I found that I do not need the R2 = pin 11 connection on Arduino; when removed, the code works fine. I respect the work and effort that went into its code development. Nice job.