THVisi0n
Embedded Thermal Intelligence — Anywhere, Anytime
Compact, reliable, and ready for your next project. Real‑time thermal imaging, adaptive processing, and seamless streaming — powered by ESP32‑S3 + MLX90640.
Flash directly from your browser with WebSerial (Chrome & Edge supported).
WebUI Showcase
Live config sync applies without reboot, and custom pipelines can be created directly from the WebUI and persisted. Profiles are stored in FFat and survive OTA updates.
Stay Connected
Configure Wi‑Fi, OTA updates, and stream live video feeds directly from the device.

Measure with Precision
Fine‑tune raw output, refresh rates, and advanced filters for accurate thermal data.

Visualize in Style
Customize gradients, overlays, and GPU‑accelerated smoothing for stunning visuals.

Smart Filters
Apply smoothing, denoising, and adaptive scaling directly in the WebUI for crystal‑clear thermal imaging.

Core Hardware
ESP32‑S3
- Dual‑core LX7 @ 240 MHz: parallel FreeRTOS tasks pinned to cores for sensor acquisition, streaming, watchdog, OTA.
- Memory: PSRAM (8 MB) + Flash (16 MB) for DRAM‑first allocation with PSRAM fallback on large buffers.
- I/O: robust I²C handling with recovery watchdog for sensor comm resilience.

Melexis MLX90640
- 32 × 24 IR array (768 px): dependable thermal grid, ideal for embedded thermal mapping.
- Frame rates: up to ~32 Hz with pipeline‑safe buffering and scaling.
- Precision: supports emissivity tuning, adaptive scaling, and scene‑lock for stable color mapping.

Raw vs Processed Visualization
View the sensor’s direct output or apply firmware/JS filters for enhanced visualization. Each layer is independent and can be toggled.
Raw feed
Direct sensor output with no processing. Best for baseline measurements and debugging.

Processed feed
Enhanced with firmware or JS filters. Supports LUTs for palette mapping and contrast control.

Streaming & Endpoints
Full Stream
Endpoint: /video1
— Full Upscaled Stream with Advanced Filters, Brightness, Contrast, LUTs ...

Lightweight Stream
Endpoint: /video2
— Optimized Stream with FPS, Hotspot toggle, LUTs ...

Integration & Telemetry
Endpoints: /s.json
, /perf
, /config
— JSON for Home Assistant integration, performance telemetry, and config snapshot.

Interactive Viewer
Endpoint: /viewer
— Live thermal grid with overlays. Consumes WebSocket or /s.json
.

High‑Performance Pipeline
Smart Filters
Exponential smoothing, Median, Gaussian, and Bilateral (edge‑preserving denoise) applied selectively for clarity without distorting readings.
Adaptive Scaling
Percentile‑based histogram scaling with scene‑lock stabilizes color maps; supports U8/U16/F32 quantization for diverse outputs.
Reliability & Safety
Interleaved & Chess Acquisition
Supports both MLX90640 acquisition types: Interleaved for smoother temporal response, Chess for reduced fixed‑pattern noise. Switchable live via config.
I²C Auto‑Recovery
Detects repeated communication errors and resets the bus inline within the sensor loop; recovery is immediate and streaming resumes seamlessly.