Is there a fundamental issue with acquiring quality timing information from a cell phone that i should be aware of ?
Yes, the mobile sensors have some fixed output data rates at which they give the values, it primarily depends on the manufacturer of that sensor. You can look up the datasheet of that particular sensor to know more about the output data rates and the accuracies for the output data rates.
A way to calibrate matlab mobile so the timing information is better?
Regarding the timing(latency) issue, I feel the best thing to do would be to log the data for more time compared to your required time and extract the required data using MATLAB.
(For instance, you want data for 5 seconds, try logging values for a little longer, and extract the values for 5 seconds).
While I was trying to reproduce the issue I have known that my mobile's accelorometer has a fixed output data rate of 12.5,25,50,100,200,400,800 and 1600Hz with an accuracy of +/-1%. So setting the frequency at 0-12.5Hz, I mostly got them sampled at 12.5Hz and from 12.5-25Hz I have got them sampled at 25Hz and so on. Similarly I found some other sensors have a fixed output data rates of 12.5, 26, 52, 104, 208, 416, 833, 1666, 3332 and 6664 with an accuracy of +/-1%.
Hope this helps!