Basic Architecture of an IoT Device: Design and Essential Components

Share this article

LinkedIn
Twitter

The demand for and development of IoT (Internet of Things) devices continue to grow steadily. It is estimated that in 2024 there were nearly 19 billion connected IoT devices worldwide, a figure that keeps rising driven by industry digitalization, smart cities, home automation, and remote monitoring.

IoT devices function as intelligent nodes capable of collecting environmental data through sensors, processing it locally, and transmitting it via communication networks to remote platforms for storage, analysis, and visualization. This architecture enables automated decision-making, process optimization, and improved efficiency across multiple systems.

This article aims to describe the basic components required for developing an IoT device prototype.

Basic Architecture of an IoT Device

A typical IoT device is composed of several functional blocks that work together. Below, the essential components that make up these systems are described.

Microcontroller

The processing unit forms the core of an IoT device, as it is responsible for running the firmware and coordinating the operation of the other system components. In most IoT applications, a microcontroller (MCU) is used due to its low power consumption, high peripheral integration, and low cost. However, for more complex applications or those requiring greater processing capabilities, microprocessors may be employed.

For the example developed in this article, a 32-bit microcontroller from Geehy, belonging to the APM32E030 series, is used. This device is based on the ARM Cortex-M0+ architecture, designed for low-power embedded applications with fast real-time response.

The microcontroller features 6 KB of Flash memory for program storage and 8 KB of SRAM for managing data during runtime. Additionally, it offers up to 55 input/output (I/O) pins, providing great flexibility for connecting external peripherals.

Its communication interfaces include:

  • UART, used for communication with the communication module via AT commands.
  • Two I²C buses and two SPI interfaces, used for connecting sensors and other external devices.
  • 12-bit Analog-to-Digital Converter (ADC), which enables precise reading of analog signals from sensors.

Regarding timing capabilities, the APM32E030 features a comprehensive timing system that enables tasks to be executed with high precision and speed, which is essential for real-time IoT applications. Its resources include:

  • One 16-bit advanced timer
  • Five 16-bit general-purpose timers
  • One 16-bit basic timer
  • Two watchdog timers, which enhance system reliability
  • One 24-bit SysTick timer, integrated into the ARM core, used for operating system management or periodic tasks

This set of peripherals enables the implementation of efficient applications with fast response times and precise control of the internal processes of the IoT device. Thanks to the libraries provided by the manufacturer, firmware development can be carried out quickly and easily.

The code below shows the activation of the USART and GPIO port A. Here, we call the RCM functions to enable these two peripherals to connect to the system clock.

Once the GPIO is ready for use, we define a union to include all the GPIO parameters and configure the alternate function (GPIO_MODE_AF), push-pull type, high-speed operation, and input/output levels without pull-up or pull-down resistors.

Next, we individually select GPIO PA14 and PA15 as USART2 pins and call GPIO_Config to apply the actual configuration. After this, the GPIOs are ready for operation.

The last six lines of code initialize USART2, setting it to operate at a baud rate of 115,200 and enabling it to receive RX signals and transmit TX signals.

Sensor

Sensors allow the IoT device to interact with the physical environment. They are responsible for measuring variables such as temperature, humidity, pressure, light, motion, or gases, among others.

Each sensor converts a physical variable into an electrical signal that can be interpreted by the processing unit. Sensor selection directly depends on the application and the requirements for accuracy, range, and power consumption.

This article does not go into detail about sensors, as their selection depends on the type of application, such as:

  • Environmental monitoring, using sensors for temperature, humidity, air quality, or atmospheric pressure.
  • Smart agriculture applications, where soil moisture, solar radiation, and rainfall sensors are used to optimize irrigation.
  • Industrial control systems, focused on monitoring variables such as current, voltage, vibration, or machinery status.
  • Smart cities, for managing street lighting, parking control, or infrastructure monitoring.
  • Tracking and telemetry devices, such as location systems, smart meters, or predictive maintenance equipment.

These examples highlight the versatility of the proposed system and reinforce the idea that, although the type of sensor may vary significantly, the overall IoT device architecture and data flow remain largely unchanged.

Communication module

The communication module is responsible for transmitting and receiving data between the IoT device and other systems, such as cloud servers or mobile applications. This component enables the device to integrate within the IoT ecosystem.

Depending on the range, power consumption, and required speed, different communication technologies can be used, such as:

  • Wi-Fi
  • Bluetooth or Bluetooth Low Energy (BLE)
  • LoRa / LoRaWAN
  • Zigbee
  • Cellular networks (2G, 4G, LTE-M, NB-IoT)

As explained in the article published in the July/August 2025 edition (issues 848–849) of the Revista Española de Electrónica, one of the emerging technologies for IoT applications is LTE Cat1 bis, which offers a balance between coverage, transmission speed, and power consumption.


For the development of tests and the preparation of this article, the Fibocom LE270 modem was used.

Logo-Fibocom---blanco

This module features an ultra-compact LCC+LGA design measuring 17.7 × 15.8 × 2.4 mm, providing space flexibility in customer device designs. At the same time, the module supports 1 μA DRX low-power standby mode and 1 μA PSM mode to save energy and extend battery life even under extremely low-power conditions, ensuring a prolonged product lifespan.

The module is compatible with a wide range of protocols and integrated communication stacks, including:

  • TCP / UDP
  • HTTP / HTTPS
  • FTP / FTPS
  • MQTT
  • SSL / TLS
  • IPv6 support through an integrated protocol stack

Communication between the microcontroller and the LE270 module is carried out via a UART interface using AT commands. For this communication, an auxiliary function called enviarAT() was created, responsible for sending text strings containing AT commands to the Fibocom modem through UART2, which is dedicated exclusively to communication with the module.

The function handles sending the command, as well as receiving and processing the response generated by the modem, allowing the operation status to be verified and appropriate actions to be taken.

Once this function is defined, the program structure is based on the initialization of the serial ports:

  • UART1, used for system debugging and monitoring.
  • UART2, used for serial communication with the Fibocom LE270 module.

Through the sequential sending of AT commands, the modem is initialized, registered on the cellular network, and the mobile data connection is established, enabling information transmission between the IoT device and the remote platform.

Next, sensor data must be read. Sensor data acquisition is performed periodically by the microcontroller using the previously described communication interfaces (I²C, SPI, or ADC, depending on the type of sensor used). The obtained value represents the physical quantity measured in the environment, such as temperature, humidity, pressure, light, or other relevant variables.

This article does not go into the specific implementation of sensor reading, as IoT applications cover a wide range of use cases, and the choice of sensor, as well as its acquisition method, directly depends on the specific requirements of each application.

Nonetheless, regardless of the sensor used, the general acquisition flow is common: the microcontroller obtains the raw data, processes it locally—applying filtering, scaling, or validation tasks if necessary—and prepares it for subsequent transmission. This local preprocessing helps optimize bandwidth usage, reduce power consumption, and improve the overall efficiency of the IoT system.

After reading the sensor, the measured value can be sent via the communication module to the Internet. In this example, the data is sent to the ThingSpeak platform, where it can be visualized and analyzed.

Antenna

Although antenna selection is often considered secondary, choosing and integrating the right antenna is critical for IoT device performance. In our example, we used the 2JF0224P model from 2J Antennas. This is a flexible internal antenna with a UF.L connector for direct PCB connection. 2J Antennas offers a wide range of solutions, covering various frequency bands, placement options, sizes, and mechanical requirements.

Logo-2J-antennas---blanco

For this case, it is necessary to use an antenna compatible with the LTE frequency bands supported by the module. Depending on the application requirements and the device’s mechanical constraints, different types of antennas can be used, such as external antennas, PCB-type internal antennas, flexible antennas, or adhesive antennas. In all cases, careful attention must be paid to their placement in the design, avoiding interference with other components and following the recommendations of the communication module manufacturer.

Power Supplies

The power supply provides the energy required for the operation of the IoT device. It may consist of:

  • Batteries
  • External power supplies
  • Solar panels or other renewable energy systems

Power supply design is a critical aspect, especially for devices that need to operate for long periods without maintenance. For this reason, low energy consumption is a key factor in IoT system design.

Eurotronix, Experts in IoT Solutions

Throughout this article, the basic components that make up an IoT device have been described, with particular emphasis on the development of a functional prototype based on evaluation boards. The role of each system block—sensors, processing unit, communication module, firmware, power supply, and antenna—has been analyzed, demonstrating how their proper integration enables the creation of complete and scalable IoT solutions.

The use of a low-power microcontroller together with an LTE Cat‑1 bis cellular modem demonstrates that it is possible to achieve an optimal balance between performance, coverage, and energy efficiency, which is particularly relevant for remote monitoring applications and long-term deployments. Additionally, the use of AT commands and standard protocols facilitates interoperability and the adaptation of the system to different cloud platforms.

It is worth noting that all tests were conducted using evaluation boards for both the microcontroller and the cellular module, and at Eurotronix, we provide our clients with all these materials to help accelerate their IoT device development process.

Author

Paula Ortega

IoT Communications FAE at Eurotronix

Share this article

Resumen de privacidad

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team understand which sections of the website you find most interesting and useful.