diff --git a/haphilipsjs/__init__.py b/haphilipsjs/__init__.py
index <HASH>..<HASH> 100644
--- a/haphilipsjs/__init__.py
+++ b/haphilipsjs/__init__.py
@@ -1,6 +1,7 @@
 import requests
 import logging
 
+
 LOG = logging.getLogger(__name__)
 BASE_URL = 'http://{0}:1925/{1}/{2}'
 TIMEOUT = 5.0
@@ -25,11 +26,13 @@ class PhilipsTV(object):
         self.source_id = None
         self.channels = None
         self.channel_id = None
+        self.session = requests.Session()
+        self.session.mount("http://", requests.sessions.HTTPAdapter(pool_connections=1, pool_maxsize=1))
 
     def _getReq(self, path):
         try:
 
-            with requests.get(BASE_URL.format(self._host, self.api_version, path), timeout=TIMEOUT) as resp:
+            with self.session.get(BASE_URL.format(self._host, self.api_version, path), timeout=TIMEOUT) as resp:
                 if resp.status_code != 200:
                     return None
                 return resp.json()
@@ -38,7 +41,7 @@ class PhilipsTV(object):
 
     def _postReq(self, path, data):
         try:
-            with requests.post(BASE_URL.format(self._host, self.api_version, path), json=data, timeout=TIMEOUT) as resp:
+            with self.session.post(BASE_URL.format(self._host, self.api_version, path), json=data, timeout=TIMEOUT) as resp:
                 if resp.status_code == 200:
                     return True
                 else:
Reuse a session with a single cached connection