What you get

  • Full MQTT 3.1.1 and 5.0: QoS 0/1/2, retain, Last Will, persistent sessions, shared subscriptions.
  • A web dashboard at http://localhost:8567: clients, topics, a live message stream, users and permissions, bridges, the certificate.
  • TLS on port 8883 straight after installation — a self-signed certificate is created on first start, and your own is uploaded on the SSL tab.
  • MQTT over WebSocket for browser clients — on the dashboard port, at /mqtt.
  • No limit on devices or messages. Free, including for commercial use.

Installed in a couple of minutes

  • Download the installer from the download page (about 6 MB) and run it — administrator rights are required.
  • Choose a mode: “Install as a Windows service” starts the broker with the system; “Shortcuts only” leaves starting it to you. A separate checkbox opens ports 1883, 8883 and 8567 in the firewall.
  • Open the dashboard — the installer offers http://localhost:8567. Sign in as admin / admin and change the password under Profile straight away.
  • Create a user for your devices under Users and grant permissions — the “Own branch” button creates the rule $u/#.
WhatWhere
ProgramC:\Program Files\ELX MQTT Broker
Data and settingsC:\ProgramData\ELX MQTT Broker
ServiceELXMQTTBroker, automatic start
Ports1883 — MQTT, 8883 — MQTT over TLS, 8567 — dashboard and WebSocket
Settings live in ProgramData because the broker rewrites them itself from the dashboard. Uninstalling leaves that folder in place: it holds your users, permissions and messages.

No installer: a single .exe

The portable version is one file, elxmqttbroker.exe (about 13 MB). Put it in a folder of its own and run it: config.json, a data folder and a self-signed certificate appear next to it. The same copy can run as a service — the -service install/start/stop/uninstall commands are in the documentation.

elxmqttbroker.exe                    # start with default settings
elxmqttbroker.exe -web :9000         # dashboard on another port
elxmqttbroker.exe -version           # version and build stamp

Checking the connection

Any MQTT client will do: connect to localhost:1883 as the user you created, subscribe to its branch and publish a message — it shows up both in the client and in the dashboard's live stream. If you have no client at hand, take the free ELX MQTT Client for Windows.

For devices on your network to connect, give them this computer's IP address and make sure ports 1883 and 8883 are open in the firewall — the installer does it with a checkbox.

Limitations

  • The Windows build is x64 only: there is no 32-bit or ARM version.
  • The broker is a single process; clustering is not supported.
  • For round-the-clock service with many devices a Linux server is more convenient: there the broker installs from an APT repository and updates with the system.

Questions

Which Windows versions are supported?

Windows 10 and Windows 11, 64-bit (x64). No separate runtime is needed: the broker is a single executable.

Does the broker start by itself after a reboot?

Yes, if you chose “Install as a Windows service”: the ELXMQTTBroker service is set to start automatically.

Do I need Docker or WSL?

No. It is a native Windows program and runs without Docker, WSL or virtual machines.

How do I connect from another computer or device?

Use the IP address of the computer running the broker and port 1883 (or 8883 for TLS), create a user in the dashboard, and check that the ports are open in Windows Firewall.

How do I update the broker on Windows?

Download the installer of the new version and run it. Settings, users and messages live in C:\ProgramData\ELX MQTT Broker and are kept across updates.