Robot moving on its own

This can happen when the controller joystick needs calibration and also if it does not quite return to the home position when you are not touching it. Search the forum for joystick “deadband”, you will find some code that makes the motor control value 0 when the joystick is returning small values.