It worked well on my Vivoactive HR, why did it need to be "improved"? A two mile run starting and finishing at the same point will show an altitude difference of over 500 ft. Is there a way to just use the altitude from the GPS location on a map instead? When I create a training course Garmin Connect calculates the altitude from a map and it appears to be pretty accurate.