Shop OBEX P1 Docs P2 Docs Learn Events
DMX Controlled Bookshelf in my living room (LEDs & TLC5940) — Parallax Forums

DMX Controlled Bookshelf in my living room (LEDs & TLC5940)

Timothy D. SwieterTimothy D. Swieter Posts: 1,613
edited 2008-12-22 11:59 in Propeller 1
I have finally completed a project that I have had in my imagination since May!· This is my living room complete with DMX controlled LEDs mounted in between my bookcases.·
Here is a link to a video I posted on YouTube.· Yeah, I know, I used TSO as the music.· I like their tunes and since it is Christmas time, I found it appropriate to have my first musical sequence fit with the holidays.· I think my digital camera is sensitive to the blue since the image whites out when the blue is intense.· The color saturation is really good, you will have to believe me or see it in person sometime.
Back in the spring my wife and I moved to Hong Kong.· We ended up furnishing our flat with mostly IKEA furniture.· Our living room was decorated a little more modern than we would have chose.· One night I decided we need a little more color and a little more kinetic energy in the place.· What you see in the video is the solution to our ‘mood’ lighting.
Technical Details:
I am making my post in this forum because the heart of the project is the Propeller.· I used a Propeller Protoboard as the controller.· I wanted to make a PCB, but my budget only had money for one PCB design.· I soldered connectors and the simple circuit for receiving DMX (a standard lighting control protocol) to the protoboard.· There is also a couple status LEDs.· In the near future I will be adding a switch and some sort of display (LEDs or LCD or VFD).
The software for the controller is partially written in SPIN and partially written in ASM.· The final code will have several modes that the LED Towers can operate in.· One mode, of course, is where the controller will received DMX.· The DMX will control the intensity of the different LEDs - this is·what was done for the·video.· The other modes will be various algorithmic routines that change the colors or keep a solid color.· The user interface that I will add will give the freedom to adjust the look, max intensity and rate of change and store looks.
The Prop is running at 80MHz.· The program currently consumes 6 cogs.· One cog is used for the grey scale clock and blank of the TI TLC5940s on each tower (one cog for each tower).· Then there is one cog for each tower shifting out the data based on a buffer.· Then there is the ‘main’ code that changes the mood and stuffs data into the buffers for sending to the towers.· The last cog is the DMX receive code.
The controller is going to be mounted and hidden in the center bookcase.· Ribbon cables run from the controller to each tower.· I want to run the protoboard off of the 12VDC supply I bought for the whole system, but I should build a voltage regulator to get the voltage down for the protoboard.· Right now I run the board at 7.5VDC and it gets hot so I dare not run it with the 5V regulator dropping from 12V!
I designed a 16 channel, RGB LED, controller board.· The board uses three TI TLC5940 chips.· One chip for red, one for green and one for blue.· The chip is really easy to use and to work with.· At the moment my code only send data but not dot correction.· Future revisions of my software will allow for shifting both sets of data out.· Also the current grey scale clock starts running and keeps going forever.· I want to add hooks to pause the grey scale or to force the blank pin high.
There have been others on the forums that have used the TLC5940.· I used their code for inspiration, but in the end pretty much wrote my own software.· The grey scale clock is in ASM because it was easy.· The serial shifting of data is currently in SPIN.· I was going to change it to ASM for speed, but when I checked frame rates I was getting 40+ frames/sec in SPIN.· That is enough for my needs right now.· The software came together rather quickly.· The power of multiple processors really allows for quick writing of software.· it is natural to split tasks apart and make the code much more readable.
The LEDs are a flexible PCB with RGB LEDs soldered on it.· This is a product I bought from one of my vendors in China.· It is a neat product.· It is designed to run with 12 VDC.· The product comes in long lengths and is cuttable every three LEDs.· There are 16 groups of 3 LEDs in each tower.· Each group is wired to the controller.· So that is a total of 96 RGB LEDs.·
The two towers comsume·96 channels of DMX.· I used Vixen Lights to program the show.· Vixen Lights is neat, FREE, software.· I happen to have an Enttec OpenDMX device from my ‘day job’ and it just so happens Vixen Lights has a driver for it.· The TLC5940 allows for 12 bit of control of the LEDs, but I only used the upper 8 bits because that is what DMX provides.
When I made the PCB I had five of them produced.· I used PCBCart.· They have a good service, lots of flexibility.· The price is similar to prototyping services in the USA, maybe slightly cheaper.· I used two of the five boards in my installation.· There are several changes I would make to the boards if I was to build them again based on what I learned from assembling these baords.··If anyone is interested in purchasing the three other boards from me, please send me a PM and we can work out the details.· I don't have any plans for them at the moment.· The boards would be great for building your own LED display or for simply experimenting with the TLC5940.
Enjoy the pictures.· I hope I can inspire you to work on your own projects.· Have a great Chrismtas everyone!!
IMG_3282:· Close shot of the 16 Ch. RGB LED driver board I designed.· It has the TI TLC5940 chip.· The other parts I bought locally in Hong Kong.
IMG_3314:· The controller mounted and wired to the back of the white material used inbetween the bookcases
IMG_3323:· Testing on my living room floor before 'final' installation.
IMG_3328:· Looking down one of the LED towers.· The LEDs are about 4 inches behind the front diffuse layer.· The color range is amazing, vibrant and saturated.· It looks great in person.· I will have to try and take some better pictures and/or video.
IMG_3330:· The Propeller Protoboard with the initial circuitry.· I don't have all the I/O from the TLC chip wired, just the essentialls at the moment.· The ribbon cable has all the·signals so I could monitor for errors if I needed to.· A cable with the 5 pin XLR (DMX connector) connects to the top right.


▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Timothy D. Swieter
tdswieter.com
One little spark of imagination is all it takes for an idea to explode

Post Edited (Timothy D. Swieter) : 12/15/2007 11:55:47 PM GMT
1024 x 768 - 132K
1024 x 768 - 85K
1024 x 768 - 108K
1024 x 768 - 50K
1024 x 768 - 207K
«1

Comments

  • mparkmpark Posts: 1,305
    edited 2007-12-15 07:38
    Very nice!

    I showed the video to my wife and she said "Don't even think about it" [noparse]:)[/noparse]
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-15 07:51
    Thanks mpark.

    I had to woo the housing authority (my wife) to be sure it was ok. There are (and will be more) modes where the lights are soft and slowly morphing from one color to the next. It is a good mood light but a heck of a converstation piece to show off when guests are over.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2007-12-15 08:14
    All I can say is, "Wow!" It's not only a tour de force technically, but your choreography (or should I say "lumenography") with the TSO piece is inspired!

    -Phil
  • OzStampOzStamp Posts: 377
    edited 2007-12-15 10:51
    Hi Timothy.

    awesome setup... now all you need to add is some Quad ESL electrostatic speakers.+ Quad Amps..
    Some cool music from ·Mike Oldfield .."Tubular bells" or Jean Michelle Jarre "Magnetic Fields" and you can
    totally 'SPIN OUT" ..

    That is a neat setup.. well done.

    Had a peeky boo at the tube movie .. cool.

    Cheers·· Ron Melbourne OZ..
  • RaymanRayman Posts: 14,364
    edited 2007-12-15 13:23
    That's very nice looking! Good job. I like the diffusers...

    Does it automatically do the colors? Or, is it arranged? I think with Paul's simple audio analyzer (or an FFT), you could make it automatic...

    I was pondering a similar thing to make my own "Ambilight" beside my TV...
  • BTXBTX Posts: 674
    edited 2007-12-15 13:38
    Hi Timothy !!

    Well done....... very impressive project !!!!
    Really it looks great... ( I love to play with the LED's too )
    It looks like the "LED tubes" used in the shows.
    Congratulations.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Regards.

    Alberto.
  • DynamoBenDynamoBen Posts: 366
    edited 2007-12-15 18:29
    Nice Job!

    BTW I see you used Vixen. It warms my heart that the many long nights helping develop the OpenDMX plugin for Vixen were used for such a cool project.

    If anyone else is interested in Vixen and/or DIY computer controlled Christmas lighting please do stop by. I'm the moderator for the DMX forum.

    http://www.christmasinshirley.com/forum/index.php
    ·
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-16 06:38
    Thanks guys for all the great feedback. It was a blast doing the programming and designing of the light show. I am looking for another piece of music to do a new show to. Probably a non-Christmas piece.

    The show in the video is all program/scripted/designed by me. There are several features that I am considering for the future. The features will get implemented as I need them or as I need a programming challenge. The features include:

    -user interface
    -various algorithmic changes of lights that 'free run' based on rate and intensity values set by the user
    -beat/music detector using something like an FFT as mentioned above
    -storing of programs on the controller (recording of DMX?)

    I think it was a great project because it was fun to do and it was practical. Thanks DynamoBen for the OpenDMX driver. I didn't realize you created it. It is a great addition to Vixen Lights. I have a coworker that wishes there was a driver for the Vellum DMX device.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode
  • DynamoBenDynamoBen Posts: 366
    edited 2007-12-16 17:50
    Timothy D. Swieter said...
    I have a coworker that wishes there was a driver for the Vellum DMX device.

    I've had a couple of requests for it. Have this person stop by the forums I listed above and post the request in the Vixen Plugins forum. Someone should be able to do it in the "off season" (post Christmas). All we ask is that they be willing to verify functionality on the device. If your coworker is a C# programmer the framework for creating a plugin is free and available from the forum.

    Personally I have a request in to create an ACN plugin. Not the full ACN version but the lightweight streaming DMX version. Wiznet + ACN plugin = fun. [noparse];)[/noparse]

    Post Edited (DynamoBen) : 12/16/2007 5:55:31 PM GMT
  • ColeyColey Posts: 1,110
    edited 2007-12-16 18:38
    Hi Timothy, Kudos to you, that is an absolutely fantastic demo!!!
    Unfortunately my wife gave the same answer as Mpark's wife cry.gif

    Regards,

    Coley
  • ZootZoot Posts: 2,227
    edited 2007-12-16 18:49
    Fantastic construction. What did you use for the diffuser and panels of the towers? Looks like a kind of translucent ribbed sintra.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    When the going gets weird, the weird turn pro. -- HST
  • DynamoBenDynamoBen Posts: 366
    edited 2007-12-16 19:21
    The diffusion material looks to be corrugated plastic sheet. My question is where he found such long sheets.
  • hal2000hal2000 Posts: 66
    edited 2007-12-16 21:33
    Very good!
    A good job

    si se
  • Shawn LoweShawn Lowe Posts: 635
    edited 2007-12-16 21:51
    That is TRULY inspirational!!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Shawn Lowe


    Maybe I should have waited to do that......
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-16 23:14
    Thanks again guys. I love my wife. She always encourages me and believes in my vision and goes along with it even if she doesn't understand it. Often times I am working on a project. Usually the end result of some fancy code I write is a blinking LED. When I was coding my DMX routine I got excited becasuse the activity LED was blinking. When I got my WIZnet module working I was excited because the LED is blinking. Surely my wife thinks I am insance because all she sees is a blinking LED. LOL!

    The diffuser is a white plastic sheet of sorts. It is corregated. I don't know how else to descibe the material. It came with the IKEA bookshelf and is try fold. The instuction say the material is suppose to attach to the back of the bookcase, but we decided we wanted to look through the bookcase to the wall. So one day I fashioned it to go in between the bookcases because I didn't like the dead space. The material is lightweight and flexible.

    DynamoBen. I will tell my worker. He is not a C# programmer. Really you are going to use ACN? Seems like a large leap! Why not artnet? That sounds a bit easier and it is an open standard. I am working on a WIZnet module and one of my goals was to implement Artnet so I could learn more about it. Maybe we should start another thread and discuss that.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode
  • mparkmpark Posts: 1,305
    edited 2007-12-18 03:59
    Just so people don't get the wrong idea: my wife is very supportive of my various hobbies, projects, and manias.
    In this case, her preemptive "Don't even think about it" was just a joke. She knew I wasn't seriously thinking of taking on such a project.
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-18 05:30
    I understood what you meant mpark. Those that aren't into embedded systems and programming and hardware can sometimes have trouble seeing what we like about it and how it excites us.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-18 13:11
    I have attached my code that I am currently running on my LED wall.· The main routine isn't pretty at all and·it is a work in progress.· There·are a lot of code fragments·as well as·unused and commented items.

    The key things to look at are the DMX driver and the TLC5940 drivers.· The DMX driver I recently posted in the object exchange.· The TLC5940 driver needs more work before I want to post it in the object exchange but they are functional and probably a good read for anyone using the·chip or wanting to use the chip.· The driver for both the DMX and the TLC are configurable.· In other words you set what pins you want to use.· This includes the grey scale clock of the TLC5940.

    The TLC5940 driver is pretty much in SPIN.· One cog runs the grey scale clock which is ASM, but another cog runs a spin routine that is clocking out the data to the chip.

    If you have any suggestions or comments about the code, please let me know.· I like to learn and improve.

    The functionality of this·program is as follows.··The·program·hangs out in a routine that gentlely cycles the colors on the wall.· If the routine detects a DMX stream coming in, it switches over to display the DMX stream.· If the DMX stream disappears it switches back to cycling colors.· Like I said the main code isn't pretty at this point.

    Enjoy!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode

    Post Edited (Timothy D. Swieter) : 12/18/2007 1:18:24 PM GMT
  • kevin101kevin101 Posts: 55
    edited 2007-12-18 23:53
    I was thinking of using 3 TLC5940 in series for 48 led or 16 RGB channels. Then I could matrix 400 RGB's and use a 16 bit I2C expander and BCD to Decimal decoders to control the 25 grounds. It would scan around 100 hz and I would have full control of all 400 led's. The 12 bits of per channel gives me about 68 billion colors to play with. It may be a bit overkill, but there's nothing stopping me!!! It would make great Christmas tree lights, and it could have tons of effects. You didn't hear this, but I have a PE kit coming that my parents got me for Christmas. They don't understand how it works, they just know that they have to put it under the tree. I found some cheap RGB's on EBay cgi.ebay.com/50-PC-10mm-Manual-Control-DIFFUSED-RGB-LED-Common-Anode_W0QQitemZ320192328612QQihZ011QQcategoryZ66954QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
    that would work.

    Got any Ideas?
    kevin
  • TheWizard65TheWizard65 Posts: 91
    edited 2007-12-19 00:19
    Nice Job Tim, I also like that piece of music myself. Cool video, Happy Holiday's
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-19 00:23
    Kevin101 -

    I used 3 pieces of the TLC5940 in series. I didn't do the additional multiplexing that you have planned. I beleive there is another thread on the forum about someone doing something similar. I recommend just using the TLC5940 and avoid the additional complexity. It is best to series a couple LEDs to bring the voltage closer to your power supply voltage and avoid the wasted energy of dropping the voltage down. For instance, I had 3 LEDs in series with the appropriate sized resistor that lets me run the system at 12V.

    Your projects sounds exciting, let us know what you come up with. Oh - and a PE kit under the Christmas sounds like a great gift!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode
  • elworkselworks Posts: 1
    edited 2007-12-21 17:14
    Very nice! I have to build this for my artcar to take to burning man this year, at this point I have no idea how you did this (even though I read it all) but I will learn and I hope you will post more complete instructions some were and any changes to the code.
  • Beau SchwabeBeau Schwabe Posts: 6,562
    edited 2007-12-21 18:07
    Great project Timothy!!

    "...When I was coding my DMX routine I got excited because the activity LED was blinking. When I got my WIZnet module working I was excited because the LED is blinking. Surely my wife thinks I am insane because all she sees is a blinking LED. LOL!..."

    I think many of us and our spouse are in the same boat. The dead giveaway, is the "dear in the headlight" syndrome when you are trying to explain something, and all your spouse can do is to just to grin and nod their head.


    Good job with your project!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Beau Schwabe

    IC Layout Engineer
    Parallax, Inc.
  • TransistorToasterTransistorToaster Posts: 149
    edited 2007-12-25 22:23
    What materials are good for diffusing that are easily obtainable? Is the corregated plastic the primary one? What is recommended for a slightly togher application such as the
    top of a table?
    Franj
  • TransistorToasterTransistorToaster Posts: 149
    edited 2007-12-25 22:29
    I guess that glass with corregated plastic under it is a real easy way to go. But still, what other diffusers are good?
    Frank
  • DynamoBenDynamoBen Posts: 366
    edited 2007-12-25 22:37
    Frosted plexiglass or glass would be a good option for a tabletop.
  • Fred HawkinsFred Hawkins Posts: 997
    edited 2007-12-26 07:23
    TransistorToaster said...
    What materials are good for diffusing that are easily obtainable? Is the corregated plastic the primary one? What is recommended for a slightly togher application such as the
    top of a table?
    Franj
    A commonly available diffuser in the US are panels intended for florescent light fixtures. About 28 by 48 inches, with a variety of finishes.
  • Timothy D. SwieterTimothy D. Swieter Posts: 1,613
    edited 2007-12-27 18:59
    Any material that is is slightly translucent is good for diffusion. I don't have any materials off the top of my head, but what i would do is visit my local Home Depot or Lowe's and spend time in the aisles looking for something. Another place to research would be a home lighting or decoration type store. See what materials they use in products and what may be good for diffusion. I would guess you can find a sheet of plastic that is thick enough for a table top yet is translucent.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Timothy D. Swieter
    tdswieter.com
    One little spark of imagination is all it takes for an idea to explode
  • Jon KeinathJon Keinath Posts: 146
    edited 2007-12-28 00:02
    I used 1/8" translucent white acrylic (12x24) and laser engraver cut them to create the panels for this

    Sphere.JPG

    more info can be found here...
    www.kettering.edu/~kein0105/newyearsphere.htm

    As you can see it does a nice job defusing the light from a tri-color LED, considering there is only one under each panel.

    Here is a link to where I purchased the plastic...
    1/8"
    www.usplastic.com/catalog/product.asp?catalog%5Fname=USPlastic&category%5Fname=21314&product%5Fid=9792
    1/4"
    www.usplastic.com/catalog/product.asp?catalog%5Fname=USPlastic&category%5Fname=21314&product%5Fid=9841

    If you want any more information let me know.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    -Jon
    www.jonkeinath.com
  • Beau SchwabeBeau Schwabe Posts: 6,562
    edited 2007-12-29 00:33
    For the corrugated opaque plastic material, check out your local sign making company. This material is very popular for sign makers... You could buy it brand new in whatever lengths you wanted, or buy the overage (scrap) from the sign maker.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Beau Schwabe

    IC Layout Engineer
    Parallax, Inc.
Sign In or Register to comment.