In this lesson, we will show how to use a UPD APP to remote control a TMP1637 4-digit display. We can send a command via the UDP protocol, the NodeMCU will receive and display some messages on a 4-digit 7 segment LED device.
4-Digit Display module is a 12-pin module. In this module, we use a TM1637 to scale down the number of controlling pins to 2. That is to say, it controls both the content and the luminance via only 2 digital pins of Arduino or other mcu board. For projects that require alpha-numeric display, this can be a good choice.
The display module has 4 pins:
VCC & GND – Self explanatory
CLK – Clock; connect to any digital pin on the Arduino
DIO – Data I/O; connect to any digital pin on the Arduino
|NodeMCU||4 digital display|
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 settings as following operations:
#define STASSID “***” // replace *** with your wifi SSID
#define STAPSK “***” // replace *** with your wifi password
Find above code line,put your own ssid and password on there.
2)UDP local port Settings
// Define the local port to listen on
unsigned int localPort = 8888;
We use the “8888” local port here, you can change it to your own local port.
3)Boad & COM Port Settings
After do that,choose the coresponding board type and port type as below,then upload the sketch to the NodeMCU.
About how to config the UDP APP,check this link.
Click the setting icon button, you can see the UDP configration page.
UDP response text display enable button – Enable text play
UDP Incoming Port – Use this port to listen for and accept connections from remote UDP devices, keep the default setting : “8888”
IP address – Change it to your NodeMCU IP address, you can get the IP address from the Arduino IDE Serial Monitor after the code upload down.
Port – Keep the default setting: “8888”.
Keep other settings as default, then click the “Save” button to save your changes.
Upload the code to Arduino board, then open Arduino Serial monitor in the upper right corner.
Now please set your Baud Rate to 115200
you will see NodeMCU IP address as following:
You can also see the 4-digit display as below:
Above result shows your NodeMCU IP address (in my case, 192.168.0.19) , NodeMCU is now waiting for UDP message at port 8888.
Onece the upload done,if wifi hotspot name and password setting is ok and UDP APP is connected, open the Serial Monitor, you can check which button has been pressed.
When you click the “F1” button, you can see the number “1” on the display.
If you click the “F8” button,
And you will see it displays number “8”.
At this point of the experiment, it is easy to find that the eight buttons “F1-F8” on the UDP APP correspond to a number, and when we press a button, the number will appear on the text display bar and the four-digit digital tube of the APP respectively.
What if I need to send other information? You can try to change the code by yourself and learn more through examples and library files
Question A: Why could OSOYOO IoT APP send message to NodeMCU without even knowing the IP address of the NodeMCU board?
Answer: OSOYOO IoT APP default destination IP is 192.168.1.255 which is a broadcasting IP address. Broadcasting means the APP will send UDP message to all device in the same Wifi Network.
So even we does not set destination IP address to NodeMCU IP, the NodeMCU can still get the message.
Question B: Can I change default sending destination IP address and Port Number of OSOYOO IoT APP?
Yes, you can! Osoyoo IoT APP default IP is 192.168.1.255 and default port is 8888. If you need to change the setting,
For example, if our NodeMCU IP address is 192.168.0.8, here is the guide to make the change to 192.168.0.8:
1)Open APP, click Setting button in upper right corner
2)Use 192.168.0.8to replace default IP 192.168.1.255
3)keep default port number 8888 without changing
4)turn on the switch of UDP Response Text Display
5)Click Save button to save the changes you just made
6)Click Back Arrow to go back APP front UI
Question A: I touched my APP F1 key, but no message shows up in my NodeMCU serial monitor, why?
Sometimes, broadcasting IP Address is not necessarily 192.168.1.255, for example, if your NodeMCU IP address is 192.168.0.8, the wifi network broadcasting IP is 192.168.0.255.
So we suggest you replace 192.168.1.255 with 192.168.0.255 to match your network mask of NodeMCU. Of course you can directly set the NodeMCU IP as destination in APP.
If you have any question about OSOYOO NodeMCU products, feel free to contact us or leave comments here.
In next lesson, we will connect a sensor to NodeMCU and send sensor data to another Moquitto client software.
We need to note that ESP8266 is a 2.4G WiFi device, please access to 2.4G network, if you access to a 5G router network, there will be a prompt that the network connection is not successful.
|1||OSOYOO NodeMCU Board||https://osoyoo.store/products/osoyoo-nodemcu-module-usb-c-esp8266-esp-12f-wifi-development-board-with-ch340-for-arduino-ide-micropython-includes-tutorial?variant=41099777638511|
|3||LED(6 x White, 6 x Red, 6 x Yellow, 6x Green)||https://osoyoo.store/products/led-packs-for-arduino?variant=31957816442991|
|5||Push Button and Hats||https://osoyoo.store/products/push-button-and-hats-5pcs?variant=39879253131375|
|7||potentiometer(10K lohm adjustable resistor)||https://osoyoo.store/products/potentionmeter-10k-adjustable-resistor-3pcs?variant=39879281016943|
|8||I2C LCD Display (16*2)||https://osoyoo.store/products/i2c-1602-lcd-display-module-blue-backlight?variant=41099777933423|
|9||Temperature&Humidity Sensor Module||https://osoyoo.store/products/dht11-temperature-humidity-sensor?variant=41099777998959|
|11||4*AA Battery Holder Box||https://osoyoo.store/products/battery-box-for-4pcs-aaa-battery?variant=41099778031727|
|12||4 LED Module||https://osoyoo.store/products/4-digit-7-segment-display?variant=41099778064495|
|13||Stepper Motor +Bridge||https://osoyoo.store/products/stepper-motor-with-driver-28byj-48-5v-dc?variant=41099778130031|
|14||Tlit Sensor Module||https://osoyoo.store/products/sw-520d-basic-tilt-switch?variant=41099778162799|
|15||Infrared Remote Controller||https://osoyoo.store/products/infrared-remote-controller-for-arduino-raspberry-pi-microbit-stemmodel-2019011500?variant=31958087532655|
DownLoad Url osoyoo.com