three-mode controller