This repository contains the project-independent layer of a fully automated HIL (Hardware-in-the-Loop) test environment designed for testing IoT-connected devices.
The system targets an ESP32 board connected to a cloud-based MQTT broker. Through this broker, the ESP32 receives commands to control an industrial water pump via a connected inverter. Communication between the ESP32 and the inverter is achieved using the Modbus RTU protocol.
- Supports MQTT and Modbus RTU protocols
- Provides Python APIs for developing custom test cases
- Designed for HIL testing of embedded systems with cloud connectivity
This project depends on the following third-party libraries:
This repository includes only the base framework of the test environment. A project-specific layer with custom APIs was also developed but is excluded due to confidentiality constraints.
The diagram below outlines how the full test environment is structured and intended to be used.
The software architecture includes components for MQTT communication with the cloud and Modbus RTU communication with the IoT device. It provides Python APIs for creating test cases.
The diagram below illustrates the physical HIL setup to be used during testing.