Configure MQTT in the application
We have decided to use MQTT for Room communication because :
- it is a very popular industry standard for IoT
- it perfectly supports the needs of the escape room
- it is easy to install and configure
- it is fast
- it is lightweight (important for Arduino boards)
- design for telemetry MQTT can send big files as well (fingerprint matrix, images, etc.)
We use MQTT for communications with and between the props, and for plugins.
You must NOT use an MQTT broker located on the Internet, you must use an MQTT broker located in your local network. Otherwise, if your Internet connection is interrupted, communication with your escape room will be completely interrupted.
MQTT is a pub / sub protocol (publish / subscribe) :
Easy MQTT broker setup
Room installation implement mosquitto broker, you have nothing to do.
However when you close Room, communications stop.
Recommended MQTT broker setup
We recommend that you configure a mosquitto broker on a Raspberry (Pi 3B / 3B+ / 4) dedicated to your escape room. You may want to use this Raspberry Pi as the escape room electrical panel prop. So when you close Room, communications between the props are always active.
Take the time to read this document if you are developing props on Arduino or Raspberry:
- MQTT known issues
- MQTT message size on Arduino
- MQTT QoS with Python Paho multi-threading