ekmmeters.py
def requestB(self):
        """ Issue a B read on V4 meter.

        Returns:
            bool: True if CRC match at end of call.
        """
        work_context = self.getContext()
        self.setContext("request[v4B]")
        self.m_serial_port.write("2f3f".decode("hex") + self.m_meter_address + "3031210d0a".decode("hex"))
        self.m_raw_read_b = self.m_serial_port.getResponse(self.getContext())
        unpacked_read_b = self.unpackStruct(self.m_raw_read_b, self.m_blk_b)
        self.convertData(unpacked_read_b, self.m_blk_b, self.m_kwh_precision)
        self.m_b_crc = self.crcMeterRead(self.m_raw_read_b, self.m_blk_b)
        self.setContext(work_context)
        return self.m_b_crc
def requestB(self):
        """ Issue a B read on V4 meter.

        Returns:
            bool: True if CRC match at end of call.
        """
        work_context = self.getContext()
        self.setContext("request[v4B]")
        self.m_serial_port.write("2f3f".decode("hex") + self.m_meter_address + "3031210d0a".decode("hex"))
        self.m_raw_read_b = self.m_serial_port.getResponse(self.getContext())
        unpacked_read_b = self.unpackStruct(self.m_raw_read_b, self.m_blk_b)
        self.convertData(unpacked_read_b, self.m_blk_b, self.m_kwh_precision)
        self.m_b_crc = self.crcMeterRead(self.m_raw_read_b, self.m_blk_b)
        self.setContext(work_context)
        return self.m_b_crc
Issue a B read on V4 meter.

        Returns:
            bool: True if CRC match at end of call.