SwarmCube Workshop, 2011
Swarm Cubes are kinetic light sculptures consisting of 64 LEDs organized into a 4×4x4 pixel matrix. A single Swarm Cube can be controlled by a computer attached to it’s Mini-USB port, alternatively by the embedded Arduino system, which allows the cube to be completely autonomous. The Cube’s peculiarity is that they communicate with each other by using DTMF tones (the beep-beep when you dial in a phone number). Put together, cubes start forming a swarm, just like birds do. Their organic structure then acts in an autonomous way, creating a complex and unpredictable light sculpture with their own intelligence hidden inside the community. People can interact with cubes using the speaker of a phone, thus influencing their twittering and changing their emergent behaviour. How will a community of cubes react to curious spectators? What will they feel when influenced by humans who are alien creatures to them? Will they feel spied on, disturbed, or will they answer cheerfully? Participants are invited to explore the collective behaviour of the cubes and reflect on their own collective behaviour.
The cube consists of two circuit boards on top of each other, connected via a 16-pin connector. The lower circuit board contains the Arduino, the battery charger, microphone and DTMF-detector. It can work independently as a regular Arduino by placing a 100nF capacitor across the topmost pin and the fouth pin from the bottom of the inter-circuit-board connector.
The LEDs of the cube are connected to the top board, which also contains the system processor (ATMega32) and the audio playback circuitry. When power is switched on, first the system processor on the top board takes control and keeps the Arduino in permanent reset. If a computer attached via USB starts talking to the board using the right protocol the computer can control the Cube by completely bypassing the Arduino chip. If no computer is detected – or a “wrong” byte is received the Arduino is woken up and control passed onto it. Communication between the Arduino chip on the lower board and the system chip on the upper board is perfomed using SPI (Serial peripheral interface). This just uses very few pins on the Arduino. An Arduino-library has been developed to simplify using this interface.
The SWARM CUBES communicate with each other using sound. If an Arduino wants to send a certain signal to the other cubes it can instruct the system processor to play any of the 16 DTMF-tones over the loudspeaker. If the DTMF-detector chip on another swarmcube “hears” this signal it changes it’s statuslines. The system processor of that other cube reads out the statusbyte and passes it on to it’s Arduino which handles the received information. Compared to other methods of communication soundwaves are one of the cheapest solutions. They also give you the interesting oppurtunity to observe the communication between the devices using no other equipment than your ears. Also you probably already have a transmitter to “talk” to the cubes in your pocket – your cellphone. Another use for your cellphone (or Skype) is to expand the communication distance of your cube by just “calling” another Swarmcube on the phone. It makes no difference whether the sondwaves just travel through the air or through a phone line.
THE SWARM CUBE has 64 LEDs. It’s a 4 x 4 x 4 LED Cube, having 4 LEDs each across length, width and height. There are 4 layers, each with 16 LEDs. 16 Vertical Lines feature 4 LEDs, one from each layer. Physical Dimension of Cube is 6 x 6 x 6 cm, consecutive LEDs are separated by 2cm. LEDs used are 5mm (T1-3/4), round of any color. Rectangular/Oval Shaped LEDs can be used but will cause problem when holding them during construction. Diffused LENs mean a wider viewing angle, better for side viewing. LED Leads should be 1” (2.5 cm) long, leads themselves are used to connect consecutive LEDs which are 2 cm apart. ELECTRICAL CONNECTION The 3D LED Cube is a 16 x 4 multiplexed display, with 16 common Anode connections and 4 common Cathode connections. Each layer has 16 LEDs, with one common Cathode. Total of 4 layers means 4 common Cathode connections.
There are two modes of operation of the LED-Cube. Either the cube can be interfaced by a PC or it can work as an Arduino. In direct PC-mode the Arduino is completely disabled, therefore you are always able to access the cube via the PC, not depending on any specifiy sketch loaded onto the Arduino chip. To control the cube via your PC you can use the open source Toublo Animation Editor which you can download from http://www.dkia.at/downloads/ or build from source. LED Swarmcube Animation Software Tutorial (OS X) To work with the Arduino-Chip you can use the regular Arduino software which you can get from www.arduino.cc – you just have to pick the right serial port and select the Lilypad Arduino as the target. The Lilypad has to be selected because, like this cube, it runs on only 8MHz instead of 16MHz. We will collect Arduino sketches on our website www.dkia.at to share und exchange thoughts and ideas.
Subversion repository for schemantics, firmware, etc: https://secure.my-webspace.at/svn/swarmcube/