My mum challenged me to learn how to solve a Rubik’s Cube, so I built a robot to do it for me instead.
Rubik’s Cube Solving Robot, RDRK, is ab acronym in my native language (Lithuanian) for “Robotas Dėliojantis Rubiko Kubą“.
Controlled with ATmega16 microcontroller. Firmware is written entirely in C, also avrlib library for timing/PWM/UART. Although the PC app is written with wxWidgets (C++) library, it won’t compile under Windows because the system calls in serial communication part, thought if you remove it, it should build with no hassle.
Basic communication via serial: (USB-to-RS232 (PL-2303)) -> MAX232 -> ATmega UART
For servos and logic I’ve used L7805 with big heatsink (and yes, at operation time it was necessity) and DSA-20R-12 switching adapter.
2x MG995‘s for main arms and for 2x HXT900 for “claws”
Manual facelet color input.