Before I get too far down this road, I thought I'd ask some opinions. I want to use some of the functions in math.h to do some GPS calculations ( see Calculate distance and bearing between two Latitude/Longitude points using haversine formula in JavaScript for a bunch of useful formulas). Math.h requires the use of type double rather than type float. I recognize that on AVR devices both types use four bytes of storage. The real question is are the types interchangeable? They appear to have different ranges and degrees of precision. Does there need to be an explicit conversion or just typecasting, or should I just avoid all Arduino functions and just use math.h calls for all math?
Thanks.
Ed