OWLOS is a DIY open source firmware platform for ESP32 and ESP8266 microcontrollers, paired with desktop and web management tools. It lets you connect sensors, actuators and other peripherals to a local network — and manage them through a built-in web interface or a desktop application — without needing to write code, without requiring internet access, and without any cloud dependency.
The name "OWLOS" reflects the ecosystem nature of the project: multiple nodes can coexist and communicate via MQTT, each running the same firmware with its own configuration.
🌎 Related project: OWLOS Air Quality — a complete IoT solution for air quality monitoring built on top of OWLOS.
OWLOS is firmware that runs on an ESP32 or ESP8266 board. Once flashed, the board:
- hosts a built-in HTTP(S) RESTful server so you can interact with it directly from a browser or any HTTP client
- connects to your WiFi network (or acts as an access point itself)
- exposes all connected peripherals — sensors, actuators, LCDs, relays, etc. — through a unified REST API and MQTT topics
- runs a built-in scripting interpreter that allows you to define automation rules without programming
- can be updated over-the-air (OTA) — no need to reconnect a USB cable for firmware updates
- supports UART AT+ commands for serial control
The board does not need the internet. Everything runs locally.
- DHT11, DHT22, AM2301 — temperature & humidity
- BMP280, BME680 — barometric pressure
- CCS811 — eCO2 and TVOC
- SI7021 — temperature & humidity
- ADS1X15 — ADC (for analog sensors like MQ7, MQ135, photoresistor)
- Stepper motors
- LCD displays (LiquidCrystal I2C)
- DS3231 RTC — real-time clock
- Generic actuators (relays, LEDs, etc.)
Hardware support is configured through config.h before flashing.
Web UX — a JavaScript single-page application embedded into the firmware and served directly from the ESP board. Works in any browser on the local network.
OWLOSAdmin — a .NET Core WPF desktop application for Windows. Connects to one or multiple OWLOS nodes over HTTP/MQTT and provides a richer management interface.
OWLOSEcosystem — an experimental .NET Core WPF + OpenGL desktop application for visualizing and managing a network of multiple OWLOS nodes as an ecosystem.
| Folder | Contents |
|---|---|
/OWLOS/ |
C/C++ firmware source code (ESP32, ESP8266) |
/OWLOS/data/ |
JavaScript web UX (embedded into firmware) |
/OWLOSAdmin/ |
.NET Core C# WPF desktop management app |
/OWLOSEcosystem/ |
(experimental) .NET Core C# WPF + OpenGL ecosystem viewer |
/OWLOSResource/ |
Blender 3D models, schematics and image resources |
/OWLStarter/ |
C/C++ HTTP updater — flashes OWLOS firmware from GitHub releases |
Languages used: C/C++ (firmware), JavaScript (web UX), C# (desktop tools), HTML/CSS
- Install PlatformIO IDE
- Install COM port drivers for your board
- Open the OWLOS workspace in PlatformIO
- Configure your build in
config.h - Build and upload to your board
Detailed installation guide (EN) | Инструкция по установке (RU)
For ESP8266 boards: ESP8266 prepared assembly branch
Open Source under GPL-3.0 License
- PlatformIO IDE
- ESP32 Arduino Core
- me-no-dev/AsyncTCP (ESP32)
- ESP32 HTTPS Server
- Async MQTT Client
- Pro Sidebar
- DS3231 Real-Time Clock
- Adafruit Unified Sensor Library
- DHT-sensor-library
- LiquidCrystal_I2C
- Mónica (rovt@ua.fm)
- Yan Sokolov (Dadras279@gmail.com)
- Ddone Deedone (https://techadv.xyz/)
- Serhii Lehkii (sergey@light.kiev.ua)
- Konstantin Brul (konstabrul@gmail.com)
- Vitalii Glushchenko (cehoweek@gmail.com)
- Stanislav Kvashchuk (skat@ukr.net)
- Vladimir Kovalevich (covalevich@gmail.com)
- Denys Melnychuk (meldenvar@gmail.com)
- Denis Kirin (deniskirinacs@gmail.com)

