New beta release "DMD2" Library

The Dot Matrix Display (DMD) is a 32x16 array of high-brightness LEDs for visually striking effects. [Product Page]
ledsarecool
Posts: 18
Joined: Tue Aug 04, 2015 5:45 pm

Re: New beta release "DMD2" Library

Post by ledsarecool » Fri Sep 11, 2015 7:05 am

Thank you.

vishalgupta1991
Posts: 9
Joined: Fri Oct 30, 2015 12:02 pm

Re: New beta release "DMD2" Library

Post by vishalgupta1991 » Fri Oct 30, 2015 12:22 pm

Hi Angus,
i am using DMD2 library with arduino uno on (p10) dot matrix display 192*64.
And i am getting problem of flickering on dot matrix display, i have tried everything on internet but not getting help from anywhere.
So, I upload my progam for better understanding :
#include <SPI.h>
#include <DMD2.h>
#define DISPLAYS_WIDE 6
#define DISPLAYS_HIGH 4
#define WHITE 0xFF
#define BLACK 0
#include "Arial_black_16.h"
#include "SystemFont5x7.h"
SoftDMD dmd(DISPLAYS_WIDE,DISPLAYS_HIGH);
DMD_TextBox box(dmd, 0, 0, 16, 32);
char Msg1[21],Msg2[19],Msg3[21],Msg4[20],Msg5[19];
void ScanDMD()
{
}
void setup(void) {
dmd.setBrightness(255);

dmd.begin();
}
void loop(void)
{
dmd.selectFont(Arial_Black_16);
Msg1[0]=' D';
Msg1[1]='E';
Msg1[2]='L';
Msg1[3]=' ';
Msg1[4]='E';
Msg1[5]='L';
Msg1[6]='E';
Msg1[7]='C';
Msg1[8]='T';
Msg1[9]='R';
Msg1[10]='O';
Msg1[11]='N';
Msg1[12]='I';
Msg1[13]='C';
Msg1[14]='S';
Msg1[15]=' ';
Msg1[16]='&';
Msg1[17]=' ';
Msg1[18]=' ';
Msg1[19]=' ';
Msg1[20]=' ';
Msg2[0]='P';
Msg2[1]='R';
Msg2[2]='I';
Msg2[3]='V';
Msg2[4]='A';
Msg2[5]='T';
Msg2[6]=' ';
Msg2[7]='F';
Msg2[8]='A';
Msg2[9]='T';
Msg2[10]='.';
Msg2[11]=' ';
Msg2[12]='C';
Msg2[13]='A';
Msg2[14]='T';
Msg2[15]=' ';
Msg2[16]='H';
Msg2[17]='I';
Msg2[18]=' ';
Msg3[0]=' ';
Msg3[1]='W';
Msg3[2]='E';
Msg3[3]='L';
Msg3[4]='C';
Msg3[5]='O';
Msg3[6]='M';
Msg3[7]='E';
Msg3[8]='S';
Msg3[9]=' ';
Msg3[10]='T';
Msg3[11]='O';
Msg3[12]=' ';
Msg3[13]='Y';
Msg3[14]='O';
Msg3[15]='U';
Msg3[16]=' ';
Msg3[17]=' ';
Msg3[18]=' ';
Msg4[0]='D';
Msg4[1]='O';
Msg4[2]='T';
Msg4[3]=' ';
Msg4[4]='M';
Msg4[5]='A';
Msg4[6]='T';
Msg4[7]='R';
Msg4[8]='I';
Msg4[9]='X';
Msg4[10]=' ';
Msg4[11]='1';
Msg4[12]='9';
Msg4[13]='2';
Msg4[14]='x';
Msg4[15]='6';
Msg4[16]='4';
Msg4[17]=' ';
Msg4[18]=' ';
Msg4[19]=' ';

Static(1000000);

dmd.selectFont(System5x7);

}

void Static(byte Speed)
{
dmd.clearScreen();
dmd.drawString(0, 48,Msg1);
dmd.drawString(0, 32,Msg2);
dmd.drawString(0, 16,Msg3);
dmd.drawString(0, 0,Msg4);
delay(Speed*1000);
}

Brissieboy
Posts: 133
Joined: Fri Sep 20, 2013 7:25 am

Re: New beta release "DMD2" Library

Post by Brissieboy » Sat Oct 31, 2015 6:58 am

vishalgupta1991,
You will be running out of processor time trying to drive 24 DMDs.
Try scaling it back to about 6 DMDs and see how it goes.

jardik
Posts: 2
Joined: Sat Oct 31, 2015 11:47 am

update

Post by jardik » Sat Oct 31, 2015 11:49 am

pls update this library, i need the function box marquescroll to works.. :),thx

Loki
Posts: 18
Joined: Mon Jul 06, 2015 7:12 pm

Re: New beta release "DMD2" Library

Post by Loki » Sat Oct 31, 2015 12:15 pm

what do you mean by box marquee scroll?

jardik
Posts: 2
Joined: Sat Oct 31, 2015 11:47 am

Re: New beta release "DMD2" Library

Post by jardik » Sun Nov 01, 2015 4:35 am

Loki wrote:what do you mean by box marquee scroll?
i mean, scroll function like "box.scrollX"..
i need a box function from marque like "box.marqueeScrollX".. not using "dmd.marqueeScrollX" :)

Loki
Posts: 18
Joined: Mon Jul 06, 2015 7:12 pm

Re: New beta release "DMD2" Library

Post by Loki » Sun Nov 01, 2015 7:51 am

you mean something like this: http://youtu.be/jRA_y-oAJYA? scrolling in a part of DMDs?

vishalgupta1991
Posts: 9
Joined: Fri Oct 30, 2015 12:02 pm

Re: New beta release "DMD2" Library

Post by vishalgupta1991 » Tue Nov 03, 2015 10:51 am

Hi, Brissieboy
First of all thanks for replying. :)
Yes you are right it don't fliker on 6DMD's. Now what kind of changes I have to do for 24 DMD's.
I am also working on node.js for displaying image on dot matrix display 384x16 matrix, but i'm only able to get png image on 224x16 matrix(if dot matrix is conneced in a series). And i wish to get image on 384x16 matrix,but every time i have tried on this matrix i only got garbage value on the display. Plzzz Help.
I am using with arduino mega 2560.
Here's my code:

#include <DMD.h>

#include <SoftwareSerial.h>
#define SCREEN_WIDTH 384
#define SCREEN_HEIGHT 16
#define BUFLENGTH 6144

#include <SPI.h>
#include <DMD.h>
#include <TimerOne.h>

#define DISPLAYS_ACROSS 12
#define DISPLAYS_DOWN 1
DMD dmd(DISPLAYS_ACROSS, DISPLAYS_DOWN);

void ScanDMD() {
dmd.scanDisplayBySPI();
}


char buf[BUFLENGTH];
int bufCount;

void setup() {
Serial.begin(9600);

Timer1.initialize(4000);
Timer1.attachInterrupt(ScanDMD);

dmd.clearScreen(true);
}

void loop() {
if (Serial.available() > 0) {
serialParse();
}
}

void serialParse(void) {
bufCount = 5;
bufCount = Serial.readBytesUntil('\n', buf, BUFLENGTH);

if (bufCount > 0) {
parseBuffer(buf);
}
}

void parseBuffer(char* buf) {
dmd.clearScreen(true);

int i = 0;

for (byte y = 0; y < SCREEN_HEIGHT; y++) {
for (byte x = 0; x < SCREEN_WIDTH; x++) {
if ((char)buf == '1') {
dmd.drawLine(x, y, x, y, GRAPHICS_NORMAL);
}
i++;
}
}
}
Thanks in advance.

Loki
Posts: 18
Joined: Mon Jul 06, 2015 7:12 pm

Re: New beta release "DMD2" Library

Post by Loki » Tue Nov 03, 2015 1:12 pm

Hi, i encounter similar problem, bu i can only display on 196x16, same using arduino mega (on uno it is less DMDs), i think there is not enougth ram an computing power, try using arduino due (i am waiting for mine now, so i will let you know)

angusgr
Freetronics Staff
Freetronics Staff
Posts: 853
Joined: Tue Apr 09, 2013 11:19 pm
Location: Melbourne, Australia
Contact:

Re: New beta release "DMD2" Library

Post by angusgr » Fri Nov 06, 2015 12:04 am

I think you're correct that this is stretching the limits of what a small microcontroller can output. Trying Due/EtherDue may help.

Post Reply