The paper describes a nonlinear control design method for a smooth rotor, permanent magnet synchronous motor (PMSM) that tracks an assigned, slowly varying velocity trajectory and an unknown, slowly varying load torque. The control uses only current measurements and a state observer provides load torque, position and velocity estimates. Following a common approach in nonlinear control, a two steps design is used. The primary control is designed in the first step, which balances the estimated load at the desired velocity. An incremental control is added, in the second step, to drive tracking and estimation errors to zero. Passivity considerations are used in both the observer design and in the control of the incremental system to ensure local stability.