A method for enhancing a navigation solution for a device (100, 200) and a platform through multiple pass smoothing in at least one of a navigation module (120, 220) associated with said device (100, 200) and a navigation module associated with a server in communication with said device, wherein the mobility of the device is constrained or unconstrained within the platform and wherein the device may be tilted to any orientation, the device comprising an integrated sensor assembly (106, 206), configured to output sensor data representing motion of the device at a plurality of epochs from a first instant to a subsequent second instant, the method comprising: a) one of the navigation modules (120, 220, 134) obtaining input data comprising the sensor data from the device representing motion of the device at the plurality of epochs; b) one of the navigation modules (120, 220, 134) performing forward processing of the input data to derive interim forward navigation solutions for the epochs; c) one of the navigation modules (120, 220, 134) performing backward processing of the input data to derive interim backward navigation solutions for the epochs; d) one of the navigation modules (120, 220, 134) combining at least one quantity of the navigation solution from the interim forward navigation solutions and the interim backward navigation solutions to obtain a smoothed version of the at least one combined quantity; e) one of the navigation modules (120, 220, 134) performing forward processing of the input data and of the smoothed version of the at least one combined quantity to derive enhanced interim forward navigation solutions for the epochs; f) one of the navigation modules (120, 220, 134) performing backward processing of the input data and of the smoothed version of the at least one combined quantity to derive enhanced interim backward navigation solutions for the epochs; g) one of the navigation modules (120, 220, 134) combining at least one uncombined quantity of the navigation solution from the enhanced interim forward and backward navigation solutions to obtain an enhanced smoothed navigation solution; h) one of the navigation modules (120, 220, 134) smoothing a height quantity for the device (100, 200) by getting height from multiple independent sources, determining at least an error of the height based at least in part on at least one of the multiple sources, correcting the height based at least in part on the determined error, smoothing the corrected height, and applying the smoothed corrected height to the enhanced smoothed navigation solution; and i) one of the navigation modules (120, 220, 134) providing the enhanced smoothed navigation solution. a) one of the navigation modules (120, 220, 134) obtaining input data comprising the sensor data from the device representing motion of the device at the plurality of epochs; b) one of the navigation modules (120, 220, 134) performing forward processing of the input data to derive interim forward navigation solutions for the epochs; c) one of the navigation modules (120, 220, 134) performing backward processing of the input data to derive interim backward navigation solutions for the epochs; d) one of the navigation modules (120, 220, 134) combining at least one quantity of the navigation solution from the interim forward navigation solutions and the interim backward navigation solutions to obtain a smoothed version of the at least one combined quantity; e) one of the navigation modules (120, 220, 134) performing forward processing of the input data and of the smoothed version of the at least one combined quantity to derive enhanced interim forward navigation solutions for the epochs; f) one of the navigation modules (120, 220, 134) performing backward processing of the input data and of the smoothed version of the at least one combined quantity to derive enhanced interim backward navigation solutions for the epochs; g) one of the navigation modules (120, 220, 134) combining at least one uncombined quantity of the navigation solution from the enhanced interim forward and backward navigation solutions to obtain an enhanced smoothed navigation solution; h) one of the navigation modules (120, 220, 134) smoothing a height quantity for the device (100, 200) by getting height from multiple independent sources, determining at least an error of the height based at least in part on at least one of the multiple sources, correcting the height based at least in part on the determined error, smoothing the corrected height, and applying the smoothed corrected height to the enhanced smoothed navigation solution; and i) one of the navigation modules (120, 220, 134) providing the enhanced smoothed navigation solution.