Detecting abnormal health is an important issue for mobile health, especially for chronic diseases. We present a free-living health monitoring system based on simple standalone smart phones, which can accurately compute walking speed. This phone app can be used to validate status of the major chronic condition, Chronic Obstructive Pulmonary Disease (COPD), by estimating gait speed of actual patients. We first show that smart phone sensors are as accurate for monitoring gait as expensive medical accelerometers. We then propose a new method of computing human body motion to estimate gait speed from the spatio-temporal gait parameters generated by regular phone sensors. The raw sensor data is processed in both time and frequency domain and pruned by a smoothing algorithm to eliminate noise. After that, eight gait parameters are selected as the input vector of a support vector regression model to estimate gait speed. For trained subjects, the overall root mean square error of absolute gait speed is <0.088 m/s, and the error rate is <6.11%. We design GaitTrack, a free living health monitor which runs on Android smart phones and integrates known activity recognition and position adjustment technology. The GaitTrack system enables the phone to be carried normally for health monitoring by transforming carried spatio-temporal motion into stable human body motion with energy saving sensor control for continuous tracking. We present validation by monitoring COPD patients during timed walk tests and healthy subjects during free-living walking. We show that COPD patients can be detected by spatio-temporal motion and abnormal health status of healthy subjects can be detected by personalized trained models with accuracy >84%.