diff --git a/lbrynet/core/LBRYcrdWallet.py b/lbrynet/core/LBRYcrdWallet.py
index 75a71e1c0..936a441cb 100644
--- a/lbrynet/core/LBRYcrdWallet.py
+++ b/lbrynet/core/LBRYcrdWallet.py
@@ -41,11 +41,10 @@ class LBRYcrdWallet(object):
     """This class implements the LBRYWallet interface for the LBRYcrd payment system"""
     implements(ILBRYWallet)
 
-    def __init__(self, db_dir, rpc_user, rpc_pass, rpc_url, rpc_port, wallet_dir=None, wallet_conf=None,
-                 lbrycrdd_path=None):
+    def __init__(self, db_dir, wallet_dir=None, wallet_conf=None, lbrycrdd_path=None):
+
         self.db_dir = db_dir
         self.db = None
-        self.rpc_conn_string = "http://%s:%s@%s:%s" % (rpc_user, rpc_pass, rpc_url, str(rpc_port))
         self.next_manage_call = None
         self.wallet_balance = Decimal(0.0)
         self.total_reserved_points = Decimal(0.0)
@@ -64,6 +63,13 @@ class LBRYcrdWallet(object):
         self.manage_running = False
         self.lbrycrdd_path = lbrycrdd_path
 
+        settings = self.get_rpc_conf()
+        rpc_user = settings["username"]
+        rpc_pass = settings["password"]
+        rpc_port = settings["rpc_port"]
+        rpc_url = "127.0.0.1"
+        self.rpc_conn_string = "http://%s:%s@%s:%s" % (rpc_user, rpc_pass, rpc_url, str(rpc_port))
+
     def start(self):
 
         def make_connection():
@@ -315,6 +321,21 @@ class LBRYcrdWallet(object):
     def get_new_address(self):
         return threads.deferToThread(self._get_new_address)
 
+    def get_rpc_conf(self):
+        settings = {"username": "rpcuser",
+                    "password": "rpcpassword",
+                    "rpc_port": 8332}
+        if os.path.exists(self.wallet_conf):
+            conf = open(self.wallet_conf)
+            for l in conf:
+                if l.startswith("rpcuser="):
+                    settings["username"] = l[8:].rstrip('\n')
+                if l.startswith("rpcpassword="):
+                    settings["password"] = l[12:].rstrip('\n')
+                if l.startswith("rpcport="):
+                    settings["rpc_port"] = int(l[8:].rstrip('\n'))
+        return settings
+
     def _get_rpc_conn(self):
         return AuthServiceProxy(self.rpc_conn_string)
 
diff --git a/lbrynet/lbrynet_console/LBRYConsole.py b/lbrynet/lbrynet_console/LBRYConsole.py
index e98c563af..60dac2679 100644
--- a/lbrynet/lbrynet_console/LBRYConsole.py
+++ b/lbrynet/lbrynet_console/LBRYConsole.py
@@ -220,55 +220,21 @@ class LBRYConsole():
         d = self.settings.save_lbryid(self.lbryid)
         return d
 
-    def _check_config_newlines(self, config_path):
-        f = open(config_path, 'r')
-        lines = [l for l in f]
-        f.close()
-        if lines[-1][-1] != "\n":
-            f = open(config_path, 'w')
-            for l in lines:
-                if l[-1] == "\n":
-                    f.write(l)
-                else:
-                    f.write(l + "\n")
-            f.close()
-
-    def _get_lbrycrd_settings(self):
-        settings = {"username": "rpcuser",
-                    "password": "rpcpassword",
-                    "rpc_port": 8332}
-        if os.path.exists(self.lbrycrd_conf):
-            self._check_config_newlines(self.lbrycrd_conf)
-            lbrycrd_conf = open(self.lbrycrd_conf)
-            for l in lbrycrd_conf:
-                if l.startswith("rpcuser="):
-                    settings["username"] = l[8:-1]
-                if l.startswith("rpcpassword="):
-                    settings["password"] = l[12:-1]
-                if l.startswith("rpcport="):
-                    settings["rpc_port"] = int(l[8:-1])
-        return settings
-
     def _get_session(self):
         def get_default_data_rate():
             d = self.settings.get_default_data_payment_rate()
             d.addCallback(lambda rate: {"default_data_payment_rate": rate if rate is not None else MIN_BLOB_DATA_PAYMENT_RATE})
             return d
 
-        def create_lbrycrd_wallet(lbrycrd_options):
-            lbrycrdd_path = None
-            if self.start_lbrycrdd is True:
-                lbrycrdd_path = self.lbrycrdd_path
-                if not lbrycrdd_path:
-                    lbrycrdd_path = self.default_lbrycrdd_path
-            return LBRYcrdWallet(self.db_dir, lbrycrd_options['username'], lbrycrd_options['password'],
-                                 "127.0.0.1", lbrycrd_options['rpc_port'], wallet_dir=self.lbrycrd_dir,
-                                 wallet_conf=self.lbrycrd_conf, lbrycrdd_path=lbrycrdd_path)
-
         def get_wallet():
             if self.wallet_type == "lbrycrd":
-                d = threads.deferToThread(self._get_lbrycrd_settings)
-                d.addCallback(create_lbrycrd_wallet)
+                lbrycrdd_path = None
+                if self.start_lbrycrdd is True:
+                    lbrycrdd_path = self.lbrycrdd_path
+                    if not lbrycrdd_path:
+                        lbrycrdd_path = self.default_lbrycrdd_path
+                d = defer.succeed(LBRYcrdWallet(self.db_dir, wallet_dir=self.lbrycrd_dir,
+                                                wallet_conf=self.lbrycrd_conf, lbrycrdd_path=lbrycrdd_path))
             else:
                 d = defer.succeed(PTCWallet(self.db_dir))
             d.addCallback(lambda wallet: {"wallet": wallet})
diff --git a/lbrynet/lbrynet_gui/LBRYGui.py b/lbrynet/lbrynet_gui/LBRYGui.py
index 3b97ecbb4..f8cdfa8c4 100644
--- a/lbrynet/lbrynet_gui/LBRYGui.py
+++ b/lbrynet/lbrynet_gui/LBRYGui.py
@@ -282,19 +282,20 @@ class LBRYDownloader(object):
             lbrycrd_conf = open(self.wallet_conf)
             for l in lbrycrd_conf:
                 if l.startswith("rpcuser="):
-                    self.wallet_user = l[8:-1]
+                    self.wallet_user = l[8:].rstrip('\n')
                 if l.startswith("rpcpassword="):
-                    self.wallet_password = l[12:-1]
+                    self.wallet_password = l[12:].rstrip('\n')
                 if l.startswith("rpcport="):
-                    self.wallet_rpc_port = int(l[8:-1])
+                    self.wallet_rpc_port = int(l[8:-1].rstrip('\n'))
 
     def _get_session(self):
         lbrycrdd_path = None
         if self.start_lbrycrdd is True:
             lbrycrdd_path = self.lbrycrdd_path
-        wallet = LBRYcrdWallet(self.db_dir, self.wallet_user, self.wallet_password, "127.0.0.1",
-                               self.wallet_rpc_port, wallet_dir=self.wallet_dir,
-                               wallet_conf=self.wallet_conf, lbrycrdd_path=lbrycrdd_path)
+
+        wallet = LBRYcrdWallet(self.db_dir, wallet_dir=self.wallet_dir, wallet_conf=self.wallet_conf,
+                               lbrycrdd_path=lbrycrdd_path)
+
         peer_port = None
         if self.run_server:
             peer_port = self.peer_port