New beta release "DMD2" Library

The Dot Matrix Display (DMD) is a 32x16 array of high-brightness LEDs for visually striking effects. [Product Page]
Post Reply
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 » Sun Dec 07, 2014 10:32 pm

Hi Hobohome,

Yes, this sounds like it should work fine. Please let us know how you go.

Angus

Hobohome
Posts: 9
Joined: Sat Dec 21, 2013 12:39 am

Re: New beta release "DMD2" Library

Post by Hobohome » Mon Dec 08, 2014 2:28 am

Yep - that worked just fine .... except ... DMD2 does not yet have a Marquee function :-(
Still - I have improvised and while not looking as smooth as it did, it now works with ethernet.

Any idea when the DMD2 lib will be updated to include Marquee support??

Thanks

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 » Tue Jan 20, 2015 5:05 am

Just (finally) pushed some updates to the DMD2 library on github. These now include a set of scroll & marquee functions that apply to the entire display area, and there's a "Marquee" demo sketch that randomly moves text up, down, left & right.

Not entirely happy with the horizontal scrolling performance, and still needs a few more features (test patterns & XOR mode) - but it should be ready to come out of beta soon.

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 » Wed Jan 21, 2015 12:18 am

More updates to DMD2 today, including some changes made by github user "Bwooce" (thanks Bwooce!) who added support for the OR/XOR/NOR graphics drawing modes, similar to the older DMD library.

Hobohome
Posts: 9
Joined: Sat Dec 21, 2013 12:39 am

Re: New beta release "DMD2" Library

Post by Hobohome » Thu Jan 22, 2015 5:41 am

Where should we supply feedback about this new version (I have a few issues).

Cheers

RuralGeek
Posts: 10
Joined: Tue Aug 27, 2013 3:57 am

Re: New beta release "DMD2" Library

Post by RuralGeek » Thu Jan 22, 2015 7:15 am


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 » Thu Jan 22, 2015 11:47 pm

Yes, github issues is great or just posting here is fine too. Please let us know what you find!

Hobohome
Posts: 9
Joined: Sat Dec 21, 2013 12:39 am

Re: New beta release "DMD2" Library

Post by Hobohome » Fri Jan 23, 2015 6:34 am

OK - disclaimer first...
My setup uses non-standard pins due to a conflict with the ethernet port on an EtherTen - I have not yet tried the DMD with power supplied to the DMD board.

My project is a clock for my workshop. It gets the time from an internet server and displays it digitally with moving seconds racing around the outside of the DMD (a bit like the Jaycar clock that I borrowed the idea from). It makes an HTTP call to another Arduino every 10 minutes to get some data (tank levels, outside temperature, water flow rates etc) then scrolls these across the DMD every few minutes. It also randomly breaks into a Game of Life - just for kicks :-). It adjusts its brightness based on the time of day (because the workshop looks like it is on fire at night when the clock is at full brightness).

Because Marquee function was missing, I was simply moving the text display one letter at a time - so was very keen to try the new version in the hope that it would allow me to smoothly move the text across the display.

Issues:
1. If the brightness is set to anything less than 255, the display shows random pixels.
2. The need to set the display with to a number greater than the actual number of displays of course changes the coordinates for every operation.
3. (as mentioned in the release notes) the horizontal scroll performance is not good - with a string any longer than a few words it is not really usable.

I really appreciate the work that has gone into this new lib and I think it is looking great. If I had the skills, I would gladly offer my time to the project. To those who have put the time into this, please accept my thanks.

Hobohome.

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 » Tue Jan 27, 2015 12:26 am

Hi Hobohome,

I'm actually glad you're testing with a non-standard pinout, as that's one of the things I want DMD2 to be able to support.
Hobohome wrote: 1. If the brightness is set to anything less than 255, the display shows random pixels.
Which pin are you using for brightness? Can you actually tell me the full pin assignments you're using?
Hobohome wrote: 2. The need to set the display with to a number greater than the actual number of displays of course changes the coordinates for every operation.
This is so that you can have a marquee where some of the text is off-screen? If all the text is on-screen you don't need this. However I suppose many people want to have a longer marquee string than the screen size, I hadn't really thought through this.
Hobohome wrote: 3. (as mentioned in the release notes) the horizontal scroll performance is not good - with a string any longer than a few words it is not really usable.
Yeah, this is a big one. Maybe DMD2 needs to go back to the simpler "marquee" model in DMD, so that you can have a long string that readily marquees.

(At the moment the two ways to get good scrolling perfomance are - scroll vertically, scroll horizontally in multiples of 8 pixels. I definitely want to improve performance when scrolling by 1 pixel, though.)

Angus

Hobohome
Posts: 9
Joined: Sat Dec 21, 2013 12:39 am

Re: New beta release "DMD2" Library

Post by Hobohome » Tue Jan 27, 2015 3:48 am

Thanks for the reply,
Here is my pin config

#define DMD_PIN_NOE 6
#define DMD_PIN_A 9
#define DMD_PIN_B 8
#define DMD_PIN_SCK 7
#define DMD_PIN_CLK 2
#define DMD_PIN_R 4

SoftDMD dmd(DISPLAYS_WIDE,DISPLAYS_HIGH,DMD_PIN_NOE,DMD_PIN_A,DMD_PIN_B,DMD_PIN_SCK,DMD_PIN_CLK,DMD_PIN_R); // DMD controls the entire display

I feel that a simple, smooth horizontal scroll that allows for messages that are much longer than the display is an important feature.
Happy to help in any way I can.

Cheers

Post Reply