In this paper we present the uDirect algorithm as a novel approach for mobile phone centric observation of a user's facing direction, through which the device and user orientations relative to earth coordinate are estimated. While the device orientation estimation is based on accelerometer and magnetometer measurements in standing mode, the unique behavior of measured acceleration during stance phase of a human's walking cycle is used for detecting user direction. Furthermore, the algorithm is independent of initial orientation of the device which gives the user higher space of freedom for long term observations. As the algorithm only relies on embedded accelerometer and magnetometer sensors of the mobile phone, it is not susceptible to shadowing effect as GPS. In addition, by performing independent estimations during each step of walking the model is robust to error accumulation. Evaluating the algorithm with 180 data samples from 10 participates has empirically confirmed the assumptions of our analytical model about the unique characteristics of the human stance phase for direction estimation. Moreover, our initial inspection has shown a system based on our algorithm outperforms conventional use of GPS and PCA analysis based techniques for walking distances more than 2 steps.