[HN Gopher] S.A.R.C.A.S.M: Slightly Annoying Rubik's Cube Automa...
       ___________________________________________________________________
        
       S.A.R.C.A.S.M: Slightly Annoying Rubik's Cube Automatic Solving
       Machine
        
       Author : chris_overseas
       Score  : 260 points
       Date   : 2025-10-31 23:03 UTC (23 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | derac wrote:
       | The aesthetics of this are great. Nice job.
       | 
       | Demo: https://youtube.com/shorts/Xer4mPZZH8E
        
         | boneitis wrote:
         | This is absolutely the most charming thing I've seen in a hot
         | minute.
         | 
         | For anyone also thoroughly enchanted like me, there is an
         | additional, longer demo:
         | 
         | https://www.youtube.com/watch?v=WV52RtuWXk0
         | 
         | Living in software land, I do wonder how hard is the
         | undertaking to build one of my own.
         | 
         | As a hobbyist cuber, this project reeks of icebreaking
         | potential for the rest of the times I'm not actively solving --
         | leave it on my desk next to a cube... random coworker walks by,
         | sees and grabs the cube, shuffles it, and chucks it into the
         | SARCASM machine, enjoys a minute of novelty, ????, profit!
        
       | wilg wrote:
       | It's a cool project, but also they're really underselling the
       | amount of work put in to make it annoying.
        
       | chris_overseas wrote:
       | There's a lot more detail describing the project in a couple of
       | forum posts here:
       | https://forum.pjrc.com/index.php?threads/sarcasm-an-over-eng...
        
       | shmeeed wrote:
       | This is a hot contender for the Most Awesome Thing I Saw On The
       | Internet In 2025. Incredible work!
        
       | stavros wrote:
       | This is fantastic, how did it not get confused by the blue logo
       | on the cube in the video?
        
         | trenchpilgrim wrote:
         | Western cubes always have white opposite yellow. Japanese cubes
         | always have white opposite blue. (The center piece on each side
         | can be considered "fixed" relative to all moves.)
        
           | stavros wrote:
           | Ahh right, I forgot the center piece defines the face color,
           | thanks.
        
       | nneonneo wrote:
       | Related - there's a Guinness record for the fastest Rubik's cube
       | solving robot; it stands at 103 _milliseconds_ :
       | 
       | https://www.youtube.com/shorts/ue2gZ2vxs48
       | 
       | https://engineering.purdue.edu/ECE/News/2025/purdue-ece-stud...
        
         | hammock wrote:
         | Robotic solver is more of a physical problem than a mental one.
         | A photo of the cube from top and bottom corners and you can
         | solve it in a nanosecond
        
           | teiferer wrote:
           | First, you still need to optimize the solution to fit the
           | constraints of mechanical solving. It needs to be as few
           | moves as possible, some of them are parallelizable, etc. Not
           | a trivial problem.
           | 
           | Second, nanosecond? You know that a GHz CPU does a single
           | clock tick in one nanosecond, right?
        
             | rossant wrote:
             | Maybe there's a new instruction we don't know about in
             | modern CPUs, like RUBIK_SOLVE or something.
        
               | SwiftyBug wrote:
               | I mean, we've had RUN_DOOM for many years now, so why
               | not?
        
             | Tempest1981 wrote:
             | They probably meant millisecond
        
         | adrianN wrote:
         | I wonder how many cubes they exploded in the making of that
         | robot
        
         | hermitcrab wrote:
         | Impressive and a bit mad.
        
       | xiaoyu2006 wrote:
       | I think you built a rubik cube solving machine just to show-case
       | your acronym ;-) Super cool work.
        
       | teunlao wrote:
       | SARCASM: the only acronym worth building hardware for
        
       | noman-land wrote:
       | I want an automatic scrambling machine, not an automatic solving
       | machine. Two cubes. While you're solving one, the other one is
       | being scrambled. Cubers spend _way_ more time scrambling than
       | solving. Scrambling is the annoying part that needs automating.
        
         | dullcrisp wrote:
         | Can't you just run the solving machine in reverse?
        
           | noman-land wrote:
           | You can but it doesn't need to be smart at all. It doesn't
           | need cameras. It's a much simpler machine.
        
             | boneitis wrote:
             | Funny enough, that (e: the shuffle function mentioned in
             | original thread post, just realized my awkward comment
             | placement) sounds like a very reasonable stretch
             | goal/feature add-on, although I'm not sure this particular
             | machine could shuffle quickly enough for speedcuber types.
        
             | rplnt wrote:
             | It needs to be somewhat smart, if you want to track your
             | scrambles and times. But yes, it doesn't need cameras if it
             | trusts you.
        
           | schiffern wrote:
           | Yeah, it's just a software change to the existing machine. If
           | you generate a target scrambled state it's literally the
           | solver algorithm in reverse too.
           | 
           | It would be neat if it offered to scramble when you insert an
           | already solved cube (demoed in the video), and maybe have
           | options for the amount of randomness.
           | 
           | Is there an unbiased scrambling (or random generation)
           | algorithm, or is it enough to just generate N random moves?
        
             | schiffern wrote:
             | To answer my own question, competitive cubing uses unbiased
             | randomization algorithms.[0] To minimize scrambling time,
             | it could fairly generate a random configuration and then
             | optimally scramble the cube in ~18 moves.[1]
             | 
             | TL;DR fair scrambling is exactly as fast (same throughout)
             | as solving random cubes! Neat.
             | 
             | [0] https://www.cubelelo.com/blogs/cubing/how-to-scramble-
             | a-rubi...
             | 
             | [1] https://en.wikipedia.org/wiki/Optimal_solutions_for_the
             | _Rubi...
        
         | LVB wrote:
         | I'm completely not in this space but your comment had me
         | wondering: are there digital cube faces? That is, a real
         | physical cube but with faces that can instantly be set to a
         | given color?
        
           | sunnybeetroot wrote:
           | This is a great question! Doesn't seem like it'd be hard to
           | make if it doesn't already exist
        
           | apple1417 wrote:
           | They exist, but one of the problems is they're not
           | particularly good cubes. While it might help you learn the
           | basics, not being able to handle it like a speedcube means
           | they're probably not going to help you get faster.
           | 
           | https://m.youtube.com/watch?v=l-TWH5W-1fw
           | 
           | https://exmarscube.com/product/ex-mars-ai-robot-cube/
           | 
           | That being said, while looking up those links, I found out
           | that, since I got out of the hobby, smart cubes have become a
           | thing, and are made by real speedcube manufacturers.
           | 
           | https://www.gancube.com/products/gan-356-i-carry-smart-
           | magic...
           | 
           | This is an easier problem to solve. I'm not sure if you have
           | to solve it first or if it can identify pieces on power up,
           | but after that it's just tracking rotations, which can be
           | done from the (fixed position) centres alone. But if an
           | actual speedcube manufacturer can already fit those
           | electronics in without comprising performance, I can't
           | imagine it's that much harder to fit some addressable LEDs on
           | some slip-ring-esque connections. Must just not be much of a
           | market.
        
         | alejo wrote:
         | This is in my mind the hardest part as well.
         | 
         | I can solve the cube with the regular "easy" 3-layer approach,
         | but I'd like to solve it faster.
         | 
         | The issue is that the techniques for fast solving require to
         | learn many different patterns to get to the right solution
         | fast.
         | 
         | I don't know really how ppl that solve it fast accomplish
         | getting to that level, but to me it would be amazing if i could
         | just set the cube in know scrambled states that let me practice
         | and memorize specific algorithms repeatedly until I learn them.
         | 
         | The problem is that I don't know enough yet to distinguish
         | which are those initial states, let alone setting the cube in
         | that state, so something that could set it up for me to
         | practice would be amazing
        
           | 0x264 wrote:
           | > I don't know really how ppl that solve it fast accomplish
           | getting to that level
           | 
           | Just like everything else in life, they do it really slow and
           | with lots and lots and lots of errors at first, but (and this
           | is where the magic happens) keep doing it, training hours a
           | day or their entire week ends, for years.
        
         | rplnt wrote:
         | At least until a certain level, scrambling (according to a
         | given "algorithm") is a good way to practice moves. It
         | shouldn't take much longer than a solution either, you are not
         | solving the cube in under 30 moves. And if you don't care about
         | the scramble it's even faster. So I don't think the "way more
         | time" is entirely accurate. It may feel like it though.
        
       | optimiz3 wrote:
       | Impressive work. Curious to how many hours of labor what the
       | development path was. Several man-years possibly?
        
       | dugidugout wrote:
       | The screen ui aestetic and audio (specifically the dubbing)
       | remind me of the silver case series, may be a total reach, nice
       | touches none the less!
       | 
       | https://en.wikipedia.org/wiki/The_Silver_Case
        
       | watson wrote:
       | This is one of the best arguments for purchasing a 3D printer
        
       | metalman wrote:
       | whats the point? rubicubes are for hoomans got one when I was 12,
       | solved the next day, couldn't tell you how,got better, got fast,
       | got bored, never touched one again. but this much....not knowing
       | and solving as an unconsious process is likely to be the
       | advantage or to put it another way, knowing is limmiting and
       | constrains doing. hooman thing.right
        
       | vindar79 wrote:
       | Hi all. I just found this thread. I'm the creator of SARCASM.
       | Thanks to the OP for sharing. I spent many hours on this build
       | but it was a lot of fun. I'm happy to see that others are
       | enjoying it also :-)
       | 
       | If you're interested in the technical side, I wrote detailed
       | posts on the hardware and software on the Teensy forum:
       | https://forum.pjrc.com/index.php?threads/sarcasm-an-over-eng...
        
         | ewalk153 wrote:
         | Can you post the STL files for the shell and Arms?
         | 
         | Great project.
        
           | vindar79 wrote:
           | Sure. I will add them on github later today. The repo is
           | currently in a very messy state. I would like to clean it and
           | provide detailled assembly steps but I have to much work
           | currently. Hopefully I can do this in a couple of months.
        
             | vindar79 wrote:
             | Done. Added stl files to the repo.
        
         | scrollaway wrote:
         | > _I 'm the creator of SARCASM._
         | 
         | Glad I'm not the only one who sometimes justifies spending time
         | on project purely because of the name I can give to them.
        
           | vindar79 wrote:
           | hehe, it was indeed a major motivation :-)
        
         | ramses0 wrote:
         | This makes me want to teleport it back to the 1920s, enclose it
         | in glass and charge people a nickel to use it! You'd be rich!
        
         | hermitcrab wrote:
         | Very cool. I remember being the first kid at school to have a
         | Rubiks cube, in the 70s (I read about it in Omni magazine). I
         | had no idea how to solve it. I sent off for a booklet about
         | solving it. I got back a booklet about group theory, far beyond
         | my teenage brain.
        
         | ugh123 wrote:
         | I think this is an amazing all around build combining the
         | physical mechanics for solving (a relatively understood problem
         | in rubik's robot solving scene) but along with the graphics
         | integration and some real personality from the bot avatar that
         | gave me quite a few laughs. Well done!
        
         | shmeeed wrote:
         | I love how you approached the problem and perfectioned the
         | "product" in all aspects. There's so many playful details that
         | could easily go unnoticed! You're impressively resourceful, and
         | one can tell this was a work of love.
         | 
         | I wish I could buy something like it as a DIY set, just to own
         | it, admire it, show it to people, and have everybody be in awe
         | of your work. What a time to be alive that stuff like this is
         | in reach of a sufficiently dedicated hobbyist!
        
       | aEJ04Izw5HYm wrote:
       | The personality of creator really shines through in the software.
       | Douglas Adams would be pleased, I hope loads of hackers will be
       | inspired to make more 'Adamsian' robots.
        
         | moffkalast wrote:
         | I'm looking forward to more genuine people personalities from
         | Unsirious Cybernetics.
        
       | zkmon wrote:
       | Solving a cube has two parts, determining the moves and making
       | the moves. For humans these two activities happen mostly in
       | parallel. For robots, moves were already determined before the
       | start. So the time taken is merely all about speed of move
       | making.
        
       | klaudioz wrote:
       | Cool!!, I've created this one 16 years ago:
       | https://www.youtube.com/watch?v=bkWLQZgi9uE
       | 
       | I can see very similar movements this robot is doing compared to
       | my old robot. I really like the screen outputs of it.
        
       | cellular wrote:
       | This looks like a good place to ask HN:
       | 
       | I've started with a solved cube, then turned 2 sides sharing an
       | edge, alternatively (same direction) expecting the cube to get
       | messed up but then returning to its solved state.
       | 
       | It never got solved! Maybe i didn't do it enough (i did it
       | hundreds of times i think). Has anyone got an explanation?
        
         | rokicki wrote:
         | It should take 105 repetitions:
         | 
         | https://alpha.twizzle.net/explore/?alg=%28U+R%29105
         | 
         | Unless by "same direction" you mean "opposite direction", in
         | which case 63 works:
         | 
         | https://alpha.twizzle.net/explore/?alg=%28U+R%27%2963
        
         | JonathanMerklin wrote:
         | The cyclic group generated by e.g. RU has order 105 (so 210
         | total turns or 105 of each side, alternated). If you have some
         | math know-how, check out [1]. If you don't, take my word for
         | it: when I was a teenager playing around with cubes, I once had
         | a similar experience trying to do the same thing you did - when
         | I went relatively quickly it never returned to the solved
         | state, but when I was very deliberate about each turn, I got
         | the 105 result (not by counting back then, but by rough time
         | estimate given the figure I just looked up). Both you and I
         | probably accidentally threw in one or more double-turns (like a
         | U2) in there, or undercounted and gave up well before the cycle
         | had completed (I, too, had thought I'd made "hundreds" of
         | moves).
         | 
         | [1] https://faculty.etsu.edu/gardnerr/4127/algebra-club/rubik-
         | ta... - slide 41
        
       | branon wrote:
       | Pedantic pet peeve: it'd be S.A.R.C.A.S.M. or SARCASM but not
       | S.A.R.C.A.S.M
       | 
       | You are missing the last full stop, unless your project is
       | actually meant to be called "S.A.R.C.A.S. M"
       | 
       | An initialism either uses full stops after all letters or none of
       | them.
        
       | slug wrote:
       | I built a cubotino a few years ago, similar mechanism, see
       | https://github.com/AndreaFavero71/cubotino
       | 
       | Uses a rpi 2 w, works well, can solve and scramble 3x3x3 cubes,
       | using just 2 servo motors.
        
       | bolangi wrote:
       | So does that make the developer a sarcasmaholic?
       | 
       | https://www.youtube.com/watch?v=JcOfFeKXcd4
        
       ___________________________________________________________________
       (page generated 2025-11-01 23:01 UTC)