Aiming at the problem that the pedestrian navigation algorithm based on zero velocity update (ZUPT) cannot observe the heading angle, which leads to the divergence of the heading angle, an inertial pedestrian navigation algorithm based on ZUPT, zero angular rate update, and nonlinear prediction correction of heading angle error is designed. Firstly, the zero speed interval is determined by the algorithm of generalized likelihood ratio test (GLRT). In the detected zero speed range, the ZUPT algorithm is used to construct the velocity error observation, the zero angular rate update (ZARU) algorithm is used to construct the angular rate error observation, the heading angle error observation is constructed through the heading angle error observation module in the zero speed range, and the heading angle error is predicted nonlinearly in the non-zero speed range. Then, Kaiman filter is used to estimate the errors of velocity, angular velocity, position, and heading angle in the zero speed range, and the estimated errors are used to correct the errors of inertial pedestrian navigation. Through the verification of the actual pedestrian navigation system, the average error of the navigation trajectory in the complex motion state is only 0. 43 m, accounting for 0. 35% of the total distance. In the case of long endurance walking, the navigation error is only 1. 25% of the mileage. The proposed algorithm does not need to add other sensors, and does not need to limit the movement trajectory of pedestrians. It has good engineering application value. © 2023 Chinese Institute of Electronics. All rights reserved.