added updatePosition method, missing calculating the first time, when starting position is unknown