Smart incubator

Self-regulating temperature and humidity device with wireless communication for egg incubation.

Introduction

The system was developed around an STM32 Nucleo F446RE board programmed in C language using STM32CubeIDE and FreeRTOS, allowing multiple concurrent tasks for environmental control, sensor reading, user interface, and remote communication.

Parameter Control

The incubator automatically regulates temperature and humidity using a DHT11 sensor. Based on these measurements, implementing hysteresis according to the incubation stage, a finite-state machine regulates the parameters by activating:

  • 220V halogen lamp for heating.
  • 12V cooler for thermal dissipation and humidity reduction.
  • 5V ultrasonic humidifier to increase ambient humidity.

Additionally, automatic egg rotation is performed using a DC motor. To verify its operation, an encoder was implemented to read revolutions.

The system includes multiple priority and alarm cases implemented in ControlTask.

User Interface

The local interface consists of a 16x2 LCD display with I2C communication and a KY-040 rotary encoder used to navigate through a menu. From this interface it is possible to:

  • View temperature, humidity and incubation stage
  • Configure incubation parameters.
  • Run individual tests for major parts (motor, lamp, humidifier)
  • Manually correct process time and stage.

The system also incorporates a wireless alarm system using an ESP32-C3 Super Mini that sends alerts to the user through a Telegram bot.

PCB and Enclosure

In addition to the embedded software development, a PCB was designed for voltage regulation, and interconnection between the various electronic modules of the system.

An cabinet was also designed, containing both the incubation space itself and housing the device's electronics.

Repository

Access to source code, 3D designs and documentation can be found in the following repository.

Related

Latests projects