I have been using the WhenVirtual device for the last ten days with great results. It has been a useful tool to track my goals of no more than 3 hours a the computer without a quick break and no more than 10 hours in the last 24 hours.
Presence detection using the ultrasonic distance measurement feature has been more reliable than I would have expected. The slight upward angle of the device ensures that most items on your desk are not in the detection range of the device. Though, if you put a coffee cup in front of it will make a false detection. I have just been using this as another good reason to keep the top of my desk a little cleaner. Most surprisingly, it does not falsely detect the back support of my desk chair when I push it up to my desk at the end of the day.
I am currently considering a small improvement to the detection method to help the user prevent false detection of objects on the desk. The current detection threshold is a distance less than 100cm. When an object is detected, a black dot is displayed in the upper left corner of the screen to communicate to the user that detection has occurred. I am thinking about adding a different display indicator for objects that are detected closer than 50cm. Anything less than 50cm is likely some object on the desk that is obstructing the line of sight between the ultrasonic sensor and the user. The plan then would be to display a triangle in the upper left corner of the device to indicate that a false detection is occurring.