print("Message Queue Key: ", self._mq.key)
             queues.append(self._mq)
         except sysv_ipc.ExistentialError:
-            raise RuntimeError("Message queue creation failed")
+            raise RuntimeError(
+                "Message queue creation failed"
+            ) from sysv_ipc.ExistentialError
 
         dir_path = os.path.dirname(os.path.realpath(__file__))
         cmd = [
             except sysv_ipc.BusyError:
                 time.sleep(0.001)  # wait a bit then retry!
         # uh-oh timed out
-        raise RuntimeError("Timed out waiting for PulseIn message")
+        raise RuntimeError(
+            "Timed out waiting for PulseIn message. Make sure libgpiod is installed."
+        )
 
     # pylint: enable=redefined-builtin