Blinky Blocks

Blinky Blocks are centimeter-size blocks that were developed within the context of the Claytronics project, led by Carnegie Mellon University. These blocks are used to deploy and test distributed algorithms on hardware systems. Because of their size, they are easier to manipulate than millimeter-scale catoms. They are also affordable, so algorithms can be evaluated on ensembles composed of dozens of units. This enables the evaluation of emergent properties of ensemble programming.

Several generations of Blinky Blocks have been developed. The latest one was fabricated by the Tech Power Electronics company in collaboration with the FEMTO-ST research institute.

Description

Each module has its own computational power, as well as sensors and actuators such as RGB leds, to glow with different colors according to the programmer’s will. Blocks can detect their current orientation and impulses such as shaking or tapping. They are also able to play and capture sounds.

All the blocks of a system execute the same program. They are attached to each other using magnets. A block can have up to 6 neighbors with which he can communicate through serial links on the block faces (neighbor-to-neighbor communication model). A single block is connected to a power supply. Power is distributed through the system using dedicated pins.

Ensembles of Blinky Blocks are manually reconfigurable at will: users can plug and unplug units during runtime to enable changes in behavior based on new physical groupings.

The figures below show the details of a single block and an example of program running on an ensemble of hardware Blinky Blocks.

Publications

Kirby, B. T., Ashley-Rollman, M., & Goldstein, S. C. (2011, May). Blinky blocks: a physical ensemble programming platform. In CHI'11 Extended Abstracts on Human Factors in Computing Systems (pp. 1111-1116). ACM.