/GrowLight_ESP8266

Grow light with websocket interface, manual control, and 24-hour scheduler, based on ESP8266 controlled 4-channel relay.

Primary LanguageC++

Features

  • Hybrid operation mode (STA & AP)
  • WebSocket-based GUI
  • Concurrent multi-user support
  • Automatic time synchronization over NTP
  • Time zone selection
  • 24h on/off scheduler
  • 4-channel relay switch

Manual relay control

Scheduler

Installation

This project is designed to work with 4-channel relay module, which uses an onboard MCU that controlls the relays according to the commands received from ESP-01 over UART.

How to build your own release

Prerequisites

  • Visual Studio Code with PlatformIO extension

Building

  1. Open src/GrowLight folder in VSCode
  2. In src/GrowLight/src/main.cpp you can customize three SSIDs and PASSWORDs for Wi-Fi STA mode:
const char* ssid = "<your_ssid>";
const char* password = "<your_pass>";

const char* ssid1 = "<your_ssid1>";
const char* password1 = "<your_pass1>";

const char* ssid2 = "<your_ssid2>";
const char* password2 = "<your_pass2>";
  1. In src/GrowLight/platformio.ini set the correct upload_port, or remove to auto-detect.

  2. Build and upload the filesystem

    • PlatformIO > esp01_1m > Platform > Build Filesystem Image
    • PlatformIO > esp01_1m > Platform > Upload Filesystem Image
  3. Build and upload the firmware

    • PlatformIO > esp01_1m > General > Upload

Credits