Read in another language: English (this document) · Français.
Autonomous network inventory and discovery appliance powered by ESP32-S3.
Gateway Lab is an autonomous network gateway that discovers, identifies and keeps the history of the devices present on a home local network.
Built around an ESP32-S3, the project favours simplicity of deployment, autonomy, low power consumption and local data retention.
- Multi-protocol discovery (ARP, ICMP, mDNS, SSDP, DNS-SD, NetBIOS...)
- Persistent inventory of detected devices
- Automatic classification (manufacturer, category, type)
- History of connections, disconnections and changes
- Favourites and user notes
- Continuous network monitoring and a per-device stability score
- CSV and JSON export, backup and restore
- Responsive web interface, OTA updates
- Fully local operation, no cloud
Exhaustive feature list: see docs/FEATURES.md.
Network information, connection state, system diagnostics and quick access to the main functions.
Inventory of detected devices with filters, favourites, notes, confidence level and administration tools.
Chronological log of new devices, reconnections, disconnections and detected changes.
Simplified view of the gateway, the detected access points and the attached devices.
WiFi configuration, automatic monitoring, status NeoPixel, backup/restore, OTA and system state.
- Clone the repository and build with PlatformIO (
pio run --target upload) - Connect to the
GatewayLab-SetupWiFi network - Configure WiFi from the browser
- Reach Gateway Lab at
http://gatewaylab.local
Detailed guide: INSTALLATION.md · Developer guide: docs/DEVELOPMENT.md
ESP32-S3 DevKitC-1 N16R8 — 16 MB Flash, 8 MB PSRAM, dual-core 240 MHz.
| File | Description |
|---|---|
| INSTALLATION.md | Installation and first configuration |
| docs/DEVELOPMENT.md | Build, flash and development |
| docs/ARCHITECTURE.md | Internal architecture, project structure, web pipeline |
| docs/API.md | Full REST API reference |
| docs/FEATURES.md | Exhaustive feature list |
| docs/PROTOCOLS.md | Network protocols and identification sources |
| docs/WIFI_SETUP.md | Detailed WiFi portal operation |
| docs/WARNINGS.md | Architecture decisions and known limitations |
| CHANGELOG.md | Version history |
| ROADMAP.md | Planned evolutions |
include/board_config.h— do not modifyinclude/secrets.h— never commit- CSS only in
web_src/styles.css - HTML only in
web_src/*.html(never an inline<style>or<script>) - JavaScript only in
web_src/*.js - Versioning only in
platformio.iniviaPROJECT_VERSION - After any change to
web_src/ordata/oui.json→ re-runpython tools/minify_web.py
Full web pipeline and project structure: docs/ARCHITECTURE.md.
Open-source personal project published for learning, experimentation and knowledge sharing around the ESP32, networking and embedded systems.




