Back in the analog days, the geekiest expression of creativity and engineering have been Lego blocks. These days, it’s the Raspberry Pi. Of course, LEGO has caught up with the times and you can even mix the two together for best results. That’s exactly what a certain Francesco Georg has done, combining the flexibility of Lego’s free-form blocks with the brains of a Raspberry Pi. The result? A homemade robot that can solve a Rubiks cube in less than two minutes.
Yes, it’s not going to win any awards for speed, though it’s still faster than most humans. But this is no professional robot, not even a hardcore machine. In this day and age of hobbyists and makers, an achievement like this is by no means a small one.
The mixture of Raspberry Pi and Lego isn’t novel either. In fact, there are products that actually marry the two. Specifically, Georg made use BrickPi, which combines Lego’s Mindstorms robotics platform using the Raspberry Pi to control the robot. For its eyes, it used a Raspberry Pi camera module and a simple USB-powered reading light for illumination.
Of course, combining hardware does not a robot make, and to do the actual solving, Georg resorted to a two-phase algorithm developed by Herbert Kociemba specifically for solving Rubiks cubes. He specifically used an open source implementation of that algorithm, written in Python, the RPi’s preferred programming language.
Sadly, unlike most DIY projects such as this, Georg has not shared his process of creating the solver or the software he used to implement it. Then again, he did use pretty much off-the-shelf parts and provided pointers to the software, so someone might come along to replicate it and maybe provide an Instructable even.