Jan 16

MQTT.fx 0.0.13 released

Download latest binaries at mqttfx.org.
Bugs and feature requests can be reported via the issue tracker.

New in this version:

Extended Scripting Features

  • fixed issues with starting external editor to edit scripts
  • support for subscribe/unsubscribe to Mqtt-Scripting interface

Redesinged and extended Settings Dialog

  • option to choose whether the default system editor should be use or a custom edit command
  • option to choose whether to check for updates on app start




Build in Update Feature

  • Added support Refuel API for application updates




KUDOs to my friend Dino Tsoumakis for his great work on his application update tool for Java 8 “Refuel” (view on github)!

Dec 19

MQTT.fx 0.0.12 released

Download latest binaries at mqttfx.org.
Bugs and feature requests can be reported via the issue tracker.

New in this version:

MQTT version support for 3.1 and 3.1.1
The MQTT version can be set via ConnectonProfile (default: 3.1.1, if not supported by broker: 3.1)

New: “Log”-tab
MQTT.fx 0.0.12 introduces a new tab to capture/show the logging stream:

Changed rendering of messages

Wildcard Topics
Improved handling of topics containing wildcards.

MQTT.fx is now using paho 1.0.1

Fixed bugs and issues
Fixed some issues when connect/disconnect/connection lost

Nov 11

MQTT.fx 0.0.11 released

Download latest binaries in all flavours at mqttfx.org.
Bugs and feature requests can be reported via the issue tracker.

UPDATE: Now available: MQTT.fx 0.0.11-1 containing a fix for wildcard handling!

New in this version:

Extended option menu
You can now subscribe to all recent topics with one click and also unsubscrive from all topics is supported:

Improved messages rendering
– the payload of received messages is now collapsible (Issue #15):
– topics can be unsubscribed by one click on the trash-icon:
– the selection of a subscribed topic sets the value of the topics choice boxfor e.g. un-subscrition (Issue #11)
– fixed issues with topics / messages colors

New Filter-Option
– you can now set a filter to show only the latest recevied messages (Issue #8)
– “show notification” property and “show only latest” property are stored per connection profile

Always on Top
Added a new option to set whether detached tabs should be opened always on top:

Bundled with Java 8u25

Oct 16

MQTT.fx 0.0.10 released

MQTT.fx 0.0.10 was released.

Download latest binaries in all flavours at mqttfx.org.
Bugs and feature requests can be reported via the issue tracker.

New in this version:
MQTT-Message Clipboard

Option to copy the message payload to clipboard
Service menus at publish and subscription panel: now you can clear received messages buffer and the recent topics lists

Extended logging to mqttfx.log
Added Application Window Icon (for Windows)
Now running/bundled with Java 8u20
Updated 3rd-party libs (e.g. ControlsFX 8.20.7)

Sep 13

MQTT.fx 0.0.9 released

A new version of MQTT.fx is available (probably the last release before JavaOne)

Download latest binaries in all flavours: mqttfx.org.
Bugs and feature requests can be reported via the issue tracker.

This release comes with some new features:

Message Font Size

(in respect to Gerrit Grunwald @hansolo_)
To improve ledibility of large message bodies now the font size of messages can be set to a fixed value (0.6em – 1.5em) or a dynamic size depending on message size (1.0em – 0.6em).
You can open the new Settings Dialog via Menu Extras / Settings:


Dynamic message font size:


Clear History

(also in respect to Gerrit Grunwald)
The Connection Profile Dialog (Section “General”) and the Publish/Subscribe panels now the history of last topics can be cleared.




“Never again drive me crazy with silly questions”

(in respect to David Janes @dpjanes)
The Exit Dialog now offers an option “Do not ask me again!” to get not asked again when closing the app.



Also I again have fixed some bugs (typos, usability, layout + style issues).

Aug 27

MQTT.fx 0.0.7 released

A new version of MQTT.fx is available featuring:

  • Scripting support
  • Setup/Re-configuration tool
  • Reviewed Connection Profile Editor
  • Reviewed UI and style


Download latest binaries HERE.

Scripting support

I have added support for scripts executed by the Nashorn Engine.
Thought it might be helpful for testing a MQTT message flow of a certain setup, e.g. simulate sensors sending temperature value messages. All controlled via the UI.


Adding new scripts

New scripts can be easily made available for execution via the UI. The app is scanning a folder named “scripts” located at the MQTT.fx working directory:
OS X: [USER_HOME]/Library/Application Support/MQTT-FX/scripts
Windows: [USER_HOME]\AppData\Local\MQTT-FX\scripts
Linux: [USER_HOME]/MQTT-FX/scripts
If this folder does not exists it is created by MQTT.fx containing a demo script.


Naming convention:


[INDEX] - controls the order of the entry in the drop down menu
__ - delimiter between index and name
[NAME] - the name of the menu entry (words are delimit by '_')

If you name a script “separator”, e.g. 02__separator.js a separator is added to the menu at the “index” position.


Example script:

var Thread = Java.type("java.lang.Thread");
var System = Java.type('java.lang.System');

function execute(action) {
    out("Test Script: " + action.getName());
    for (var i = 0; i < 10; i++) {
    out("Test Script: Done");
    return action;

function switchON() {
    out("fountain ON");
    mqttManager.publish("home/garden/fountain", "ON");

function switchOFF() {
    out("fountain OFF");
    mqttManager.publish("home/garden/fountain", "OFF");

function out(message){

The entry point of execution is the function execute(action).
During script execution System.out is hooked by MQTT.fx to print output to the console. Thus with System.out.println() messaged can be printed to the UI-console.

The interface to the broker-connection is the bound mqttManager. Messages can be published via the established broker connection.

Setup/Re-configuration Tool

If no configuration can be found, the app assumes its first start. The user is promoted with a setup dialog to create e new configuration.

Also if a configuration has been found but it seems to be corrupt or the format doesn't fit a newer version also a new configuration can be created or the exiting config can be opened in an external editor (assumed an editor has been assigned to open *.xml-files.


Reviewed Connection Profile Editor
Now the Connection Profile Editor is recognising wether the chosen profile has been changed (buttons are enabled/disabled accordingly). Changes can be reverted as not already applied.


Reviewed UI and Style

Greetings from Yosemity! ;-)