Half-mile programmable light chase possible?

Hey everyone, I was wondering if this is possible…

I have a really long driveway (about a half-mile) and I was wondering if I could use the Arduino to set up a programmable light chase using flexible LED strips or something like that. Color isn’t so important, but I want to be able to program how fast the lights “move”. If this is possible, what’s the best way to go about doing this? Any estimate on how much it would cost and/or the best place to get the supplies I’d need? (I’m thinking it’s like a $10,000 project, but it should be pretty AWESOME and well worth it!)

Thanks everyone!

IF you were trying to save money, you could use individual LED's further apart?

I would definitely consider using individual LEDs further apart...maybe about 6 inches max though. But is that even possible to do with individual LEDs? How would I be able to run a chase sequence without having those LEDs identified in some sort of way? A half-mile of LEDs at 6 inches apart would be a total of about 5280 LEDs. How would I be able to program them in a chase sequence if I used individual LEDs? (It may be easier than I am making it seem in my crazy brain :slight_smile: )

Do you intend the lights to track the position of a vehicle driving along the driveway, or something like that? If so, are you willing to rely on any sort of transponder on the vehicle?

PeterH:
Do you intend the lights to track the position of a vehicle driving along the driveway, or something like that? If so, are you willing to rely on any sort of transponder on the vehicle?

No, not for tracking, so no transponders are necessary as far as I can understand. I just want it for cool effect and to be able to adjust the speed that the lights move, i.e. I want it to take x amount of seconds to get from LED #1 to LED #478, etc.

My first step would be look for the LED strips, e.g. at sites like this: Led Strip Programmable-Led Strip Programmable Manufacturers, Suppliers and Exporters on Alibaba.comLED Strips(old). Once you find a suitable one with reasonable pricing get a 10m sample and figure out how it is going to work. Then scale up. If you put in enough effort this should be possible with a price tag of ~$1000.

I would definitely not go for unassembled LEDs. Assembling thousands of LEDs is definitely no fun and should be left to machines.

Great suggestion - I totally forgot about Alibaba! That seems to be the way to go, especially after seeing SuperBrightLEDs prices.

Programming the chase sequence doesn't have to be that complicated. Think about chasing Christmas lights. They usually have 2 or 3 sets of lights that all turn on together. By wiring every other or every third LED on the same bus you can create a chase sequence easily by turning the buses on and off in sequence. Trying to program or address each and every LED would be way harder and likely more expensive. You could even likely accomplish this with Christmas lights and no Arduino, but where is the fun in that?

Makes me think of Runway lights... :slight_smile:

Jet tries to land on his driveway... lol

Anyway... have a look at this:
http://www.deepdarc.com/2010/11/27/hacking-christmas-lights/

jroorda:
Programming the chase sequence doesn't have to be that complicated. Think about chasing Christmas lights. They usually have 2 or 3 sets of lights that all turn on together. By wiring every other or every third LED on the same bus you can create a chase sequence easily by turning the buses on and off in sequence. Trying to program or address each and every LED would be way harder and likely more expensive. You could even likely accomplish this with Christmas lights and no Arduino, but where is the fun in that?

True, but that would be 1760 buses (5280 per 3 lights); I could be wrong, but it sounds a little high to me.

Lakes:
Makes me think of Runway lights... :slight_smile:

Jet tries to land on his driveway... lol

Anyway... have a look at this:
deep darc archive » Hacking Christmas Lights

Thanks for the link! This quote really stood out to me: "The enumeration step allows you to assign any address to any bulb you want". That is exactly what I would need to do. But I can only do this with lights that have some sort of microcontroller coupled with each bulb. Does anyone know if the LEDs linked above from Alibaba (5050smd_60led_programmable_led_strip_with) will do the trick?

Half mile, 2640 feet, a light every 6" is 5280 lights.
I think I'd be tempted to make up 10' modules, 20 lights per module bright LEDs like this or similar. 5280/20 = 264 modules.
http://www.mpja.com/5mm-White-LED-10000mcd-Non-Diffused/productinfo/17145+OP/
Wire all the modules in parallel with 12/3 or 14/3 wire, with 12V,Gnd common to all, and signal in to a module which buffers and passes to next module.
Signal would be "I'm done, turn on for xxx seconds", next in line gets the signal, turns on, turns off & sends signal.
Current draw is thus pretty continuous as only one is on a time, and turned off modules don't consume much, say 20mA so >6A total current needed.
Each "module" could be a 10' foot strand with 3-pin input, 3 pin output, and 20 LEDs on sticks spread the length of th strip all driven by arduino-clone in the middle of the strip:
LED..LED..LED..LED..LED..LED..LED..LED..LED..LED..board..LED..LED..LED..LED..LED..LED..LED..LED..LED..LED
signal in------------------------------------------------------------------in, out-------------------------------------------------------------------signal out
power in--------------------------------------------------------------------|---------------------------------------------------------------------- power out
Gnd in-----------------------------------------------------------------------|-----------------------------------------------------------------------Gnd out

The LEDs coud all driven together, or groups of 3 or 4, or individually controlled. The wires to the LED needn't be 14 guage, can be much smaller.

At Burning Man 2003, they had a ring of chasing LED lights completely surrounding the Man tower - it was a huge circle, and the lights were spaced a few feet apart. IIRC, they were cast/embedded in acrylic resin. Likely, they only had power and serial communications between each light; in other words, the individual lights themselves were "smart". You could do the same thing, using ATTiny processors instead of full-blown Arduinos. I'm not sure how the lights at Burning Man worked; you might supply power and one or two extra lines for serial communications - or if you are really ambitious, layer the serial comms on top of the power lines. Each light would be "daisy chained" to the next, and each would have a simple program (something like a state machine, or some kind of 1-dimensional cellular automata), that would take the command from the previous, execute it, and send another command to the next node, on down the line. You'd have to implement some kind of shared serial bus protocol, or use an existing one (you might be able to get away with SPI or I2C between nodes, since they won't be spaced far apart). Use 2 or 4 conductor direct-bury wire to carry power and comms (such wire is available for landscaping usage, I think for lighting and/or other similar needs). You'll also need to calculate the amount of current for all nodes needed (LEDs and controllers), so you can size the wire gauge properly for power, and purchase an appropriate power supply...

Use a blinkM clone (with suitable driver circuit to power each LED string)

I have a feeling my idea was misinterpreted so I will lay it out a bit more clearly using the attached picture.

Each circle represents an LED. The color of the circle denotes which power bus the LED is connected to (not the color of the LED itself which is entirely arbitrary). The pattern of connections extends for a half mile as shown such that every third LED shares the same power bus.

Now imagine that I have three light switches that control the power for the blue, red, and green buses. If I flick them on one at a time in the right order I get a chasing effect. So, in this case, if I turn on blue, then red, then green, blue, red, green, etc. I get a chase that goes to the right. Flipping them in the other order would make the chain chase to the left. The number of buses can be altered to allow more space between chasers. You could for instance have 10 buses and there would be 9 unlit LEDs between the lit ones. This lets you run everything from one Arduino with a few lines of code.

Where this would not work is if you want to only have one chaser go up the driveway at a time. If you decide to do that, then no LEDs can be grouped and you are back to having some 5K channels. At that point you likely need to have some sort of smart node based system that the other posters here have mentioned.

lightExample.jpg

jroorda:
I have a feeling my idea was misinterpreted so I will lay it out a bit more clearly using the attached picture.

Each circle represents an LED. The color of the circle denotes which power bus the LED is connected to (not the color of the LED itself which is entirely arbitrary). The pattern of connections extends for a half mile as shown such that every third LED shares the same power bus.

Now imagine that I have three light switches that control the power for the blue, red, and green buses. If I flick them on one at a time in the right order I get a chasing effect. So, in this case, if I turn on blue, then red, then green, blue, red, green, etc. I get a chase that goes to the right. Flipping them in the other order would make the chain chase to the left. The number of buses can be altered to allow more space between chasers. You could for instance have 10 buses and there would be 9 unlit LEDs between the lit ones. This lets you run everything from one Arduino with a few lines of code.

Where this would not work is if you want to only have one chaser go up the driveway at a time. If you decide to do that, then no LEDs can be grouped and you are back to having some 5K channels. At that point you likely need to have some sort of smart node based system that the other posters here have mentioned.

Thanks for clarifying that jroorda. What I had in mind was to have just one single light on at a time, so each light would have to be assigned it's own address/channel. Unfortunately for me, I'm a semi-newbie when it comes to this stuff, so I don't even know where to start on what sorts of LED strips to look for. I was hoping that there are LED light strips out there in which each LED in the strip is paired with its own microcontroller and automatically assigns itself its own address/channel in some way (perhaps by location from power source, i.e. the first light from the power source would be #1, the 300th light from the power source would be #300, etc.). Is this possible and/or do such light strips exist? Are those "programmable" ones from Alibaba the ones I'd need?

Like I said, though I have some general understanding about electronics and have done some tinkering of my own, I'm pretttttty much a newbie, so I'll take any advice I can get. I appreciate everyone's responses so far!

So I have a few questions that I'm still unclear about:

  1. Is my idea possible with simply just LED light strips and an Arduino?
  2. Do they make LED light strips with microcontrollers or something built into each light?
  3. If so, where can I get them? Alibaba.com?
  4. How do these light strips work? Is each light automatically assigned an address or something?
  5. Can they be assigned this address automatically, manually through programming, or both?

Thanks!

Are you sure you really want to have individual LEDs on? I’d have thought you wanted to have at least a few feet’s worth of LEDs on, otherwise they’re going to be almost invisible. This would reduce your control requirements by about an order of magnitude or so.

PeterH:
Are you sure you really want to have individual LEDs on? I'd have thought you wanted to have at least a few feet's worth of LEDs on, otherwise they're going to be almost invisible. This would reduce your control requirements by about an order of magnitude or so.

I can see your point, so it's definitely something I should keep in mind. You're actually probably right :slight_smile: It would be cool to even be able to program it to have any number of lights on at once. Either way, IS THIS CONCEPT POSSIBLE? I'm assuming yes since the concept is pretty darn simple and straightforward. If it is possible, what is the best way to go about it?

"It would be cool to even be able to program it to have any number of lights on at once. Either way, IS THIS CONCEPT POSSIBLE?"

Yes. I suggested same back in reply # 10.

Wouldn't need address assigning either - just pass message on to next module indicating "I'm done, your turn".

CrossRoads:
Wouldn't need address assigning either - just pass message on to next module indicating "I'm done, your turn".

I believe there are roadside hazard warning lamps as used on the top of lines of traffic cones that work on the principle of a simple radio trigger - each one flashes and then broadcasts a pulse that triggers the next one. I suspect it would use a simple tuned receiver / transmitter and a hardware timer rather than a microcontroller, though. Anything involving thousands of separately addressable units stretched over half a mile would need several thousand dollars worth of control equipment, or vast quantities of wiring. It's all technically feasible but doing it cost effectively and reliably would be the trick. I don't suppose you'd be happy with a solution costing thousands of dollars that crapped out after a couple of hard winters.