  Algorithms for state estimation of humanoid robots usually assume that the
feet remain flat and in a constant position while in contact with the ground.
However, this hypothesis is easily violated while walking, especially for
human-like gaits with heel-toe motion. This reduces the time during which the
contact assumption can be used, or requires higher variances to account for
errors. In this paper, we present a novel state estimator based on the extended
Kalman filter that can properly handle any contact configuration. We consider
multiple inertial measurement units (IMUs) distributed throughout the robot's
structure, including on both feet, which are used to track multiple bodies of
the robot. This multi-IMU instrumentation setup also has the advantage of
allowing the deformations in the robot's structure to be estimated, improving
the kinematic model used in the filter. The proposed approach is validated
experimentally on the exoskeleton Atalante and is shown to present low drift,
performing better than similar single-IMU filters. The obtained trajectory
estimates are accurate enough to construct elevation maps that have little
distortion with respect to the ground truth.
