Skip to content

souptik-samanta/LazyController

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1338404 · · Jun 10, 2026

History

20 Commits
Mar 18, 2026
Mar 18, 2026
Jun 10, 2026
Jun 5, 2026
Mar 18, 2026
Mar 18, 2026
Jun 10, 2026

Repository files navigation

LazyController

A compact WiFi-enabled relay controller built on a custom PCB. Flip switches, trigger appliances, and automate stuff — all from your phone or browser. No getting up required.


BUILD image

What is it?

LazyController is an IoT relay board designed around an ESP-based microcontroller. It exposes relay outputs over WiFi, letting you remotely toggle lights, fans, pumps, or anything else you'd rather not walk over to.

  • Custom PCB with onboard relay(s)
  • WiFi control via a web interface or serial commands
  • Compact form factor — designed to tuck away somewhere tidy
  • Production-ready Gerbers included for ordering straight from JLCPCB/PCBWay

Repository Layout

LazyController/
├── Cad/          # Enclosure and assembly CAD files
├── Code/         # Firmware source (code.ino)
├── lib/          # README images/assets
├── Pcb/          # KiCad project files (schematic + PCB)
├── production/   # Manufacturing outputs (BOM, positions, netlist, backups)
└── README.md
ME.md

PCB

The board was designed with simplicity in mind — power in, relay out, WiFi in the middle.

PCB layout

PCB layout and schematic are in the Pcb/ folder.
Gerbers for direct upload to your fab of choice are in production/.

PCB schematic

Ordering a board: 1. Zip the contents of `production/` 2. Upload to [JLCPCB](B](https://jlcpcb.com) or [PCBWay](https://www.pcbway.com) 3. Default settings (1.6mm, HASL, FR4) work fine

Schematic

ESP

ESP schematic

USB

USB schematic

Switching

Switching schematic

ACDC

ACDC schematic

POWER

POWER schematic

Flashing Firmware

Make sure you have the Arduino IDE or PlatformIO installed.

  1. Add ESP32 board support if you haven't already:
    • In Arduino IDE → Preferences → Additional Board URLs:
      https://espressif.github.io/arduino-esp32/package_esp32_index.json
      
      
  2. Install required libraries:
    • ESPWiFi (or WiFi for ESP32)
    • ESPAsyncWebServer (recommended)
  3. Open your firmware sketch, set your WiFi credentials:
    const char* ssid     = "your_network";
    
    const char* password = "your_password";
  4. Select your board, plug in via USB, and hit Upload
  5. Open Serial Monitor at 115200 baud — it'll print the device IP once connected

Wiring

Power the controller → relays get activated → each relay switches its connected load.

Relay outputs are SPDT — connect your load between COM and NO (normally open) for off-by-default behaviour.

If switching mains voltage (120V/230V AC), make sure you take appropriate safety precautions.


Usage

Once flashed and powered:

  1. Connect to the same WiFi network
  2. Open a browser and navigate to the IP shown in Serial Monitor
  3. Toggle relays from the web UI — or send HTTP requests directly:
    GET /relay/1/on
    GET /relay/1/off
    
    

BOM

NAME DESC QUAN PRICE (USD) PRICE TOT LINK
AC DC HLK 10M05 1 3 3 Link
6 Pin 5.08mm Pitch Pluggable Screw Terminal Block 1 1 1 Link
RELAY 4 1 4 Link
pcb 23 1 23
LCSC
CC0805JRNPO9BN471 Description 100 0.0074 0.74 Link
CL21A225KBQNNNE 470pF ±5% 50V Ceramic Capacitor NP0 0805 10 0.0176 0.176 Link
GRM21BR61H106KE43L 2.2uF ±10% 50V Ceramic Capacitor X5R 0805 10 0.0723 0.723 Link
CC0603KRX7R9BB104 10uF ±10% 50V Ceramic Capacitor X5R 0805 100 0.0028 0.28 Link
1N5819W 100nF ±10% 50V Ceramic Capacitor X7R 0603 100 0.0072 0.72 Link
TYPE-C 16PIN 2MD(073) Diode Independent 40V 350mA Surface Mount SOD-123 20 0.0617 1.234 Link
BC547 USB-C (USB TYPE-C) Receptacle Connector 16 Position Surface Mount, Right Angle 20 0.0302 0.604 Link
FRC0603F5101TS Bipolar (BJT) Transistor NPN 45V 0.1A 150MHz 625mW Through Hole TO-92 100 0.0012 0.12 Link
RC0603FR-0710KL 5.1kΩ ±1% 100mW 0603 Thick Film Resistor 100 0.0013 0.13 Link
RC0603FR-071KL 100mW 10kΩ 75V Thick Film Resistor ±100ppm/℃ ±1% 0603 Chip Resistor - Surface Mount RoHS 100 0.0013 0.13 Link
SKRKAEE020 100mW 1kΩ 75V Thick Film Resistor ±100ppm/℃ ±1% 0603 Chip Resistor - Surface Mount RoHS 5 0.1309 0.6545 Link
ESP32-C3-WROOM-02-N4 Tactile Switch SPST 2mm 3.9mm x 2.9mm Surface Mount 1 3.0674 3.0674 Link
AMS1117-3.3 2.4GHz ESP32-C3 Chip On-board PCB Antenna -105dBm VFQFN-32-EP RF Transceiver Modules and Modems RoHS 5 0.2259 1.1295 Link
3.3V 15V Positive Fixed SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators RoHS
TOTAL 50.7084

YouTube

Contact

Funding / Support

  • Blueprint
  • HackClub

About

I made this so my lazyaahh doesnt have to walk upto switches

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages