--- a/Util/mqtt.py
+++ b/Util/mqtt.py
@@ -39,7 +39,7 @@
 
         self.m_state = MqttClient.Disconnected
 
-        self.m_client = mqtt.Client(clean_session=self.m_cleanSession, protocol=self.protocolVersion)
+        self.m_client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION1, clean_session=self.m_cleanSession, protocol=self.protocolVersion)
 
         self.m_client.on_connect = self.on_connect
         self.m_client.on_message = self.on_message
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,2 +1,2 @@
-paho_mqtt>=1.4
+paho_mqtt>=2
 PyQt5>=5.14.2,<6
--- a/setup.py
+++ b/setup.py
@@ -40,7 +40,7 @@
     long_description=long_description,
     long_description_content_type='text/markdown',
     python_requires='>=3.6',
-    install_requires=["paho_mqtt>=1.4", "PyQt5>=5.14.2,<6"],
+    install_requires=["paho_mqtt>=2", "PyQt5>=5.14.2,<6"],
     packages=['GUI', 'Util'],
     entry_points=entry_points,
     scripts=scripts,
