When we watched the first Transformers movie, most of us wanted our toasters and washing machines to turn into cool robots. Now, MIT has developed a set of self-assembling robot blocks that can identify each other.

These robots, called M-Blocks 2.0, have a barcode-like system on each face that helps them recognize and communicate with other blocks. Right now, these 16 blocks can perform tasks such as forming a line, following arrows, tracking light, and traversing down a path of arrows.

These blocks can travel along other blocks, climb up or down each other, and even jump. Check out their slick moves in the video below.

Each M-block has a flywheel that rotates at 20,000 revolutions per minute (RPM), and uses angular momentum from a break to move around. These blocks use a built-in magnet to stick to each other and form a robust structure.

Six years ago, CSAIL Ph.D. student John Romanishin, along with robotics professor, Daniela Rus, and postdoc Kyle Gilpin, released the first iteration of M-blocks with limited functionality. The second iteration builds upon it with added capabilities of moving around more freely and forming clusters with other cubes.

Romanishin, the new paper’s lead author says this unique approach is inexpensive and easier to scale to a million modules:

The unique thing about our approach is that it’s inexpensive, robust, and potentially easier to scale to a million modules. M-Blocks can move in a general way. Other robotic systems have much more complicated movement mechanisms that require many steps, but our system is more scalable and cost-effective.

Researchers hope to create more practical structures in the future, especially in the disaster response sector. The robots can form a temporary staircase to rescue someone from a burning building or a damaged basement.

You can read more about these robots and how they work in this paper.

Read next: PSA: Tell your parents to never wire you money before calling you first