Authorized Online Retailers:

AMAZON
AMAZON-jp
amzuk

Introduction

In this lesson, we will show how to use a MQTT client(MQTTBox here) to send a digit MQTT message to NodeMCU. NodeMCU will subscribe to corrsponding publish topic and display the subscription messages  on a 4-digit 7 segment LED device.

Preparation

Hardware:

Software:

Connection

NodeMCU 4 digital display
3.3V VCC
GND GND
D2 CLK
D3 DIO

Upload Sketch

Connect the NodeMCU to computer via USB cable,open this sketch by using Arduino IDE(Version1.6.4+):

Edit the code to fit your own WiFi and MQTT settings as following operations:

1)Hotspot Configration:

const char* ssid = “your_hotspot_ssid”;

const char* password = “your_hotspot_password”;

Find above code line,put your own ssid and password on there.

2)MQTT  Server  Address Setting

const char* mqtt_server = “broker.mqtt-dashboard.com”;

You can use your own MQTT broker URL or IP address to set above mqtt_server value. You can also use some famous free MQTT server to test the project such as  “broker.mqtt-dashboard.com”,  “iot.eclipse.org” etc.

3)MQTT Client Settings

If your MQTT broker require clientID,username and password authentication,you need to change

if (client.connect(clientId.c_str()))

to

if (client.connect(clientId,userName,passWord)) //put your clientId/userName/passWord here

If not,just keep them as default.

After do that,choose the coresponding board type and port type as below,then upload the sketch to the NodeMCU.

  • Board:”NodeMCU 0.9(ESP-12 Module)”
  • CPU Frequency:”80MHz”
  • Flash Size:”4M (3M SPIFFS)”
  • Upload Speed:”115200″
  • Port: Choose your own Serial Port for your NodeMCU

MQTT Client Settings

About how to config the MQTT clientr,check this link.

Topics Settings:

  • Topic to publish: OsoyooCommand
  • Payload Type: Decimal Array

Running Result

Onece the upload done,if wifi hotspot name and password setting is ok and MQTT broker is connected, open the Serial Monitor,you will see following result:

The NodeMCU serial port will show the IP address and the connection satatus,then print the command from MQTT client.NOTE: When the number is between 0 and 191, it can be displayed normally.The initial state output value is 83.

Open the MQTTBox and publish different number(0~191) to the broker,

The 4 digital LED display will show as below :

The Serial Monitor output as below:

                                    

Leave a Reply

WordPress spam blocked by CleanTalk.
Bombax Theme designed by itx