MQTT

Arrivals Board can subscribe to an MQTT broker and display incoming messages on the board in real time. This makes it an excellent companion for home automation systems like Home Assistant, Node-RED, or any service that can publish to an MQTT topic. Messages arrive the moment they are published, and Arrivals reconnects automatically if the connection drops.

MQTT source on the board

Setup

Add MQTT sheet

  1. Open Settings and tap Sources > MQTT.
  2. Toggle Enable on.
  3. Enter the Broker Host (e.g., 192.168.1.50 or mqtt.example.com).
  4. Adjust the Port if your broker uses something other than the default 1883.
  5. If your broker requires authentication, enter a Username and Password.
  6. Set the Topic to subscribe to (default is arrivals/messages).
  7. Toggle Use TLS on if your broker requires an encrypted connection.
  8. Tap Connect. Arrivals connects and begins listening for messages.
  1. Open Settings and navigate to Sources > MQTT.
  2. Toggle Enable on.
  3. Enter the Broker Host using the on-screen keyboard.
  4. Adjust the Port if needed.
  5. Enter Username and Password if required by your broker.
  6. Set the Topic (default is arrivals/messages).
  7. Toggle Use TLS on if needed.
  8. Select Connect. Arrivals connects and begins listening for messages.

Configuration reference

Option Default Description
Broker Host --- Hostname or IP address of the MQTT broker
Port 1883 Port for the MQTT connection
Username --- Optional username for broker authentication
Password --- Optional password for broker authentication
Topic arrivals/messages The MQTT topic to subscribe to
Use TLS Off Enable TLS encryption for the connection

Message payload format

Arrivals accepts two payload formats on the subscribed topic.

JSON payload

Publish a JSON object with any combination of the following fields:

Field Type Required Description
sender String No The name displayed in the sender column. If omitted, the topic name is used. Supports inline formatting.
text String Yes The message text displayed on the board. Supports inline formatting.
indicatorColor String No Hex color for the indicator lamp (e.g., "#FF0000" for red)
priority String No Controls when the message is displayed. Accepts "queue", "next", or "now". Defaults to "queue".
urgent Boolean No Legacy field. When true, equivalent to "priority": "now".

Example:

{
  "sender": "Home Assistant",
  "text": "Front door opened",
  "indicatorColor": "#FF8800",
  "urgent": false
}

Plain text payload

If the payload is not valid JSON, Arrivals treats the entire payload as the message text and uses the MQTT topic name as the sender.

Example: Publishing Garage door closed to the topic arrivals/messages displays a message with sender "arrivals/messages" and text "Garage door closed".

Troubleshooting