Received signal strength (RSS) fingerprinting is an attractive solution for indoor positioning using Wireless Local Area Network (WLAN) due to the wide availability of WLAN access points and the ease of monitoring RSS measurements on WLAN-enabled mobile devices. Fingerprinting systems rely on a radiomap collected using a reference device inside the localisation area; however, a major limitation is that the quality of the location information can be degraded if the user carries a different device. This is because diverse devices tend to report the RSS values very differently for a variety of reasons. To ensure compatibility with the existing radiomap, we propose a self-calibration method that attains a good mapping between the reference and user devices using RSS histograms. We do so by relating the RSS histogram of the reference device, which is deduced from the radiomap, and the RSS histogram of the user device, which is updated concurrently with positioning. Unlike other approaches, our calibration method does not require any user intervention, e.g. collecting calibration data using the new device prior to positioning. Experimental results with five smartphones in a real indoor environment demonstrate the effectiveness of the proposed method and indicate that it is more robust to device diversity compared with other calibration methods in the literature.