from machine import Pin, ADC
import time
# -------- INPUTS --------
pot = ADC(Pin(34)) # Environment
pot.atten(ADC.ATTN_11DB)
ldr = ADC(Pin(35)) # Energy
ldr.atten(ADC.ATTN_11DB)
pir = Pin(13, Pin.IN) # Security
# -------- OUTPUTS --------
alert_led = Pin(2, Pin.OUT) # Red LED
cooling_led = Pin(18, Pin.OUT) # Blue LED
buzzer = Pin(4, Pin.OUT)
# -------- LOOP --------
while True:
# ===== ENVIRONMENT =====
value = pot.read()
temp = (value / 4095) * 50
hum = 20 + (value / 4095) * 80
pm25 = (value / 4095) * 200
# ===== ENERGY =====
energy = ldr.read()
# ===== SECURITY =====
intrusion = pir.value()
# ===== PRINT DATA =====
print("\n--- SENSOR DATA ---")
print("Temperature:", round(temp, 2), "°C")
print("Humidity:", round(hum, 2), "%")
print("PM2.5:", round(pm25, 2))
print("Energy:", energy)
print("Intrusion:", intrusion)
# ===== ALERT SYSTEM =====
alert_triggered = False
# 🌡️ Temperature
if temp > 30:
print("🔥 High Temperature!")
cooling_led.on()
alert_led.on()
buzzer.on()
alert_triggered = True
# 💧 Humidity / 🌫️ Air quality
if hum > 70 or pm25 > 100:
print("🌬️ Ventilation Activated!")
cooling_led.on()
alert_led.on()
alert_triggered = True
# ⚡ Energy
if energy > 3000:
print("⚡ High Energy Usage!")
alert_led.on()
alert_triggered = True
# 🔐 Security
if intrusion == 1:
print("🚨 Intrusion Detected!")
buzzer.on()
alert_triggered = True
# ✅ No alerts
if not alert_triggered:
print("✅ All conditions normal")
cooling_led.off()
alert_led.off()
buzzer.off()
print("----------------------")
time.sleep(1)Ventilation System
Alert System
Temperature Sensor
Motion Sensor
Gas Sensor
Enviroment Sensor
Energy Sensor (LDR)
Led
Buzzer