Puede complicar el sistema, pero una IMU (Unidad de Medición Inercial) puede mejorar considerablemente el rendimiento de su velocímetro, si se agrega al receptor GPS. Eso se aplica también para las pendientes.
Un IMU consiste en un conjunto de acelerómetros, giroscopios y magnetómetros (funcionan bien juntos, pero no necesariamente los necesita todos), que permiten un cálculo preciso del encabezado de su sistema (El coche en este caso). La forma en que se calcula esto se conoce a menudo como AHRS (Sistema de referencia de actitud y encabezado).
El beneficio está claro de inmediato: conocer su rumbo ayuda enormemente a un sistema basado en GPS para determinar su dirección y velocidad de movimiento, que se puede usar para estimar su posición en diferentes puntos. El receptor GPS en sí mismo es muy ruidoso e impreciso, y esto hace que su posición medida rebote alrededor del real en un radio de 1 a 20+ metros.
Sobre la inclinación
El uso de un acelerómetro para determinar la inclinación de su automóvil es mucho más preciso que el cálculo de la diferencia de altitud, porque es solo una variación en la dirección de la fuerza G.
La desventaja de esto es que necesita una unidad de cómputo, que necesita realizar algunos cálculos pesados. Pero he hecho un experimento con un STM32 (Cortex M3) y (con otras personas) hemos podido calcular el encabezado cada 20 ms aproximadamente, sin una gran optimización. Así que es algo que puedes lograr fácilmente con un microcontrolador comparable.