A method and apparatus for controlling and providing force feedback using an interface device manipulated by a user. A
microprocessor is provided local to the interface device and reads sensor data from sensors that describes the position and / or other information about an object grasped and moved by the user, such as a
joystick. The
microprocessor provides the sensor data to a host computer that is coupled to the interface device by a communication
bus that preferably includes a serial interface. In a “host-controlled” embodiment, the host computer calculates force values using the sensor data and other parameters of a host application program and sends the force values to the local
microprocessor, which directly provides the force values to actuators to apply forces to the user object. In a “
reflex” embodiment, the host computer sends high level supervisory commands to the local microprocessor, and the microprocessor independently implements a local process based on the high level command for reading sensor data and providing force values to the actuators using sensor data and other parameters.