Skip to content

tuct/levoit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

121 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project - Free Levoit Air Purifiers

Collection of custom ESPHome firmware and hardware projects for Levoit air purifiers, eliminating cloud dependency and enabling native Home Assistant integration.

header

The Core and Vital Series share quite a lot on the protocol level, while having some differences based on model and MCU version. This is an external ESPHome component that supports all (WIP!) Core and Vital Air Purifiers.

Can be flashed to the original ESP32-SOLO-C1 or also installed on top (replace original), check 'Installation'

Requires: ESPHome 2026.01.2+

Model MCU Version Status
Levoit Core 200s 2.0.11 ✅ Tested
Levoit Core 300s 2.0.7, 2.0.11 ✅ Tested
Levoit Core 400s 3.0.0 ✅ Tested
Levoit Core 600s 2.0.1 ✅ Tested
Levoit Vital 100s 1.0.5 ✅ Tested
Levoit Vital 200s (Pro) 1.0.5 ✅ Tested
Levoit Sprout 1.0.5 ✅ Tested (!) WIP

Features

Core200s

PCB back PCB back

Core300s - with Air Quality and Auto

PCB back PCB back

Fan

Native Home Assistant Fan component, with preset support. Available speed levels and presets are based on model.

Model Speed Levels Preset Modes
C200S 1–3 Manual, Sleep
C300S 1–3 Auto, Manual, Sleep
C400S 1–4 Auto, Manual, Sleep
C600S 1–4 Auto, Manual, Sleep
V100S 1–4 Auto, Manual, Sleep, Pet
V200S 1–4 Auto, Manual, Sleep, Pet
Sprout 1–4 Auto, Manual

Display / Light

Feature Type Config Key Description
Display switch display Toggle the LED display on/off
Child Lock switch child_lock Disable physical buttons on the device
Light Detect switch light_detect Auto-dim display when ambient light is low Vital Series + Core 600S
Night Light select nightlight Night light brightness: Off / Mid / Full Only Core200S

Timer

Feature Type Config Key Description
Timer number timer Run timer in minutes
Timer Set text_sensor timer_duration_initial Originally set timer as readable string (e.g. "2h 30 min")
Timer Remaining text_sensor timer_duration_remaining Time left on active timer (e.g. "1h 15 min")

Filter Lifetime

Feature Type Config Key Description
Filter Lifetime number filter_lifetime_months Expected filter lifespan in months (1–12); used to compute Filter Life %
Filter Life Left sensor filter_life_left Remaining filter life as % ⁽¹⁾
Filter Low binary_sensor filter_low on when Filter Life % drops below 5% ⁽¹⁾
Current CADR sensor current_cadr Calculated Clean Air Delivery Rate at current fan speed in m³/h ⁽¹⁾
Reset Filter Stats button reset_filter_stats Reset cumulative CADR and runtime counters — restores Filter Life % to 100% ⁽¹⁾

⁽¹⁾ Computed by the component (not received from MCU), works on all models.

Auto Mode

Feature Type Config Key Description
Auto Mode select auto_mode Auto mode type — options vary by model (see below) Not for Core200S
Auto Mode Room Size number efficiency_room_size Target room area for efficient auto mode in m² Not for Core200S
Efficiency Counter sensor efficiency_counter Seconds remaining at high fan speed in efficient auto mode Vital only
Auto Mode High Fan Time text_sensor auto_mode_room_size_high_fan Time still running at high speed in efficient auto mode, human readable Vital only

Auto mode options per model:

Model Options Room Size Range
C200S up to 40 m² (430 ft²)
C300S Default / Quiet / Room Size 9–50 m² (97–538 ft²)
C400S Default / Quiet / Room Size 9–83 m² (97–894 ft²)
C600S Default / Quiet / Room Size / ECO 9–147 m² (97–1,582 ft²)
V100S Default / Quiet / Efficient 9–52 m² (97–560 ft²)
V200S Default / Quiet / Efficient 9–87 m² (97–936 ft²)
Sprout Default / Quiet / Efficient 9–57 m² (97–936 ft²)

Air Quality Sensors

Feature Type Config Key Description
PM2.5 sensor pm25 Particulate matter concentration in µg/m³ from built-in sensor Not for Core200S
AQI sensor aqi Air Quality Index as reported by the MCU Not for Core200S

Info and Debug

Feature Type Config Key Description
MCU Version text_sensor mcu_version Firmware version string of the purifier MCU chip
ESP Version text_sensor esp_version ESPHome component version string
Error text_sensor error_message Device error status: "Ok" or "Sensor Error" Not for Core200S

Change Log

ESP Version: 1.4.0 - 2026.04

  • Added Levoit Sprout support

ESP Version: 1.3.0 - 2026.03.28

  • Added Core 600S support: 4 fan speeds, 4 auto modes (Default / Quiet / Room Size / ECO), Light Detect switch, CADR 641 m³/h
  • Added Vital 200S (Pro) support: same protocol as Vital 100S, tested with original ESP
  • Updated Auto Mode select to show model-specific options (3 for Core/Vital, 4 for Core 600S)

ESP Version: 1.2.0-esphome - 2026.03.22

  • Added Core200s support and readme / example.
  • Renamed/moved repo to tuct/levoit - for easier collaboration with pull requests, ...

2026.03.21

  • Works with ESPHome 2026.3+
  • Sensors - added state class measurement -> allow statistics to be tracked

2026.01.15 ESPHome 2025.12.5+ Compatibility

  • The component has been updated for ESPHome 2025.12.5

Other Models / Levoit Projects

Info

Not my projects, but worth checking out:

Helpful links

Details about generic protocol / etc

Detailed Info

About

Esphome based custom firmware for levoit air purifiers

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors