Use a real cube as a controller for Spineraks Twisty Cube by converting moves into key presses
This tool is only compatible with the QiYi SmartCube (both variants should work), also called QY SC-S and QY SC-A
The physical cube does not know what side is facing which direction, therefore sides are mapped to fixed inputs:
- Green always rotates the front face of the digital cube
- Blue always rotates the back face of the digital cube
- Orange always rotates the left face of the digital cube
- Red always rotates the right face of the digital cube
- White always rotates the top face of the digital cube
- Yellow always rotates the bottom face of the digital cube
On first setup run echo 'KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess", OPTIONS+="static_node=uinput"' | sudo tee /etc/udev/rules.d/70-twistykeys.rules && sudo udevadm trigger to set up the permissions required. This allows applications to create virtual input devices which can be used to emulate key strokes etc without also allowing applications to read inputs from e.g. your keyboard. (If you already have Steam installed it may have set this up for you already)
Download the latest release and put it somewhere you'll find it.
Open a terminal window and navigate it to the directory where you put the executable. In many file managers you can right click an empty spot in a directory and find an option like "Open terminal here". Then run ./twistykeys in that terminal.
The application will start to list discovered Bluetooth devices. Now turn any face of your SmartCube, once it's discovered you will be asked if you want to connect to it. Check if it found the correct device and confirm with enter, then wait for it to set up the connection. Once it outputs the SmartCubes current battery level you can switch to your browser to start operating digital puzzle cubes using the physical one.
Download the latest release and double click it.
The application will start to list discovered Bluetooth devices. Now turn any face of your SmartCube, once it's discovered you will be asked if you want to connect to it. Check if it found the correct device and confirm with enter, then wait for it to set up the connection. Once it outputs the SmartCubes current battery level you can switch to your browser to start operating digital puzzle cubes using the physical one.
Make sure you have Rust installed, for example via rustup. Run cargo build, afterwards the executable can be found in target/debug.