@requires_firmware(<NUM_LIT>)<EOL><INDENT>def pm(self):<DEDENT>
resp = []<EOL>data = {}<EOL>self.cnxn.xfer([<NUM_LIT>])<EOL>sleep(<NUM_LIT>)<EOL>for i in range(<NUM_LIT:12>):<EOL><INDENT>r = self.cnxn.xfer([<NUM_LIT>])[<NUM_LIT:0>]<EOL>resp.append(r)<EOL><DEDENT>data['<STR_LIT>']     = self._calculate_float(resp[<NUM_LIT:0>:<NUM_LIT:4>])<EOL>data['<STR_LIT>']   = self._calculate_float(resp[<NUM_LIT:4>:<NUM_LIT:8>])<EOL>data['<STR_LIT>']    = self._calculate_float(resp[<NUM_LIT:8>:])<EOL>sleep(<NUM_LIT:0.1>)<EOL>return data<EOL>
Read the PM data and reset the histogram

        **NOTE: This method is supported by firmware v18+.**

        :rtype: dictionary

        :Example:

        >>> alpha.pm()
        {
            'PM1': 0.12,
            'PM2.5': 0.24,
            'PM10': 1.42
        }