diff --git a/src/mqtt_bridge/bridge.py b/src/mqtt_bridge/bridge.py
index 9f779708f85e6756615ea919fa139f04de42bf3d..63efddb364935312b2dc8f16fe88b2c92f1ce97f 100644
--- a/src/mqtt_bridge/bridge.py
+++ b/src/mqtt_bridge/bridge.py
@@ -112,9 +112,12 @@ class MqttToRosBridge(Bridge):
         now = rospy.get_time()
 
         if self._interval is None or now - self._last_published >= self._interval:
-            ros_msg = self._create_ros_message(mqtt_msg)
-            self._publisher.publish(ros_msg)
-            self._last_published = now
+            try:
+                ros_msg = self._create_ros_message(mqtt_msg)
+                self._publisher.publish(ros_msg)
+                self._last_published = now
+            except Exception as e:
+                rospy.logerr(e)
 
     def _create_ros_message(self, mqtt_msg):
         u""" create ROS message from MQTT payload