A multi-energy phase shift analysis of all published proton-proton (pp) scattering data in the energy range T lab ≤ 30 MeV is presented. In the description of all partial waves the well-known long range interaction is included: the improved Coulomb, the vacuum polarization, and the one-pion-exchange potential. In the lower partial waves the energy-dependent analysis uses a P-matrix parametrization for the short range interaction. Special attention is paid to the electric interaction, the definition of the phase shifts and the selection of the data. The fit to the final data set comprising 360 scattering observables results in χ 2 /N df = 1.0, where N df is the number of degrees of freedom. The ppπ 0-coupling constant is determined to be g 2 ppπ 0 /4π = 14.5 ± 1.2, but there are several indications for a lower value. The optimum value for the P-matrix radius b ≈ 1.4 fm is satisfying. Single-energy phase shifts with second derivative matrices, and effective range parameters are given.