<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _start_scan(self, active):
 """Begin scanning forever """


        success, retval = self._set_scan_parameters(active=active)
        if not success:
            return success, retval

        try:
            response = self._send_command(6, 2, [2])
            if response.payload[0] != 0:
                self._logger.error('Error starting scan for devices, error=%d', response.payload[0])
                return False, {'reason': "Could not initiate scan for ble devices, error_code=%d, response=%s" % (response.payload[0], response)}
        except InternalTimeoutError:
            return False, {'reason': "Timeout waiting for response"}

        return True, None