The model is based on mindcub3r, from David Gilday.
I have two different solving algorithms, one is running on the brick and gives a solution in around 60 steps (source). The other one gives a solution in around 20 steps, but takes around 500 MB of memory, so I need to run it on a computer (source).