1/3 trong 11 IP của BrainFarm trên Cao nguyên IP Silicon Hiland

Avicore

Hệ sinh thái nuôi ấp gà bán hoang dã thông minh

Quy trình Liên hoàn cước 6 lớp chống mạt triệt để. Tỷ lệ nở tăng từ 45% lên 92%. Mã nguồn mở miễn phí cho cộng đồng.

Để có đàn gà bán hoang dã cần:

Avi Core + Avi FoodSpa + Avi Split
Mô hình được tổng hợp từ lý thuyết / kinh nghiệm / trải nghiệm thực tế, tham khảo mô hình nuôi gà rừng lai của Thái Lan / Indonesia / Nhật Bản / Úc
92% Tỷ lệ nở
6 Lớp bảo vệ
0% Thuốc thú y
Ổ ấp
IoT
Sợi lá thuốc
Vô cơ
Vôi
Hồ dầu
Vành đai nhiệt

Tại sao Avicore ra đời?

Từ thực nghiệm đau thương đến giải pháp thành công

Nghiên cứu 53 cá thể

Quá trình đào thải tự nhiên khắc nghiệt đã chọn lọc ra 12 cá thể tinh tú nhất từ đàn 53 con ban đầu. Đây là những chiến binh sống sót qua mọi thử thách của tự nhiên.

53 Cá thể ban đầu
12 Tinh tú còn lại

Vấn nạn Mạt gà

3 tháng lăn lộn, 6 ổ ấp thất bại hoàn toàn vì ký sinh trùng. Mạt gà - những kẻ hút máu li ti đã tàn phá mọi nỗ lực ấp nở ban đầu.

3 tháng thất bại
6 ổ ấp mất trắng
100% do ký sinh trùng

Kết luận quan trọng

"Trong nuôi gà bán hoang dã, kẻ thù lớn nhất không phải là thú dữ, mà là những con mạt nhỏ li ti. Avicore ra đời để chấm dứt nỗi đau đó."
Avicore = Anti-Mite System + IoT Monitoring

Quy trình "Liên hoàn cước" 6 lớp

Hệ thống phòng thủ đa lớp bảo vệ ổ ấp khỏi côn trùng, vi khuẩn và điều kiện môi trường bất lợi.

01

Vành đai nhiệt

Physical Sterilization

Sử dụng dây nhiệt viền quanh khu vực ấp. Tạo rào cản nhiệt độ, tiêu diệt vi khuẩn và côn trùng bay có ý định xâm nhập.

Dây nhiệt
Khử trùng vật lý
// Kiểm soát vành đai nhiệt thermal_barrier.setTemp(38);
02

Bề mặt vô trùng

Inorganic Surface

Nền và tường đánh hồ dầu láng mặt, rải vôi bột trắng. Triệt tiêu mọi khe kẽ - Mạt gà không có chỗ trú ẩn (nơi mà gỗ, tre, rơm thường cung cấp).

Hồ dầu láng
Vôi bột trắng
// Bề mặt láng mịn surface.noGaps() == true
03

Ổ ấp vô cơ

Mineral Nesting

Sử dụng 02 nửa ống nhựa phi 90 chặn 2 bên gờ phải/trái và vật liệu lót bằng khoáng vô cơ (Cát, Biochar, tro). Khác với ổ rơm (hữu cơ), vật liệu vô cơ không phân hủy, không giữ ẩm và không cho mạt làm tổ.

02 nửa ống nhựa phi 90
Đá, cát xử lý
// Vật liệu vô cơ material.isOrganic() == false
04

Nhiệt gầm & Khí động học

Thermal & Airflow

Đèn nhiệt đặt dưới gầm ổ. Thiết kế hở hoàn toàn từ lưng gà trở lên. Giữ ổ luôn khô ráo (mạt rất sợ khô). Đảm bảo gà luôn được thở khí tươi, thoát khí độc và hơi thuốc dư thừa.

Đèn nhiệt gầm
Thiết kế hở
// Thông khí + Khô ráo airflow.open() && humidity < 50%
05

Sợi lá thuốc sinh học

Natural Defense - 80g

Sử dụng định lượng 80g sợi lá thuốc lót dưới bụng. Xông hơi Nicotine tự nhiên tại vùng "thân dưới" (bụng, cánh, đuôi). Kết hợp với thiết kế hở từ lưng gà lên đảm bảo an toàn.

80g/ổ ấp
Thoáng khí phía trên
Lưu ý an toàn: Bắt buộc thiết kế hở từ lưng gà lên. Thay mới mỗi 14 ngày.
Thay thế: Bột diatomaceous earth (DE) hoặc tro bếp khô nếu không dùng sợi lá thuốc.
06

Giám sát thông minh

IoT Monitoring

Cảm biến nhiệt - ẩm - sáng kết nối app. Cảnh báo ngay khi thông số lệch chuẩn, đảm bảo "bệnh viện phụ sản" luôn vận hành hoàn hảo 24/7.

Kết nối App
Cảnh báo realtime
// Bệnh viện phụ sản 24/7 maternity.monitor(24/7);

Hiệu quả từng lớp bảo vệ

Dữ liệu thực nghiệm (Tháng 3-12/2025)

TRƯỚC Avicore

45% Tỷ lệ nở
6/6 Ổ thất bại do mạt
3-5 lần/tháng Bùng phát mạt
35% Gà con chết yểu
Áp dụng Avicore

SAU Avicore

92% Tỷ lệ nở
0/8 Ổ thất bại do mạt
0 lần/tháng Bùng phát mạt
5% Gà con chết yểu
Điều kiện thực nghiệm:
  • Địa điểm: Cao nguyên Di Linh, độ cao 1.000m
  • Khí hậu: Nhiệt độ 16-32°C, độ ẩm 70-85%
  • Giống gà: Gallus Gallus, Gà Ri, Gà Hơ Mông
  • Số mẫu: 8 ổ ấp, 96 trứng, 3 lứa liên tiếp
  • Thời gian: 6 tháng theo dõi liên tục

SOP + BOM - Bắt đầu trong 5 phút

Quy trình chuẩn hóa và danh sách vật tư đầy đủ để bạn triển khai ngay

SOP - Quy trình 5 bước

1
QUÉT

Vệ sinh sạch khu vực ấp, loại bỏ rơm rạ, vật liệu hữu cơ cũ

2
KHÒ

Khò lửa toàn bộ bề mặt nền, tường trong bán kính 1m

3
RẮC

Rắc vôi bột đều, đánh hồ dầu láng mặt nền và chân tường

4
LẮP

Lắp 02 nửa ống nhựa phi 90 + Cát/Biochar/tro + đèn nhiệt gầm + sợi lá thuốc

5
KẾT NỐI

Cài đặt cảm biến IoT, kết nối app, test cảnh báo

Bảo trì: Thay sợi lá thuốc mỗi 14 ngày, thay vôi mỗi 30 ngày

BOM - Avicore cho 10 Cabin

Chi phí đầu tư trọn gói hệ thống nuôi gà bán hoang dã quy mô 10 ổ ấp

Hạng mục Chi tiết Chi phí
Nhà ấp 4m × 4m, tim cột 2.4m × 2.4m, xây chia 10 Cabin 32.000.000đ
Thiết bị điện Đèn sưởi, dây nhiệt, ổ cắm, công tắc, aptomat... 5.000.000đ
10 Ổ ấp Can nhựa, ke sắt, khoáng Cát/Biochar/Tro... 2.000.000đ
Dụng cụ phụ trợ Vật liệu, dụng cụ vệ sinh, bảo trì... 2.000.000đ
TỔNG ĐẦU TƯ 41.000.000đ
Quy mô 10 cabin = 10 ổ ấp, mỗi ổ ~12 trứng, tổng công suất ~120 trứng/chu kỳ
Chưa bao gồm: FoodSpa Avi và Spit Avi ~ 32m² ~ 48 triệu đồng
Tải BOM Excel đầy đủ

Sơ đồ cắt lớp ổ ấp Avicore

Không khí thoáng (từ lưng gà lên)
🐔 Gà mái ấp
Lớp 5: Sợi lá thuốc rìa ổ (30g)
Lớp 3: Cát/Biochar/tro vô cơ trộn sợi thuốc 50g (8cm)
02 nửa ống nhựa phi 90 chặn 2 bên gờ phải/trái
Lớp 4: Đèn nhiệt gầm (45W)
Lớp 2: Vôi bột + Hồ dầu
Lớp 1: Dây nhiệt viền ngoài

Thiết kế quan trọng: Hở hoàn toàn từ lưng gà trở lên để:

  • ✅ Gà thở khí tươi, thoát khí độc
  • ✅ Nicotine chỉ tác động vùng bụng/cánh (nơi mạt trú)
  • ✅ Dùng được liều cao (80g) mà gà không say

Phương pháp "3 Tự"

Bên cạnh việc ấp, hướng dẫn cách duy trì đàn 12 con (và các lứa sau) theo phong cách tự nhiên.

T1 Ăn tự chọn

Self-Selective Feeding

Kho thức ăn mở, gà tự cân bằng dinh dưỡng theo nhu cầu cơ thể. Không cần can thiệp, để bản năng dẫn dắt.

  • Ngũ cốc hỗn hợp (thóc, ngô, đậu)
  • Côn trùng tự nhiên (giun, dế)
  • Rau xanh và cỏ tươi
  • Khoáng chất (vỏ sò, canxi)
Gà tự biết cần gì - hãy tin tưởng bản năng tự cân bằng của chúng!

T2 Ngủ tự do

Self-Selected Sleeping

Tôn trọng bản năng chọn vị trí trú ẩn của gà. Không ép buộc, để gà tự tìm nơi an toàn nhất.

  • Tự chọn cành cây bưởi ở các độ cao
  • Góc tối yên tĩnh
  • Khu vực thoáng mát
  • Tự do di chuyển ban đêm
Giấc ngủ tự nhiên giúp gà khỏe mạnh và đề kháng tốt hơn.

T3 Spa tự phục vụ

Self-Service Spa

Bồn tắm cát/tro/than để gà tự bảo vệ mình hàng ngày. Đây là cách diệt ký sinh trùng tự nhiên hiệu quả nhất.

  • Bồn cát mịn sạch
  • Tro bếp khô
  • Than hoạt tính
  • Khu phơi nắng sáng
Tắm cát/tro là bản năng - gà tự diệt ve rận hàng ngày!

Lợi ích của phương pháp 3 Tự

95% Giảm bệnh tật
+40% Tăng năng suất trứng
0% Thuốc thú y
95% Lông mượt đẹp

Phần mềm quản lý ổ ấp

Hướng dẫn xây dựng hệ thống giám sát và điều khiển nhiệt độ, độ ẩm, ánh sáng cho từng ổ ấp cá thể.

Kiến trúc hệ thống

Cảm biến
DHT22
BH1750
Soil Moisture
Vi điều khiển
ESP32
Thiết bị điều khiển
Đèn sưởi
Quạt
Phun sương

Mã nguồn mẫu

incubator_controller.ino
/*
 * Avicore IoT - Bộ điều khiển ổ ấp thông minh
 * Phiên bản: 1.0.0
 * License: MIT Open Source
 */

#include <WiFi.h>
#include <DHT.h>
#include <BH1750.h>
#include <Wire.h>

// ============ CẤU HÌNH PIN ============
#define DHT_PIN 4           // Cảm biến nhiệt độ/ẩm
#define HEATER_PIN 16       // Relay đèn sưởi
#define FAN_PIN 17          // Relay quạt thông gió
#define MIST_PIN 18         // Relay phun sương
#define LED_STATUS 2        // LED trạng thái

// ============ NGƯỠNG THAM SỐ ============
struct IncubatorParams {
    float tempMin = 37.5;   // Nhiệt độ tối thiểu (°C)
    float tempMax = 38.5;   // Nhiệt độ tối đa (°C)
    float humidMin = 55.0;  // Độ ẩm tối thiểu (%)
    float humidMax = 65.0;  // Độ ẩm tối đa (%)
    int lightMin = 50;      // Ánh sáng tối thiểu (lux)
    int lightMax = 200;     // Ánh sáng tối đa (lux)
};

IncubatorParams params;
DHT dht(DHT_PIN, DHT22);
BH1750 lightMeter;

// ============ BIẾN TOÀN CỤC ============
float currentTemp = 0;
float currentHumid = 0;
uint16_t currentLight = 0;

void setup() {
    Serial.begin(115200);
    Serial.println("🐣 Avicore IoT - Khởi động...");
    
    // Khởi tạo pin
    pinMode(HEATER_PIN, OUTPUT);
    pinMode(FAN_PIN, OUTPUT);
    pinMode(MIST_PIN, OUTPUT);
    pinMode(LED_STATUS, OUTPUT);
    
    // Khởi tạo cảm biến
    dht.begin();
    Wire.begin();
    lightMeter.begin();
    
    // Kết nối WiFi
    connectWiFi();
    
    Serial.println("✅ Hệ thống sẵn sàng!");
}

void loop() {
    // Đọc cảm biến
    readSensors();
    
    // Điều khiển tự động
    autoControl();
    
    // Gửi dữ liệu lên server
    sendData();
    
    // Nhấp nháy LED trạng thái
    blinkStatus();
    
    delay(5000); // Cập nhật mỗi 5 giây
}

void readSensors() {
    currentTemp = dht.readTemperature();
    currentHumid = dht.readHumidity();
    currentLight = lightMeter.readLightLevel();
    
    Serial.printf("📊 Nhiệt: %.1f°C | Ẩm: %.1f%% | Sáng: %d lux\n",
                  currentTemp, currentHumid, currentLight);
}

void autoControl() {
    // === ĐIỀU KHIỂN NHIỆT ĐỘ ===
    if (currentTemp < params.tempMin) {
        digitalWrite(HEATER_PIN, HIGH);  // Bật đèn sưởi
        digitalWrite(FAN_PIN, LOW);
        Serial.println("🔥 Bật sưởi - Nhiệt độ thấp");
    } 
    else if (currentTemp > params.tempMax) {
        digitalWrite(HEATER_PIN, LOW);
        digitalWrite(FAN_PIN, HIGH);     // Bật quạt làm mát
        Serial.println("❄️ Bật quạt - Nhiệt độ cao");
    }
    else {
        digitalWrite(HEATER_PIN, LOW);
        digitalWrite(FAN_PIN, LOW);
    }
    
    // === ĐIỀU KHIỂN ĐỘ ẨM ===
    if (currentHumid < params.humidMin) {
        digitalWrite(MIST_PIN, HIGH);    // Bật phun sương
        Serial.println("💧 Bật phun sương - Độ ẩm thấp");
    }
    else if (currentHumid > params.humidMax) {
        digitalWrite(MIST_PIN, LOW);
        digitalWrite(FAN_PIN, HIGH);     // Thông gió giảm ẩm
    }
    else {
        digitalWrite(MIST_PIN, LOW);
    }
}

void connectWiFi() {
    const char* ssid = "YOUR_WIFI_SSID";
    const char* password = "YOUR_WIFI_PASSWORD";
    
    WiFi.begin(ssid, password);
    while (WiFi.status() != WL_CONNECTED) {
        delay(500);
        Serial.print(".");
    }
    Serial.printf("\n📶 Đã kết nối WiFi: %s\n", WiFi.localIP().toString().c_str());
}

void sendData() {
    // Gửi dữ liệu lên server qua HTTP/MQTT
    // Xem phần Python Server để biết chi tiết
}

void blinkStatus() {
    digitalWrite(LED_STATUS, !digitalRead(LED_STATUS));
}
avicore_server.py
"""
Avicore IoT - Server giám sát đa ổ ấp
Phiên bản: 1.0.0
License: MIT Open Source
"""

from flask import Flask, jsonify, request
from datetime import datetime
import sqlite3
import json

app = Flask(__name__)

# ============ CẤU HÌNH ============
class IncubatorConfig:
    """Cấu hình ngưỡng cho từng ổ ấp"""
    
    DEFAULT_PARAMS = {
        'temp_min': 37.5,
        'temp_max': 38.5,
        'humid_min': 55.0,
        'humid_max': 65.0,
        'light_min': 50,
        'light_max': 200
    }
    
    # Cấu hình theo giai đoạn ấp (ngày)
    PHASE_PARAMS = {
        'phase_1': {  # Ngày 1-7
            'temp_min': 38.0, 'temp_max': 38.5,
            'humid_min': 55, 'humid_max': 60
        },
        'phase_2': {  # Ngày 8-18
            'temp_min': 37.5, 'temp_max': 38.0,
            'humid_min': 50, 'humid_max': 55
        },
        'phase_3': {  # Ngày 19-21 (nở)
            'temp_min': 37.0, 'temp_max': 37.5,
            'humid_min': 65, 'humid_max': 75
        }
    }

# ============ DATABASE ============
def init_db():
    """Khởi tạo cơ sở dữ liệu SQLite"""
    conn = sqlite3.connect('avicore.db')
    c = conn.cursor()
    
    # Bảng ổ ấp
    c.execute('''
        CREATE TABLE IF NOT EXISTS incubators (
            id TEXT PRIMARY KEY,
            name TEXT,
            start_date TEXT,
            egg_count INTEGER,
            status TEXT DEFAULT 'active'
        )
    ''')
    
    # Bảng dữ liệu cảm biến
    c.execute('''
        CREATE TABLE IF NOT EXISTS sensor_data (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            incubator_id TEXT,
            temperature REAL,
            humidity REAL,
            light INTEGER,
            timestamp TEXT,
            FOREIGN KEY (incubator_id) REFERENCES incubators(id)
        )
    ''')
    
    # Bảng cảnh báo
    c.execute('''
        CREATE TABLE IF NOT EXISTS alerts (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            incubator_id TEXT,
            alert_type TEXT,
            message TEXT,
            timestamp TEXT,
            resolved INTEGER DEFAULT 0
        )
    ''')
    
    conn.commit()
    conn.close()

# ============ API ENDPOINTS ============
@app.route('/api/incubators', methods=['GET'])
def get_incubators():
    """Lấy danh sách tất cả ổ ấp"""
    conn = sqlite3.connect('avicore.db')
    c = conn.cursor()
    c.execute('SELECT * FROM incubators WHERE status = "active"')
    incubators = c.fetchall()
    conn.close()
    
    return jsonify({
        'success': True,
        'data': [
            {
                'id': i[0], 'name': i[1], 
                'start_date': i[2], 'egg_count': i[3]
            } for i in incubators
        ]
    })

@app.route('/api/incubator//data', methods=['POST'])
def receive_sensor_data(incubator_id):
    """Nhận dữ liệu từ cảm biến ESP32"""
    data = request.json
    
    conn = sqlite3.connect('avicore.db')
    c = conn.cursor()
    
    # Lưu dữ liệu
    c.execute('''
        INSERT INTO sensor_data 
        (incubator_id, temperature, humidity, light, timestamp)
        VALUES (?, ?, ?, ?, ?)
    ''', (
        incubator_id,
        data['temperature'],
        data['humidity'],
        data['light'],
        datetime.now().isoformat()
    ))
    
    # Kiểm tra cảnh báo
    check_alerts(c, incubator_id, data)
    
    conn.commit()
    conn.close()
    
    return jsonify({'success': True, 'message': 'Data received'})

def check_alerts(cursor, incubator_id, data):
    """Kiểm tra và tạo cảnh báo nếu vượt ngưỡng"""
    config = IncubatorConfig.DEFAULT_PARAMS
    alerts = []
    
    if data['temperature'] < config['temp_min']:
        alerts.append(('temp_low', f"⚠️ Nhiệt độ thấp: {data['temperature']}°C"))
    elif data['temperature'] > config['temp_max']:
        alerts.append(('temp_high', f"🔥 Nhiệt độ cao: {data['temperature']}°C"))
    
    if data['humidity'] < config['humid_min']:
        alerts.append(('humid_low', f"💧 Độ ẩm thấp: {data['humidity']}%"))
    elif data['humidity'] > config['humid_max']:
        alerts.append(('humid_high', f"💦 Độ ẩm cao: {data['humidity']}%"))
    
    for alert_type, message in alerts:
        cursor.execute('''
            INSERT INTO alerts (incubator_id, alert_type, message, timestamp)
            VALUES (?, ?, ?, ?)
        ''', (incubator_id, alert_type, message, datetime.now().isoformat()))

@app.route('/api/incubator//stats', methods=['GET'])
def get_stats(incubator_id):
    """Lấy thống kê 24h gần nhất"""
    conn = sqlite3.connect('avicore.db')
    c = conn.cursor()
    
    c.execute('''
        SELECT 
            AVG(temperature) as avg_temp,
            MIN(temperature) as min_temp,
            MAX(temperature) as max_temp,
            AVG(humidity) as avg_humid,
            COUNT(*) as readings
        FROM sensor_data 
        WHERE incubator_id = ? 
        AND timestamp > datetime('now', '-24 hours')
    ''', (incubator_id,))
    
    stats = c.fetchone()
    conn.close()
    
    return jsonify({
        'success': True,
        'data': {
            'avg_temp': round(stats[0], 1) if stats[0] else 0,
            'min_temp': round(stats[1], 1) if stats[1] else 0,
            'max_temp': round(stats[2], 1) if stats[2] else 0,
            'avg_humid': round(stats[3], 1) if stats[3] else 0,
            'readings': stats[4]
        }
    })

# ============ MAIN ============
if __name__ == '__main__':
    init_db()
    print("🐣 Avicore Server đang chạy...")
    app.run(host='0.0.0.0', port=5000, debug=True)
config.json
{
    "avicore_config": {
        "version": "1.0.0",
        "description": "Cấu hình hệ thống Avicore IoT",
        
        "incubator_defaults": {
            "temperature": {
                "unit": "celsius",
                "min": 37.5,
                "max": 38.5,
                "critical_low": 35.0,
                "critical_high": 40.0
            },
            "humidity": {
                "unit": "percent",
                "min": 55,
                "max": 65,
                "critical_low": 40,
                "critical_high": 80
            },
            "light": {
                "unit": "lux",
                "min": 50,
                "max": 200,
                "night_mode": true,
                "night_start": "20:00",
                "night_end": "06:00"
            }
        },
        
        "incubation_phases": {
            "phase_1": {
                "name": "Giai đoạn phát triển phôi",
                "days": [1, 7],
                "temp_range": [38.0, 38.5],
                "humid_range": [55, 60],
                "turning_interval_hours": 4,
                "notes": "Quan trọng nhất, duy trì nhiệt độ ổn định"
            },
            "phase_2": {
                "name": "Giai đoạn phát triển cơ thể",
                "days": [8, 18],
                "temp_range": [37.5, 38.0],
                "humid_range": [50, 55],
                "turning_interval_hours": 6,
                "notes": "Giảm nhẹ nhiệt độ, tăng thông gió"
            },
            "phase_3": {
                "name": "Giai đoạn nở",
                "days": [19, 21],
                "temp_range": [37.0, 37.5],
                "humid_range": [65, 75],
                "turning_interval_hours": 0,
                "notes": "KHÔNG xoay trứng, tăng độ ẩm cho gà nở"
            }
        },
        
        "protection_layers": {
            "layer_1_thermal": {
                "name": "Vành đai nhiệt",
                "temp_target": 38,
                "radius_cm": 30,
                "hardware": "Đèn sưởi 45W hoặc dây nhiệt"
            },
            "layer_2_oil": {
                "name": "Hồ dầu",
                "type": "Dầu thực vật",
                "width_cm": 3,
                "depth_cm": 1,
                "refill_days": 7
            },
            "layer_3_lime": {
                "name": "Vôi bột",
                "quantity_grams": 200,
                "width_cm": 5,
                "replace_days": 14
            },
            "layer_4_inorganic": {
                "name": "Vật liệu vô cơ",
                "type": ["Cát", "Sỏi nhỏ"],
                "thickness_cm": 8
            },
            "layer_5_tobacco": {
                "name": "Sợi lá thuốc",
                "quantity_grams": 80,
                "replace_days": 14,
                "notes": "Xua đuổi ve, rận tự nhiên"
            },
            "layer_6_iot": {
                "name": "Hệ thống IoT",
                "sensors": ["DHT22", "BH1750"],
                "controller": "ESP32",
                "update_interval_seconds": 5
            }
        },
        
        "alerts": {
            "channels": ["app", "sms", "email"],
            "priority_levels": {
                "critical": {
                    "conditions": ["temp < 35", "temp > 40", "humid < 40"],
                    "notify_immediately": true
                },
                "warning": {
                    "conditions": ["temp_outside_range", "humid_outside_range"],
                    "notify_after_minutes": 5
                },
                "info": {
                    "conditions": ["sensor_offline", "low_battery"],
                    "notify_after_minutes": 30
                }
            }
        },
        
        "3s_philosophy": {
            "s1_feeding": {
                "name": "Ăn tự chọn",
                "food_types": [
                    "Ngũ cốc hỗn hợp",
                    "Côn trùng (giun, dế)",
                    "Rau xanh tươi",
                    "Vỏ sò nghiền (canxi)"
                ],
                "always_available": true
            },
            "s2_sleeping": {
                "name": "Ngủ tự do",
                "options": [
                    "Tự chọn cành cây bưởi ở các độ cao",
                    "Ổ rơm ấm",
                    "Góc tối yên tĩnh"
                ],
                "no_forced_schedule": true
            },
            "s3_spa": {
                "name": "Spa tự phục vụ",
                "facilities": [
                    "Bể tắm cát/tro",
                    "Khu phơi nắng",
                    "Đá mài mỏ"
                ],
                "benefits": ["Diệt ký sinh", "Vitamin D", "Lông mượt"]
            }
        }
    }
}

Dashboard giám sát (Demo)

Đang hoạt động
Nhiệt độ 37.8°C Ngưỡng: 37.5 - 38.5°C
Độ ẩm 62% Ngưỡng: 55 - 65%
Ánh sáng 125 lux Ngưỡng: 50 - 200 lux
Ngày ấp Ngày 12 Giai đoạn 2/3

Câu hỏi thường gặp (FAQ)

Giải đáp các thắc mắc phổ biến khi triển khai Avicore

Độ ẩm cao (>85%) thì xử lý sao?

Tăng công suất đèn nhiệt gầm lên 75W, đảm bảo thiết kế hở thông thoáng. Có thể thêm quạt nhỏ 5V để tăng lưu thông khí. Theo dõi qua IoT và điều chỉnh.

Gà mái mang mạt từ bên ngoài về thì sao?

Đây là lý do cần duy trì Lớp 5 (sợi lá thuốc) liên tục. Mạt mới sẽ bị diệt khi gà vào ổ ấp. Kết hợp "Spa tự phục vụ" (tắm cát/tro) để gà tự xử lý trước khi vào ổ.

Khi nào thay sợi lá thuốc?

Mỗi 14 ngày hoặc khi thấy khô và mất mùi. Trong mùa mưa/ẩm cao có thể rút ngắn còn 10 ngày. Định lượng: 80g/ổ.

Làm sao kiểm tra còn mạt hay không?

Bẫy kiểm tra: Đặt mảnh bìa carton trắng xếp zig zac như xếp quạt giấy dưới ổ qua đêm. Sáng hôm sau kiểm tra có chấm đen di chuyển không. Nếu có > 5 con = cần tăng cường xử lý.

80g sợi lá thuốc có an toàn cho gà không?

An toàn khi đúng thiết kế: Bắt buộc ổ phải hở từ lưng gà lên để thoát khí. Nicotine chỉ tác động vùng bụng/cánh (nơi mạt trú). Gà thở khí tươi phía trên, không bị say.

Có phương án thay thế sợi lá thuốc không?

Có 2 phương án:
1. Diatomaceous Earth (DE): Bột đất tảo cát, cắt vỏ mạt gây mất nước. Rắc 100g/ổ.
2. Tro bếp khô: Trộn với vôi bột tỷ lệ 3:1, dùng 150g/ổ. Hiệu quả thấp hơn nhưng dễ kiếm.

Chi phí ban đầu và vận hành?

Ban đầu: ~365.000đ/ổ (không IoT) hoặc ~615.000đ (có IoT).
Vận hành: ~50.000đ/tháng (sợi lá thuốc + vôi + điện đèn).
ROI: Tỷ lệ nở tăng từ 45% lên 92% = thu hồi vốn sau 2 lứa.

Không biết lập trình có dùng được IoT không?

Có! 5 lớp đầu hoạt động độc lập, không cần IoT. Lớp 6 (IoT) là tùy chọn nâng cao. Nếu muốn, có thể mua kit lắp sẵn hoặc nhờ hỗ trợ trong cộng đồng Zalo.

Tải xuống & Tham khảo

Tất cả tài liệu, mã nguồn và bản thiết kế đều miễn phí cho cộng đồng.

Mã nguồn GitHub

Toàn bộ mã nguồn ESP32, Python Server và ứng dụng web.

github.com/avicore

Tài liệu PDF

Hướng dẫn chi tiết từng bước với hình ảnh minh họa.

Tải PDF (2.5MB)

Bản vẽ thiết kế

Bản vẽ CAD chi tiết chuồng trại và hệ thống bảo vệ.

Tải DWG/PDF

Danh sách linh kiện

BOM (Bill of Materials) đầy đủ với link mua hàng.

Xem danh sách

Video hướng dẫn

Playlist video từng bước lắp đặt và cấu hình.

Xem trên YouTube

Cộng đồng

Tham gia nhóm Facebook/Zalo để hỗ trợ và chia sẻ.

Tham gia ngay