Technology
Hardware
At the core of each Bigxels node is a specialized PIC microcontroller which manages both its network and lighting components. The microcontroller controls three switching regulators, each of which controls the amount of current going to one of the three color LEDs using pulse-wave modulation. Each LED, in turn, provides output in a different region of the visible spectrum (red, green or blue). This technique is very power-efficient, as the microcontroller is able to measure the amount of power going to each LED continuously and fine tune it on the fly to tightly control the brightness.
Firmware
Code has been written which allows the microcontroller to connect to a network and receive packets from our central control software. It turns the information in this packet into the PWM signal which drives the switching regulator.
Network
Network communication is over standard UDP/IP/Ethernet, and nodes require only that they be able to receive broadcast packets from the Bigxels server and otherwise operate independent of network topology and specifications.
Software
The Bigxels server software, written to be compatible with Sun Java 1.5, coordinates node identification with node location within the image grid and reads in images, animations or user input for encoding and display. Image frames are transformed into a reorganized color matrix based on the concordance between node identifier and node location, which is then broadcast to the nodes along with a time signature controlling the temporal position of the frame. Since Bigxels nodes can traverse a full 24-bit color space, any image interpretable in 16.7 million colors (or fewer) is suitable for display, though not all image formats are supported.