It would be nice to be able to adjust the metrics manually that the simulator injects randomly when you start the simulator. To emulate conditions your code is handling.
One example is when you set GPS to Not Available, in a real device Speed is NULL, the simulator continues to send a random value. But in general a table of all simulated values would be nice to be able to allow random values between X and Y. And if X=Y, then of course it is a stable value.