Arduino Video Display Matrix

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
I have been wanting to do something special and different as a display. Last year I did a lot of looking and found something I thought I could achieve, Peggy 2.0 from Evil Mad Scientists. This is a 25x25 monochrome LED matrix that is powered by an Arduino and the LED's are driven by 2 LED current sinking IC's. I like this for one simple reason, a user figured out how to display a video feed at a good frame rate on this device.

As this is an open source system I downloaded the schematic and built one myself (on veroboard) and created a small (3mm LEDS) matrix to test it on. I am now testing different LED types to figure out the ones I will use in my outdoor display matrix (1m x 1m).

Turns out that getting the video to run on this setup was a lot more difficult than I thought. The person who did it originally, did it on a Mac and the software they used had no equivalent on Windows (which is what I have). But by looking at heaps of examples I have designed a processing script that will work.

Now I come to my dilemma. I want this video display to be part of a standard light string display that is controlled by a computer. Am I going to have to write my own sequencing system to use the video? Or can the sequencers control other programs? Or do they have a scripting language that would allow me to run my video from inside the sequencer?
 

fasteddy

I have C.L.A.P
Global moderator
Joined
Apr 26, 2010
Messages
6,648
Location
Albion Park NSW
LSP, Vixen and LOR S2 all allow the running of scripts on the time line within each program so you can operate other software and equipment. This is how the LEDTRIKs panel works so I believe so I cant see why you couldnt operate your panel that way.
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
Things have changed!
Due to a new library on the Arduino forum I have changed the driving system for my matrix. As an off shoot I will now be able to control a bigger matrix (I was thinking 25x25 was a little small). Using this new library I can get 1 Arduino to control 64x16 LED's with 32 levels of brightness at 50Hz. I will be able to make these modular. Allowing me to make a 64x64 single colour matrix. Or I could make a 32x32 RGB matrix, also at 32 levels of brightness (For each colour) at 50Hz.

Due to this change. I don't think I will be able to make both the video display and the string display controller. I am choosing to concentrate on the video display. I think its cooler and I have wanted to make one for a long time! It also means I will not have to intergrate it with a light sequencing program. I will have another year to attempt that now. Instead I will be able to use the Proccessing sketch I have already developed to downscale the video and stream it Serially to the Arduino modules.

I think it will look alright with a static string light display with a Video Display running. :)

I am now at a cross roads. I was just about to build the matrix before I made this design change. That got put off to investigate this way of doing it. Now I have to choose. Do I make a Mono colour Matrix (probably Green) at 64x64 or do I go Colour at 32x32???

Any Opinions??
 

fasteddy

I have C.L.A.P
Global moderator
Joined
Apr 26, 2010
Messages
6,648
Location
Albion Park NSW
I personally prefer colour but it really depends on what you want. All I want to see is a video of your display when its all up and running :D
 

Superman

I Have C.L.A.P and its very infectious
Global moderator
Joined
May 29, 2010
Messages
1,778
Location
Ipswich-QLD
I'm pretty sure if I set it up as mono I would only end up re-doing it in full color in the future. Especially for Video
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
SuperMan said:
I'm pretty sure if I set it up as mono I would only end up re-doing it in full color in the future. Especially for Video
My only concern is that I will have 4 times the dots with mono than colour. Resolution at this level plays a big factor in being able to recognise what is actually on the display.

For example here is my test rig:
This is the Bad Apple video scaled to 16x16 monochrome at 15fps/32 brightness levels 50Hz.
ShiftMatrix Streaming LED Video(Bad Apple)

Ignore the horizontal band. Its on breaboard and I couldn't get the 8x8 matrix's to line up.
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
Ok. So I ordered some RGB 8x8 Matrix boards off ebay so I could try out colour on this setup. You think I would have learnt by now and stopped testing and started building....Oh well. Ended up taking for ever for them to get here. And there was a steep learning curve to get good looking colour to work with the program but I managed it. Below is the result.
16x16 RGB LED Arduino Streaming Video (Much Better Colours)
Note: This is a 16x16 RGB matrix with 32 brightness levels running at 50Hz.(I am using a paper diffuser otherwise it was FAR to bright at so close a distance)

The problem with this was COST! Those RGB premade Matrix boards are expensive. Ontop of that the resolution is quite low. Even if I ramped up to 32x32 RGB I think it would be difficult to make out what was going on. (Its hard to see what is going on in the video above. Sorry) So with these in mind I am still looking to make it as a 64x64 Mono matrix. As I believe the increase in resolution will make up for the lack of colour.

I did like using the 5mm 8x8 LED matrix boards though. Pity I can not find a cheap source for these in GREEN. I would love to do this in green but I am thinking its going to have to be RED as I can source them at a fairly cheap rate. I could make my own matrix but seriously, at 64x64 thats 4096 LEDs. Thats 8192 solder connections!! Even using the pre made matrix boards its gonna be 1024 soldering connectings. Although I think I can live with that. So off parts hunting I go.

Sadly I just don't think I am gonna make this christmas. DARN! I thought this year for sure!
 

Mike

CLAP infected!
Joined
Oct 22, 2010
Messages
280
Location
Rockingham, WA
Have you got any pics of the pre made Matrix module you used without the lights off?
Want to see if its the one i was looking at
 

fasteddy

I have C.L.A.P
Global moderator
Joined
Apr 26, 2010
Messages
6,648
Location
Albion Park NSW
Very nice work, these look similar to the ones Ray sells, Great to see you got it going. Do you plan on releasing the code and design for others to use
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
Hi Mike. The modules I used were 8x8 RGB 5mm. http://www.ebay.com.au/itm/150636301007
I linked 4 together (2x2) to get get the 16x16 matrix used above (and alot of wire on a breadboard).
Sorry I don't have any other pics, but there are some in the ebay link.

G'day FastEddy. Absolutely planning to release all the info for it. I currently have a thread on the arduino forum and I am running a project blog on wordpress (but really not much on there yet). Not really much to it though. Its just a simple matrix with one 16channel IC (Mbi5026) through transistors running the rows. Three of the same IC running the columns. All being co-ordinated by an Arduino running the ShiftMatrixPWM library from the forums.

At the moment it is being run by a proccessing script that is converting video frames on the fly and sending it down the com port as serial data.

Its a bit late for the christmas displays this year but if anyone is interested in the full details now then PM me or respond on here.
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
Hello everyone, as usual for me, long time between posts. Last year I did not succeed in bringing about my video display. And I am sad to say I doubt I will have one this year either but I still hold hope that I may get it done so I am not counting myself out just yet.

I have made significant progress on the above work. I have moved away from making my own matrix (I tried making a small one to the scale I wanted and it took weeks to build) and have found a pre made matrix that suited my purpose.
http://www.freetronics.com/collections/all-products/products/dot-matrix-display-32x16-red#.UHi5m1HHXeQ
This 32x16 premade module can be run using similar techniques to what I was using previously. I have adapted it over and have got some very good results. The Arduino is capable of running two of these modules with PWM.

DmdPWM 2 DMD's across on Vimeo
This is a video of a fire being rendered through a custom proccessing sketch and through the Arduino onto the display. The above display is 64x16 mono red at 50Hz with 32 levels of PWM. I plan to build 3 more like it to give me a total of 64x64. These modules when given proper power are EXTREMELY bright, so much so that filming them at close range is not possible. The above video is in low power mode (actually leaching off the Arduino's power).

I think the end result should look very nice.

The libraries I have built to run this are up on the internet but in varying places (partly on the freetronics forum and the Arduino forum).
Artduino DMD library:
http://forum.freetronics.com/viewtopic.php?f=26&t=278&start=20#p2133
This is the Proccessing sketch for converting the video file:
http://arduino.cc/forum/index.php/topic,72474.msg609151.html#msg609151

Those are the basic pieces but if you want the full breakdown to make this all work let me know and I will put it all together. It doesn't exist anywhere as a detailed step by step guide. Was going to that once I finished. :p
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
I have obtained a USB to Serial adapter and have now tested connecting the TX of that to the RX of 2 Arduino's. This is what I have been banking on the whole time and it worked perfectly. Each Arduino waits for an assigned start byte and then acts on the bytes following the start byte. It then counts the bytes until it has a full module worth and displays them. The next start byte is received by the next Arduino and the sequence is repeated. This is how I plan to scale up to having 4 Arduino's working together, each controlling 2 DMD's. Thereby giving me a 64x64 resolution LED video screen.

I have ordered more panels (10 infact) and I am waiting for them to be delivered. Once I have them I will be attempting to scale up to full size.

In the mean time have a look at the 2 videos below. I used my camera phone and it is not great at capturing the LED's as they are quite bright. So I apologize for the image quality.

DMD x 2 in 32x32 with separate Arduinos (light on) on Vimeo


DMD x 2 in 32x32 with separate Arduinos (light off) on Vimeo
 

milamber79

New elf
Joined
Aug 24, 2011
Messages
11
Hi Kel, Yes I plan to show a "step by step" of how it all goes together. Currently it has been a hodge podge of testing different things in different was. Honestly I think if I tried to write it all up it would be an unintelligible mess. But once I hammer out how to make the 64x64 I will put it all up with the details and code to make it all work.

Just waiting on the parts now so I can do more test :)
 
Top