IoT Resources Library

Including IoT development kits, implementation reference documents, and the newest advances of the internet of things. To help more developers do more flexible applications on their IoT projects.

How to Connect Gateway to MQTT-Apache-Apollo Server 

What’s MQTT? 

MQTT is a machine-to-machine (M2M)/"Internet of Things" connectivity protocol. It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium. For example, it has been used in sensors communicating to a broker via satellite link, over occasional dial-up connections with healthcare providers, and in a range of home automation and small device scenarios. It is also ideal for mobile applications because of its small size, low power usage, minimised data packets, and efficient distribution of information to one or many receivers.

Dusun gateway supports MQTT protocol to connect to cloud platform, Please refer to the frame below

How to set up MQTT apache-Apollo server?
1. Download and Install JDK  

Go to the JDK download page: index.html

You will find the following chart on the page.

 Download the X86 or X64 windows JDK file according to users’ windows version. Launch the file "jdk-82u211-*. exe" and perform a default install. Then you will see two folders in the /windows/program files/java folder, one is JDK, the other is JRE, as the figure below shows.

2. Set JDK Environment Variables in Windows  

Open Advanced System Settings

In Windows 10 press Windows key + Pause Key, this will open the System Settings window. Go to Change settings and select the Advanced Tab. Alternatively: Open “Windows search” – you will find it next to the Windows logo. In the search field type in – advanced system settings, then click on the match on top of the list.

Set JAVA_HOME Environment variable

In “System Properties window” click “Environment Variables…”

Under “System variables” click the “New…” button and enter JAVA_HOME as “Variable name” and the path to your Java JDK directory under “Variable value”.

  1. In “Environment Variables” window under “System variables” select Path

  2. Click on “Edit…”

  3. In “Edit environment variable” window click “New”

  4. Type in  %JAVA_HOME%\bin

Update System PATH

Test your configuration

Open a new command prompt and type in:

Command:  Java -version


This will print out the version of the java if the Path variable is set correctly 

3. Download Apache-apollo and install​​

Use the links below to download the Apache-appollo software for windows:   

Uncompress the package to a local drive (e.g. E:)

Run cmd with administrator privilege and use cd command to locate the apache-apollo bin directory as the figure below shows:

Type in command:”apollo create myapollo c:\apache-apollo\broker” to create the broker:

The following directory appears in c:\ root directory.

Open a new command prompt and type in: “cd c:\apache-apollo\broker\bin\; apollo-broker run”, this will print out the following information: 

Open a web browser and type in, username: admin, password:password 

Then the MQTT server has been setup successfully, but right now, there are no devices connecting to this server:

4. Configure a Dusun Gateway to Connect to the Server   

Connect a Dusun gateway to a PC; open a web browser and type in -; then log in the gateway to do some configuration:

Username: root

Password: root

Configure MQTT in the configuration page:

Setting up the MQTT configuration as below:

MQTT Server address: fill in the PC’s IP address.

MQTT Server Port: the TCP port

Username: admin

Mqtt Password: password

Press enter and the Mqtt configuration is completed. 

You can see the gateway indication light is off and the gateway has connected to the server:

Related Link

Download this Document

How to Connect Gateway to MQTT-Apache-Apollo Server