Has anyone found documentation, sample code, or reverse engineered the protocol for the GAN Robot? I'd love to hook it up to things like Roman's OLL trainer.
Thanks in advance
Thanks in advance
Last edited:
As a side note I'll say that IMO using the Gan Robot for trainers is a bad idea. Gan Robot is actually not that easy to use, it takes a moment to put the cube in it, the scrambling itself is also not that quick.
<button id="connect">Connect</button>
<button id="scramble" disabled>Scramble</button>
<twisty-player tempo-scale="5"></twisty-player>
<script type="module">
import { randomScrambleForEvent } from "https://cdn.cubing.net/js/cubing/scramble";
import { connectSmartRobot } from "https://cdn.cubing.net/js/cubing/bluetooth";
import "https://cdn.cubing.net/js/cubing/twisty";
let robot;
document.querySelector("#connect").addEventListener("click", async () => {
robot = await connectSmartRobot();
document.querySelector("#scramble").disabled = false;
});
document.querySelector("#scramble").addEventListener("click", async () => {
const scramble = await randomScrambleForEvent("333");
robot.applyMoves(Array.from(scramble.units()));
document.querySelector("twisty-player").alg = scramble;
document.querySelector("twisty-player").play();
});
</script>
That's great @Lucas Garron ... I was going to do a side software project with my son to try to build a simple scramble/solve website out of cubing.js and rsimp's robot implementation, but obviously if cubing.js already has support we'll try using that instead.
PS - what github repo do you want bugs against this page logged at? It doesn't seem to handle m-slice moves on my cube correctly.
Should be easy enough, although physically loading the cube each time will probably always take a few seconds.Do cubing.js & rsimp.io enable the "Algorithm practising" that the Gan Robot promised years ago?
To be clear, could one practice any alg 20x, with the robot resetting the cube each time?