## 1 Introduction  
Localization algorithms for automotive applications are predominantly based on _global navigation satellite systems_ (GNSS). Since road vehicles frequently travel in surroundings with poor satellite visibility (urban canyons, tunnels, etc.), additional sensors providing information about the vehicle's position and/or movement are commonly used. The integration of GNSS and _inertial measurement units_ (IMUs) in a fusion filter is the most prominent approach, often in combination with even more sensors (e.g., odometry, cameras, etc.). In tightly coupled GNSS/IMU integration algorithms, the sensor data fusion is performed in the range domain. The fusion filter inputs pseudo-range and pseudo-range-rate measurements from the GNSS receiver and utilizes them to correct position, velocity and attitude estimates derived from IMU measurements. Additional outputs of the fusion filter are IMU errors together with the GNSS receiver clock bias and drift [1]. Traditionally, the only GNSS signal available to civil users was the _Global Positioning System_'s (GPS) L1 C/A signal. With the advent of new GNSS constellations and civil signals on multiple frequencies, GNSS/IMU integration algorithm performance can be improved by utilizing these new data sources. This introduces new effects into the localization algorithm that need to be addressed. Some of these effects are the time offset between the different GNSS time scales [2], the difference between the receiver hardware delays affecting the signals from different GNSS (_inter-system bias_, ISB [3]) and _differential code biases_ (DCBs [4]). To include further aiding to the integrated navigation solution, odometry models are frequently employed. In common integration schemes, the models are based on a single wheel speed sensor measuring the angular velocity of an undriven, unsteered axle and/or non-holonomic constraints modeling the vehicle's dynamics [5; 6; 7; 8]. These schemes neglect longitudinal and lateral wheel slip and cannot aid the localization algorithm reliably whenever the vehicle is accelerating, decelerating or cornering.  
In this paper, we present an approach to deal with these challenges in a tightly coupled GNSS/IMU/odometry integration algorithm. The following Section 2 concerns the integration of GNSS measurements into the algorithm. In the beginning, an integration algorithm that works with GPS L1 C/A code pseudo-ranges and time-differenced carrier-phase measurements as the only GNSS data is presented (Section 2.1). The first upgrade step is the inclusion of pseudo-ranges derived from additional civil GPS signals on different frequencies (L2C and L5) in Section 2.2. Afterwards, Galileo signals on E1, E5a and E5b are added to the localization algorithm in Section 2.3. The utilization of pseudo-range observations on multiple carrier frequencies enables the elimination of the ionospheric error. Time-differenced carrier-phase measurements do not exhibit substantial ionospheric errors because these are removed by time-differencing. Consequently, we continue to use carrier-phase observations for GPS on L1 only and add merely the ones on E1 for Galileo. Section 3 describes an extended odometry model capable of estimating longitudinal and lateral velocity of all wheels individually. Since DCBs constitute a major problem for the combination of pseudo-ranges from different frequencies, Section 4 outlines a method to calibrate them and shows the calibration results for one type of GNSS receiver. To evaluate the performance of the upgraded algorithm in comparison to the basic one, the estimation errors of the algorithm versions are presented in Section 5. These estimation errors are obtained from differences to a higher-grade reference system, consisting of a geodetic GNSS receiver for _real-time kinematic positioning_ (RTK) and a navigation grade IMU. Finally, we discuss our conclusions in Section 6.