1. A variable speed or torque controller for a variable speed or torque electric machine, comprising: an actual machine operating value input; a machine value set-point input; a comparator for determining if the actual machine operating value is less than or greater than the machine value set-point input; a binary pair of first and second active machine control states; the first machine control state having predetermined parameters for running the machine at a first operating state value which drives operation of the electric machine in a first direction towards the machine value set-point, and the second machine control state having predetermined parameters for running the machine at a second operating state value which drives operation of the electric machine in a second direction towards the machine value set-point; and means for selecting the first machine control state if the actual machine value is greater than the machine value set-point input, or selecting the second machine control state if the actual machine operating value is less than the machine value set-point input.