New beta release "DMD2" Library

The Dot Matrix Display (DMD) is a 32x16 array of high-brightness LEDs for visually striking effects. [Product Page]
h4rm0n1c
Posts: 2
Joined: Thu Jun 21, 2018 2:29 pm

Re: New beta release "DMD2" Library

Post by h4rm0n1c » Thu Jun 21, 2018 3:36 pm

Hello!

I've been appointed as the maintainer for the DMD2 Library on Github.

I was responsible for the addition of esp8266 support about 2-3 years back.

Your ideas and improvements would be very welcome, I myself noticed the issues with variable width fonts quite a while back but did not know what to do about it.

My first goal is to merge in all changes I have made in the last 2 years (not many, life has kept me very busy until recently...), release as 0.0.4 and hopefully have it available in both the arduino library manager and platformio within the next few days to a week.

I've created a milestone on github for variable width font support. Hopefully we can get this working with all supported platforms (I can test AVR and ESP8266, SAM on the other hand...)

@Brissieboy, would you like me to merge your modifications for font handling after I test it out for myself?

Cheers!

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

Re: New beta release "DMD2" Library

Post by Brissieboy » Fri Jun 22, 2018 1:30 am

Hi h4rm0n1c. and welcome aboard.
I have no problem with you using my mods and am happy to be able to contribute something. But before you do, just make sure you are happy with what I have done and how.
I haven't done much with DMD2 because I started pre-DMD2 with the original DMD and have made quite a few changes to that to suit my own needs. Just too much of a hassle to try to incorporate those into DMD2 when it isn't really necessary.
But great to see that DMD2 will once again get some attention.

thinnair
Posts: 3
Joined: Mon Jun 18, 2018 4:32 am

Re: New beta release "DMD2" Library

Post by thinnair » Sat Jun 23, 2018 10:03 am

Hi everyone,

I'm trying to store a large array of strings in the program memory and retrieve it using avr/pgmspace on an arduino mega (softdmd). I've copied this code across from an arduino uno where it functioned using the stable DMD library.

Could anyone let me know if this is possible with the DMD2 beta library or if there are any workarounds required?

Thanks

Code: Select all

char buffer[6];
 
const char s1[] PROGMEM =   "String";
const char s2[] PROGMEM =   "String";
const char s3[] PROGMEM =   "String";
const char s4[] PROGMEM =   "String";
const char s5[] PROGMEM =   "String"; etc

PGM_P const strings[] PROGMEM = {
s1, s2, s3, s4, s5
};

void loop(void)
{
 
 for (int i = 0; i < 5; i = i + 1)
 {
	strcpy_P(buffer, (char*)pgm_read_word(&(strings[i]))); 
        dmd.drawString( 0,  0, buffer, 6 );
        delay(delayvalue);
        dmd.clearScreen();
}
}

h4rm0n1c
Posts: 2
Joined: Thu Jun 21, 2018 2:29 pm

Re: New beta release "DMD2" Library

Post by h4rm0n1c » Mon Jun 25, 2018 1:46 am

DMD2 has progmem string handling support.
Works just fine.
The beta status is more to do with potential bugs and features that haven't been implemented yet.
You may have to make some changes because I'm pretty sure DMD2's support for progmem is actually better than DMD's IIRC.

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

Re: New beta release "DMD2" Library

Post by Brissieboy » Mon Jun 25, 2018 6:34 am

And I think you may need to increase the size of you buffer to 7 - the length of "string" plus the terminating null.

HenTech
Posts: 1
Joined: Wed Jun 27, 2018 1:24 pm

Re: New beta release "DMD2" Library

Post by HenTech » Wed Jun 27, 2018 1:33 pm

Hi guys,

I'm new to DMD2 libraries i was wondering is it possible to use numbers in a bigger size than 7x15.
I'm wanting to make them approx 14x25 using multiple P10 digits. ive developed my own custom font for numerical values only using a bitmap converter. but its using more than 1 byte to draw it causing issues, also using an arduino uno

Regards HenTech

plito
Posts: 19
Joined: Sat Sep 23, 2017 8:24 pm

Re: New beta release "DMD2" Library

Post by plito » Mon Aug 20, 2018 6:37 pm

H4rm0n1c, Brissieboy. Your library is great. But I still have a problem with this. The scrolling is too slow with more than 2 panels. Is there any posibility to add the DMD library functions " drawMarquee" and "stepMarquee" to your library? They work fine scrolling text in many panels. Unfortunately I don´t have enough knowledge to do it by myself , I´d appreciate you could help me ( and I suppose many people ) adding those functions to the DMD2 library.
Thanks

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

Re: New beta release "DMD2" Library

Post by Brissieboy » Mon Aug 20, 2018 10:44 pm

Scrolling with multiple displays does not perform very well the way the DMD2 library currently works at the moment. It is a result of the way it works, not the actual scrolling function.
I would suggest you use the original DMD library. It certainly lacks some of the features of the DMD2 library, but it does perform fairly well with what it does and within its limitations. It is driven by interrupts so things like updates and scrolling are not impacted by the number of displays (as long as you don't try to use too many).

Post Reply