Details of an open-source planar perovskite solar cell simulator, which includes ion vacancy migration within the perovskite layer coupled to charge carrier transport throughout the perovskite and adjoining transport layers in one dimension, are presented. The model equations are discretised in space using a finite element scheme, and temporal integration of the resulting system of differential algebraic equations is carried out in MATLAB. The user is free to modify device parameters, as well as the incident illumination and applied voltage. Time-varying voltage and/or illumination protocols can be specified, e.g. to simulate current–voltage sweeps, or to track the open-circuit conditions as the illumination is varied. Typical simulations, e.g. current–voltage sweeps, only require computation times of seconds to minutes on a modern personal computer. An example set of hysteretic current–voltage curves is presented.