Started pulling apart my Core 300 this weekend with the goal of getting it into Home Assistant. The plan was to tuck a small ESP32 board into the empty space near the bottom of the housing and wire into the controls, but I'm stuck on the fan speed side of things and could use a nudge in the right direction. From poking around, it looks like the touch panel just sends some kind of signal back to the main board whenever you change speeds, and that's where I get lost. If I add my own microcontroller, do I tap those lines in parallel alongside the stock buttons, or do I end up fighting the original board every time both try to change something? I'd rather not rip the stock control board out if I can avoid it, mostly so the buttons still do something when guests are over and don't want to fiddle with an app. The other thing I can't figure out is what voltage those signal lines run at. I've got a multimeter in a drawer somewhere so I can measure before connecting anything, but I'd rather hear from someone who's alredy mapped it out than guess and let the smoke out. Did anyone keep the original buttons working after their swap, or is that just a loss you accept?
Levoit Core 300 ESPHome mod - how do the speed lines actually work?
Nov 08, 2026
Last reply: 1 day ago
3 Replies
First reply
I went down this same road with a Core 300 last winter. Measured the speed lines with the unit running and they idle around 4V, and the touch panel is basically just another input feeding the main board. So yes, if you tap those lines in parallel with your own microcontroller…
Read the full replyI went down this same road with a Core 300 last winter. Measured the speed lines with the unit running and they idle around 4V, and the touch panel is basically just another input feeding the main board. So yes, if you tap those lines in parallel with your own microcontroller you end up with two things trying to drive the same wire. In my case that meant the fan twitching between speeds and the stock panel ignoring presses until I pulled the power and restarted it. What worked for me was pulling the stock board and wiring a small ESP32 straight to the four speed inputs, low through sleep. The lines sit near 4V on the original setup, but a plain 3.3V signal from the ESP32 triggers each speed just fine, so you do not need any level shifting. The tradeoff is the touch panel goes dead, since it only talks to the board you removed. Guests lose the buttons, which was fine at my place because the purifier mostly runs on automations anyway.
If you really want the buttons to keep working, the other path is leaving the stock board alone and flashing ESPHome onto the chip that is already on it, instead of adding a second brain. That keeps the touch panel functional and still gives you local control in Home Assistant. It does mean soldering on some very small pads though, and I only got partway down that road before I decided swapping the board was less fiddly for me.
On the voltage question, set your meter to DC volts, put the black probe on a ground point, and poke each signal line while someone cycles the speeds so you can see them change. One caution since you are opening a mains powered appliance: unplug it from the wall before the case comes apart, and only power it back up for those signal readings with the housing open and your hands clear.
That empty space near the bottom of the housing is tight but workable. Mount the board low, keep the wires short, and it tucks in without rattling against the fan housing.
Pulling the stock board out and wiring the new ESP32 directly to the four inputs is the best route. Messy parallel taps will definitely cause issues. When I did the same thing on my unit, the relay triggers were pretty jumpy at first, so I added a small capacitor across the input pins to stabilize the signal. That sorted out the noisy readings once we started getting the ESPHome firmware running.
The advice about removing the stock board seems like the cleanest path to go, even if it means losing the touch panel functionality. I ran into similar issues with signal stability on my last project, so I recommed using a set of those tiny prototyping jumper wires. They made routing the connections to the four speed lines much tidier than just using stripped gauge wire and kept the whole setup from vibrating loose inside the housing. It felt like a minor detail, but it made the final assembly much more solid. If you are powering it up for testing, make sure you are absolutely sure the unit is disconnected from the mains first, even if the power draw is low during initial setup.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required