You know how you get those stupid ideas when drunk? Well, we were out together on Joel's birthday, discussing how funky an underlit dancefloor would be at this year's Eurovision party - the same sort of thing as the infamous Studio54 dance floor in New York, the sort of thing John Travolta threw his moves on in 'Saturday Night Fever'.
Oh dear.
No matter how stupid the idea seems, we need some aims:
The four segments can be connected together using banana clips - nice and easy - and cabinet locks on the sides to keep them together. B&Q sell timber 18mm x 70mm x 2.1M, which on its end will provide a reasonable boxing, and some hardboard or ply on the base, screwed in and countersunk to provide access for the frame to be removed if need be. Thus, we're actually building the LED sections on the ply itself with the frame over the top, with locating blocks on the base on the inside corners of each quadrant of 4 cells.
A quick note that we worked out a serial protocol last night for talking to the dancefloor live from a computer via the Arduino's in-built USB, or a MAX3323-based serial interface, although Maplin sell the MAX3232CPE which I'm going to try instead since they're local.
The idea is that the floor can run in one of two modes - computer-driven or 'automatic'. The auto mode is simple, it runs without intervention if you don't want to do any snazzy stuff. The computer-driven one however I think will work something like sending a stream of ASCII characters in [KRGYBMCW] and a control char to flip to the floor - that way you'd have a 'shadow' screen system which would eliminate flickering.
So for instance if you were to just whack it into minicom and draw out a rainbow stripe effect, assuming usual ASCII values in square brackets:
Some notes about the protocol (also helpful to refer to an ASCII table):[STX] RYGCBMRY GCBMRYGC BMRYGCBM RYGCBMRY GCBMRYGC BMRYGCBM RYGCBMRY GCBMRYGC [ETX] OK
I'm not quite sure yet whether to do some sort of compression but probably not.