A mobility device for supporting a user in a sitting, a standing, or other position comprising: a chassis configured to propel the mobility device on a surface; and a self-leveling mechanism comprising: a leveling structure on which a user support for supporting a user of the mobility device is mounted, wherein the leveling structure is connected to the chassis by a swivel connection that enables pitch and roll motion of the leveling structure and by two linearly displaceable connections (16a, 16b) that are laterally displaced from one another; two linear actuators, each of which is configured to displace a displaceable connection of the two displaceable connections (16a, 16b) to adjust a distance between the user support and the chassis; a sensor for sensing a tilt of the leveling structure with respect to a predetermined plane that is configured to measure a pitch angle and a roll angle of the user support; and a controller configured to to operate the linear actuators in accordance with a tilt that is sensed by the sensor for maintaining the orientation of the user support, characterised by the controller being configured to apply an iterative adaptive control algorithm to calculate a displacement of one or both of the displaceable connections in accordance with a deviation of the measured pitch angle from a pitch angle of a target plane or a deviation of the measured roll angle from a roll angle of the target plane, and wherein the size of the calculated displacement during a single iteration of the control algorithm increases when the deviation increases and decreases when the deviation decreases, a support conversion mechanism to convert the user support from a seated configuration to a standing configuration, and vice versa, wherein the user support of the leveling structure is configured to support the user during sitting, standing, or other positions. a chassis configured to propel the mobility device on a surface; and a self-leveling mechanism comprising: a leveling structure on which a user support for supporting a user of the mobility device is mounted, wherein the leveling structure is connected to the chassis by a swivel connection that enables pitch and roll motion of the leveling structure and by two linearly displaceable connections (16a, 16b) that are laterally displaced from one another; two linear actuators, each of which is configured to displace a displaceable connection of the two displaceable connections (16a, 16b) to adjust a distance between the user support and the chassis; a sensor for sensing a tilt of the leveling structure with respect to a predetermined plane that is configured to measure a pitch angle and a roll angle of the user support; and a controller configured to to operate the linear actuators in accordance with a tilt that is sensed by the sensor for maintaining the orientation of the user support, characterised by the controller being configured to apply an iterative adaptive control algorithm to calculate a displacement of one or both of the displaceable connections in accordance with a deviation of the measured pitch angle from a pitch angle of a target plane or a deviation of the measured roll angle from a roll angle of the target plane, and a leveling structure on which a user support for supporting a user of the mobility device is mounted, wherein the leveling structure is connected to the chassis by a swivel connection that enables pitch and roll motion of the leveling structure and by two linearly displaceable connections (16a, 16b) that are laterally displaced from one another; two linear actuators, each of which is configured to displace a displaceable connection of the two displaceable connections (16a, 16b) to adjust a distance between the user support and the chassis; a sensor for sensing a tilt of the leveling structure with respect to a predetermined plane that is configured to measure a pitch angle and a roll angle of the user support; and a controller configured to to operate the linear actuators in accordance with a tilt that is sensed by the sensor for maintaining the orientation of the user support, characterised by the controller being configured to apply an iterative adaptive control algorithm to calculate a displacement of one or both of the displaceable connections in accordance with a deviation of the measured pitch angle from a pitch angle of a target plane or a deviation of the measured roll angle from a roll angle of the target plane, and wherein the size of the calculated displacement during a single iteration of the control algorithm increases when the deviation increases and decreases when the deviation decreases, a support conversion mechanism to convert the user support from a seated configuration to a standing configuration, and vice versa, wherein the user support of the leveling structure is configured to support the user during sitting, standing, or other positions. a support conversion mechanism to convert the user support from a seated configuration to a standing configuration, and vice versa, wherein the user support of the leveling structure is configured to support the user during sitting, standing, or other positions.