Here is a robot in the shape of a self-balancing block that uses a motor to keep its balance on its side. This cube is based on STM32 and powered by a 1300mAh battery. Once you turn it on and set the starting position by pushing the button, you should then balance the robot and click the top button twice. The cube then activates its motor to keep its balance when disturbed.
The robot has an OLED display and a reset button. The above video shows it in action.