Added driveController() functionality