An automated poultry farm system for temperature and lighting control significantly improves bird health, growth rates, and energy efficiency. India is the world’s third largest egg producer and fifth largest broiler producer, with millions of small-scale poultry farmers — particularly in Andhra Pradesh, Telangana, and Tamil Nadu — operating layer and broiler farms. Manual control of temperature and lighting is labour-intensive and error-prone; an Arduino-based automation system costs under ₹3,000 and can improve feed conversion ratio and mortality rates meaningfully. This guide covers the complete build for a poultry farm automation system.
Table of Contents
- Temperature and Lighting Requirements
- Components Required
- Wiring Diagram
- Complete Arduino Code
- Brooder Temperature Control
- Poultry Lighting Program
- Alarm System
- Frequently Asked Questions
Temperature and Lighting Requirements
Poultry production relies on precise environmental control at each stage of growth:
Broiler temperature programme:
- Week 1 (day-old chicks): 32-35°C at chick level, reduce by 0.5°C per day
- Week 2: 28-30°C
- Week 3: 26-28°C
- Week 4+: 22-24°C (target comfort zone)
Lighting programme (broilers):
- Day 1-7: 23 hours light, 1 hour dark (stimulates feed intake)
- Day 8-14: 20 hours light, 4 hours dark
- Day 15+: 18 hours light, 6 hours dark (intermittent or continuous)
Layer lighting (for egg production):
- Hens need minimum 16 hours of light per day to maintain peak egg production
- Light intensity: 10-20 lux at bird level
- Sudden changes in light duration cause drop in egg production — increase gradually
In Indian summer when ambient temperatures exceed 35-40°C, heat stress is the primary killer of poultry. Proper ventilation, cooling, and shade are essential; the automation system monitors temperature and activates cooling fans and foggers to maintain acceptable conditions.
Components Required
- Arduino Uno or Mega (₹200-600)
- DHT22 temperature and humidity sensor x2-4 (₹300-600)
- DS3231 RTC module (₹100-200)
- 4-channel relay module (₹100-200) — for heater, fan, lights, fogger
- 16×2 LCD with I2C backpack (₹100-200)
- Active buzzer (₹20-50)
- Push buttons x3 (for settings) (₹30-60)
- LDR light sensor (optional, for monitoring ambient light) (₹10-30)
- Project enclosure IP55 (₹200-400)
Total: approximately ₹1,100-1,900 for the controller. The controlled devices (heaters, fans, lights, fogger nozzles) are purchased separately based on shed size.
Wiring Diagram
| Component | Arduino Pin |
|---|---|
| DHT22 Sensor 1 | D4 |
| DHT22 Sensor 2 | D5 |
| DS3231 RTC (SDA) | A4 |
| DS3231 RTC (SCL) | A5 |
| LCD I2C (SDA/SCL) | A4/A5 (shared) |
| Relay 1 (Heater) | D8 |
| Relay 2 (Fan/Cooler) | D9 |
| Relay 3 (Lights) | D10 |
| Relay 4 (Fogger) | D11 |
| Buzzer | D12 |
Complete Arduino Code
#include <DHT.h>
#include <RTClib.h>
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#define DHT1_PIN 4
#define DHT2_PIN 5
#define RELAY_HEATER 8
#define RELAY_FAN 9
#define RELAY_LIGHTS 10
#define RELAY_FOGGER 11
#define BUZZER 12
DHT dht1(DHT1_PIN, DHT22);
DHT dht2(DHT2_PIN, DHT22);
RTC_DS3231 rtc;
LiquidCrystal_I2C lcd(0x27, 16, 2);
// Broiler age in days (set at start of flock, update daily)
int birdAge = 7; // Update this to current flock age
// Calculate target temperature based on bird age
float getTargetTemp() {
if (birdAge <= 7) return 33.0;
if (birdAge <= 14) return 30.0;
if (birdAge <= 21) return 28.0;
if (birdAge <= 28) return 26.0;
return 24.0;
}
// Check if lights should be on based on time
bool shouldLightsBeOn(DateTime now) {
int hour = now.hour();
// Day 1-7: 23 hours light (off 2-3 AM)
if (birdAge <= 7) return !(hour == 2);
// Day 8-14: 20 hours light (off 1-5 AM)
if (birdAge = 1 && hour = 0 && hour < 6);
}
void setRelay(int pin, bool on) {
digitalWrite(pin, on ? LOW : HIGH); // Active-LOW relay
}
void setup() {
Serial.begin(9600);
dht1.begin(); dht2.begin();
rtc.begin();
lcd.begin(16, 2); lcd.backlight();
pinMode(RELAY_HEATER, OUTPUT); setRelay(RELAY_HEATER, false);
pinMode(RELAY_FAN, OUTPUT); setRelay(RELAY_FAN, false);
pinMode(RELAY_LIGHTS, OUTPUT); setRelay(RELAY_LIGHTS, false);
pinMode(RELAY_FOGGER, OUTPUT); setRelay(RELAY_FOGGER, false);
pinMode(BUZZER, OUTPUT);
}
void loop() {
float t1 = dht1.readTemperature();
float t2 = dht2.readTemperature();
float h1 = dht1.readHumidity();
float avgTemp = (t1 + t2) / 2.0;
float targetTemp = getTargetTemp();
DateTime now = rtc.now();
// Temperature control
setRelay(RELAY_HEATER, avgTemp targetTemp + 3.0);
setRelay(RELAY_FOGGER, avgTemp > targetTemp + 5.0 && h1 targetTemp + 8.0) || (avgTemp < targetTemp - 5.0);
if (alarm) { tone(BUZZER, 1000, 500); }
lcd.setCursor(0, 0);
lcd.printf("T:%.1f/%.1f Tgt:%.0f", avgTemp, h1, targetTemp);
lcd.setCursor(0, 1);
lcd.printf("Day:%d %02d:%02d %s", birdAge, now.hour(), now.minute(),
alarm ? "ALARM" : "OK ");
Serial.printf("Day:%d T:%.1f/%.1f Target:%.1f
", birdAge, t1, t2, targetTemp);
delay(10000);
}
Brooder Temperature Control
The most critical period for temperature control is the first 7 days with day-old chicks. Precise brooder temperature directly affects chick survivability. Mount temperature sensors at chick level (10-15 cm above the floor litter), not at handler height. Use two sensors on opposite sides of the brooder area to detect hot spots from uneven heater placement. Common heaters for Indian poultry farms:
- Infrared brooder (gas): Traditional, most common in Indian village farms. Control is manual — add a gas solenoid valve with Arduino control for automation.
- Electrical brooder: 500-1000W heat lamp. Easiest to control with relay — simply switch on/off. Cost effective for small flocks.
- Hot water radiators: Used in large commercial farms for uniform heat distribution. Controlled via water flow valve.
Poultry Lighting Program
The DS3231 RTC ensures accurate timekeeping for lighting programs even during power outages. For Indian farms where power cuts are common, store the lighting schedule in EEPROM and implement a manual override button for emergency lighting during power restoration. LED lights are strongly preferred over incandescent in modern Indian poultry farms — 15W LED provides the same light output as a 100W incandescent at one-sixth the electricity cost, with negligible heat output that is important in summer.
Alarm System
High-priority alarms for Indian poultry farms:
- High temperature (> target + 8°C): Immediate alert — heat stress mortality can occur within 30 minutes
- Power failure: Battery backup with buzzer immediately alerts farmer
- Fan failure: If temperature rises despite fan relay being active, fan motor may have failed
- Humidity too high (>80%): Increases risk of respiratory disease in hot conditions
Add a SIM800L module to send SMS alerts to the farmer’s mobile phone for critical alarms when the farmer is not physically present in the farm. In India, this is especially important for large sheds where the farmer may be away during the day.
Frequently Asked Questions
How many temperature sensors do I need for a 1000 bird broiler shed?
For a standard 1000-bird shed (approximately 100-150 sqm), use minimum 4 temperature sensors: one in each corner of the shed at bird level. Temperature stratification in poultry sheds can be 3-5°C between the hot (near heater) and cool (near sidewalls) zones. Using an average of all sensors gives the most representative temperature for control decisions. Identify and address hot spots or cold spots by adjusting heater placement rather than raising or lowering average set temperature.
What is the correct humidity range for broiler chick rearing in India?
During brooding (first 2 weeks), maintain 60-70% relative humidity. Very low humidity (below 40%) causes dehydration in young chicks and respiratory irritation. Very high humidity (above 80%) in combination with high temperature causes severe heat stress and promotes respiratory disease organisms. In Indian summer, maintaining humidity below 80% is challenging — fogger systems should have safety cut-offs if humidity exceeds 75% regardless of temperature.
Can I use the same controller for both broilers and layers on the same farm?
Yes, but configure the birdAge variable to 0 for broilers and use a separate lighting programme variable for layers. Layer lighting control is simpler (maintain 16+ hours per day throughout production) while broiler lighting follows the age-dependent programme described above. Use a toggle button to switch between Broiler and Layer mode, stored in EEPROM so it persists across power cycles.
How do I protect electronics from ammonia in poultry sheds?
Poultry sheds have high ammonia concentrations from bird droppings, which corrodes electronic components rapidly. Mount the controller electronics outside the shed in an IP55 sealed enclosure. Run only sensor cables into the shed through cable glands. Apply conformal coating to the PCB inside the controller. Replace DHT22 sensors inside the shed every 12-18 months as ammonia degrades the humidity sensing polymer. Use commercial-grade sensors with PTFE filters for sensors inside heavily ammonia-contaminated environments.
Add comment