Have You Mastered IoT Terminals?

2025/09/17

Wednesday, Lunar Calendar July 26

Second Edition

Have You Mastered IoT Terminals?

IOT

Have You Mastered IoT Terminals?

Hello everyone! Before we officially start today’s course on “IoT Terminal Devices”, let’s take a few minutes to review the basic knowledge of IoT that we have learned before and see how well everyone has grasped it. First question, can anyone tell me the definition of IoT? That’s right, it’s the “Internet of Things”, where everything is connected. You all remember it well. Now, the second question, which event can we trace the origin of IoT back to? Correct, it’s the “Trojan Coffee Pot” incident, which is a significant milestone in the history of IoT development. Finally, what are the characteristics of IoT, and in which fields is it mainly applied? The characteristics are perception, transmission, and processing, and the application fields are numerous, such as transportation, home automation, agriculture, etc. It seems everyone has a good grasp of the old knowledge, so let’s officially enter today’s new lesson – Section 2: IoT Terminal Devices.

Have You Mastered IoT Terminals?

Have you ever wondered why ordinary items like bicycles, rice cookers, and refrigerators can connect to IoT systems and respond to our management? The secret lies within them; these items are integrated with microcontroller (MCU) systems, and all the MCUs we will use in this course are open-source. So how much do you know about microcontroller systems? Next, we will explore the mysteries of IoT terminal devices focusing on three aspects: open-source hardware for smart terminals, I/O pins of smart terminals, and programming for smart terminals.

First, let’s look at the first part, smart terminals and open-source hardware. In IoT systems, we often refer to IoT devices as terminal devices or smart terminals. The term “terminal” refers to devices that have input and output functions but relatively weak data processing capabilities. However, don’t underestimate them; essentially, they are computers. Isn’t that fascinating? In IoT systems, smart terminals play a crucial role in connecting objects to the network, and among many smart terminals, low-cost and high-performance open-source hardware has become one of the main choices for technology enthusiasts.

So what do we generally use to build smart terminals? The answer is microcontroller systems. A microcontroller is a microcomputer system integrated on a single circuit chip, and it has two outstanding advantages: small size and low cost. Because of this, it can be directly embedded or integrated into other devices, just like the rice cookers and refrigerators we mentioned earlier, which all contain it. The images on the screen show Hi3716 chip in Figure 1.2.1 and ESP32 module in Figure 1.2.2, both of which are related to microcontroller hardware.

Having discussed smart terminals, let’s talk about open-source hardware. The “hardware” in open-source hardware refers to computer hardware, which is a collective term for various physical devices composed of electronic, mechanical, and optoelectronic components in a computer system. In simple terms, open-source hardware is equivalent to “open-source” smart terminals. Currently, there are hundreds of types of open-source hardware on the market, but three models are widely used in our class: Arduino, Xugu Number, and Control Board.

First, let’s look at Arduino, which originated from an art school in Italy and is particularly popular in maker spaces. After many years of development, Arduino has many versions, each suitable for different development needs. When you work on related projects later, you can choose the appropriate version based on your needs.

Next is Xugu Number, which is an original open-source hardware from China, mainly aimed at artificial intelligence teaching and Python programming learning. It can also run Linux, making it a great helper when learning about artificial intelligence and Python programming.

Finally, we have the Control Board, which is open-source hardware specifically developed by a domestic educational team for maker education in primary and secondary schools. Its small size allows for a wider range of applications, such as smart wearables, electronic accessories, and various DIY projects.

After understanding smart terminals and open-source hardware, let’s look at the second part: programming for smart terminals. As we mentioned earlier, smart terminals are essentially programmable computers, and to make them perform specific tasks, we need to write programs using specific programming software. Moreover, different smart terminals use different programming software and programming languages.

On the screen, Table 1.22 lists commonly used programming software for smart terminals. First is Ardublock, a graphical programming software designed specifically for Arduino, making programming as easy as building blocks, which is very suitable for beginners. Then there’s Arduino IDE, which is based on C/C++ and retains the syntax specifications of C/C++, suitable for those with a certain programming foundation who want to delve deeper into programming. Next is mPython, designed for MicroPython and Python, where Python’s simple and understandable language is widely used in artificial intelligence, and you will often use it when learning related content. Finally, Mind+, a graphical programming software developed based on Blockly, is also very convenient to operate.

You can choose the programming software that suits your programming foundation and learning needs. In the upcoming practical classes, we will also get hands-on experience using these software to program smart terminals, allowing you to intuitively feel the fun and utility of programming.

Next is the third part: I/O pins of smart terminals. The core task of programming smart terminals is to control the input and output states of the pins. So what are pins? Pins are connections drawn from the internal circuits of integrated circuits to the peripheral circuits, acting as a bridge between smart terminals and external devices. Through pins, we can read data from external devices for input and also drive external devices for output.

For example, we can compare smart terminals to a house, where the pins are like doors and windows. Through these doors and windows, people outside can send things into the house, and people inside can hand things out. The role of pins is similar to that of doors and windows, serving as the key to data interaction between smart terminals and external devices. When programming to control smart terminals later, you must pay close attention to the input and output states of the pins, as this directly affects whether the smart terminal can function properly.

Have You Mastered IoT Terminals?

To help everyone better understand today’s content, let’s do a little interaction. Think about what other IoT terminal devices exist in life, which may use the open-source hardware we discussed today, and how they are programmed, and what role the pins play in them? I’ll give you 3 minutes to discuss with your classmates, and then I’ll ask a few of you to share your thoughts.

Alright, time’s up. Does anyone want to share their thoughts? This student mentioned a smart bracelet, thinking it might use the Control Board because smart bracelets are small, which fits the characteristics of the Control Board. For programming, it might use Python-related software, and the pins can be used to read heart rate data and control the display of information on the bracelet. Great analysis, let’s give him a round of applause. Does anyone else want to share? This student mentioned sensor devices in smart agriculture, which might use Arduino, programming with Arduino IDE, and the pins can be used to read soil moisture and temperature data, then transmit the data to other devices. That’s also a great idea, it seems everyone has thought carefully.

That’s about it for today’s lesson. Now let’s review what we learned today. We mainly studied the open-source hardware of smart terminals, learned about the characteristics of three commonly used open-source hardware: Arduino, Xugu Number, and Control Board; learned about programming for smart terminals and the corresponding programming software; and learned about the I/O pins of smart terminals, understanding that they are the bridge connecting smart terminals to external devices, and controlling the input and output states of the pins is the core of programming.

This knowledge is the foundation for our subsequent learning of practical IoT-related content, and everyone must master it firmly. If you have any questions after class, feel free to ask me or discuss with your classmates. In the next class, we will conduct practical exercises on IoT terminal devices, so please review the relevant content in advance and familiarize yourself with the basic operations of the programming software, so that the practical session will go more smoothly. Alright, that’s it for today’s class, see you next time!

Have You Mastered IoT Terminals?

Leave a Comment