Arduino + lots of blinkms

So theoretically you can have 127 blinkm's on an arduino however the i2c spec does not work well with over 30-40 devices also the i2c spec is not designed for long runs. I would like to do both and have discovered a few companies such as nxp offer ic's to help with this but I don't know how to use them or what range they will provide. Can you help?

You could do software I2C and split into multiple buses, and you could use I2C range extender chips. The NXP chips (P82B715 etc) would extend I2C at least 50 meters. The downside is it adds at least $3 to the cost of each node.

I would recommend my own product, ShiftBrite, which is only $3.50 to $5.00 per node, but the signal levels are TTL and have only been tested out to 5 feet. You would need one each of these per ShiftBrite: MC3487 http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=296-1408-5-ND $0.375 to $0.75 MC3486 http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=296-7038-5-ND $0.375 to $0.75

That would extend a few hundred feet at least, you'd need a full 8 wires of CAT5 plus power and ground, and a voltage regulator for the differential driver chips. However the ShiftBrite doesn't have internal programming like the BlinkM, your microcontroller has to calculate the colors and send them to the device.

Crap. So the deal is we need to control hundreds of rgb LEDs using arduino/processing for cheap. The blinkm is perfect but it's not designed for distance use. Each led is attached to a balloon and illuminates the balloon. One person has suggested using a multiplexed wiring board to control 32 LEDs per arduino and then putting the rgb LEDs on long wires. I would be happy to use that idea if I knew how to code it.

The problems with i2c and large numbers of devices are strictly electrical (driving many inputs from one output, driving long wires), right? For a simple write-only device like a shiftbrite or blinkm, I suspect that you can work around those problems with relatively simple electronics like a fan of rs485 drivers/receivers, as long as you're willing to write somewhat slowly.

See http://3waylabs.com/projects/cubatron/ for a somewhat similar project with some technical details...