This paper aims to establish a post processing algorithm to estimate the upper limb motion, given a set of measurements from wearable sensors representing the orientation of the shoulder, upper arm and lower arm. The motivation of the development is the measurement of the upper limb motion for subjects with motor impairments, such as post-stroke patients preventing the use of specific motions for calibration purposes and allowing the sensors to be relatively insensitive to their mounting positions. The type of sensors has been left general, with the experimental validation in this paper carried out using inertial sensors and magnetic trackers. The method is validated both numerically and experimentally, and shows improvements compared to the common inverse kinematics approach, especially in the practical conditions where sensor mounting alignment is suboptimal.