Lego plays Ruzzle: nxt & nodejs powered robot

Today I have uploaded a video ‘Lego plays Ruzzle‘ on Youtube, to show how my creation works.

I like to mix different technologies to create something innovative.

I love Lego, and recently discovered Ruzzle, a popular mobile game. So, I decided to mix Lego, Ruzzle, Javascript, bash and other pieces to create a super robot 🙂


In this project I used:

  • Tablet with Ruzzle
  • Bash script for:
    • Bash script for download screenshot of device
    • Process image with Imagemagick
    • Recognize character from image with Tesseract
  • NodeJS for:
    • Solving Ruzzle
    • Optimizing the plan
    • Send via bluetooth to Lego Mindstorm
  • Nxc program to receive plan via bluetooth
  • Absolute Position Regulator library for precise control of lego motors

Ruzzle solver scheme (3)

The project is open source, and the code is on Github:

More photos are on Flickr:

Other article on Lego Ruzzle Solver:

In march 23 I talked about history of my robots @ Codemotion Rome. Below you can finde the slides of my talk:


Any feedback / request is appreciated !




Ruzzle Lego Mindstorm NodeJS Solver

Yesterday I start to build a new Lego Mindstorm project to solve Ruzzle, a popular iOS/Android game.

My goal is to merge both software (image processing, ocr, solver) and hardware (mechanics, servos, fake finger on a touchscreen) worlds, building a funny Lego robot.

On software side:

  • Bash script for download screenshot of device
  • ImageMagick to process screenshot image
  • Tesseract for character recognition
  • NodeJS for:
    • solving ruzzle game
    • send the plan to lego mindstorm nxt via bluetooth

On hardware side:

  • Lego Mindstorm (nxt)
  • Nxc program that receive plan via bluetooth
  • Absolute Position Regulator for precise control of servo

When I have something working, I post nxc program on Github: