Photovoltaic (PV) systems are gaining popularity as a source of sustainable energy, however, undiscovered faults within these systems may cause significant efficiency reduction. Localizing these faults to the module level is important for a quick fault diagnosis and maintaining the overall system efficiency. This paper presents a new method for localizing line-to-line, line-toground, inter-string, partial shading, and open-circuit faults in an N by M PV array down to the module level. The approach utilizes a single voltage sensor and ⌈N/2⌉ switches to control the connected PV modules. The technique initially relies on identifying the faulty string, and once this string is determined, the voltage associated with each module in that string is found. Each module voltage in that string is obtained by measuring the string voltage after bypassing each module corresponding to an activated switch. Subsequently, the resulting linear equations are solved to obtain the voltage of each module in that faulty string. The technique is verfied using simulation, and expiremental setup for a 5 by 4 small-size PV system. Experimental and simulation results demonstrate that the technique can accurately localize faulty modules with only N voltage samples of the faulty string.