Since my last post about the audio system installation of my 512 RGB LED Coffee Table project I’ve spent my time finalizing the table internals needed to operate the eight LED arrays inside the coffee table. This includes the power supply, the micro controllers used to operate the basic table functions, the Mini-ITX PC that generates and distributes the to be shown images to the eight LED arrays as well as the needed wiring between the individual components and the front panels used to operate the table.
The power supply of the coffee table divides into three sections:
- A small 12V standby power supply used to operate the tables micro controllers that do take care of starting up the other two parts of the tables power supply.
- An ATX power supply that serves the Mini-ITX PC as well as the Rainbowduino micro controllers on the LED panels.
- The internal power supplies of the stereo amplifiers and a small power supply for the active subwoofer crossover.
The ATX power supply as well as the power supplies of the sound system can be independently controlled by two FS20 remote power switches. The tables main micro controllers do use a FS20 sender and a receiver module to be able to trigger and monitor the states of those power switches. One of the four channels offered by those modules is used as the main power switch of the table which triggers the micro controllers to power on the Mini-ITX PC. Therefore the micro controllers needs to be able to trigger the PCs power switch which is done via an opto-coupler so that the micro controllers don’t inject any dangerous voltage levels via the power or reset signals that might harm the mainboard.
Beside controlling the power supplies the main micro controllers also take care of the front panel that provides several buttons to the outside world so that it’s still possible to manually power on / off the individual table components. The front panel will also provide technical controls for the LED panel micro controllers so that I can flash a new firmware to them without being forced to dismantle half of the table.
The third job of the main micro controllers is to drive some additional LEDs via PWM signals that are used to lighten up the four compartments of the table triggered by reed switches hidden inside the doors of each compartment. So whenever you open one of the doors some white LEDs mounted into the ceiling of each compartment will be dimmed up. For those two technical compartments that do contain the Mini-ITX PC as well as the sound system the LEDs will only illuminate the front panel itself and not all the electronic bits and pieces hidden behind it. I’ve also installed eight RGB LEDs into each speaker stack that are also controlled by the main micro controllers. The idea here is to have some lightning effects inside the speaker stacks that should be in sync with the just played audio signal. The hardware for doing so is ready but it still has to be implemented in software at one point.
The fourth and last job of the tables main micro controllers is to control the four fans that are mounted into the bottom of the tables technical compartment. Two of those fans will suck cold air into the central technical compartment – the other two fans are used the get the warmed up air out of the two lower technical compartments that do contain the Mini-ITX PC as well as the sound system. Since I can’t really predict the heat generation of all electrical components I’ve oversized the ventilation system on purpose and installed some DS18S20 temperature sensors in the critical parts of the table. With those sensors the main micro controllers are able to decide if all or some of the fans have to run to get the warmed up air out of the table. The warm air will be conducted through several holes in the LED panels, through the Polystyrene grid and finally through a ~1cm gap between the smoked glass and the surrounding wood panels of the table.
The next step is to bring the table to a state that all parts except the front panels have been put together so that I can get a first impression how the table will actually look close to its final state. I’m pretty sure that the initial assembly will show up some smaller – hopefully no bigger – problems until the table itself is finally done. After that there’s still a lot of work need to finish the software – especially since I doubt that I’ll call the software ‘finished’ at any point in the near future since there’s usually always something that you want to change or improve 🙂