Making a smarter diffuser with EspHome

I bought this bargain diffuser second-hand from Ebay last year. You fill the container with water and add a few drops of an essential oil and it makes your room smell nice. There’s a little ultrasonic emitter inside that turns the liquid into a cool mist that pours forth from the tip.

It works well enough like this. You press a button and it starts. You press the same button two more times and it stops. There are some pretty lights too.

But it has two problems:

  1. The default timer is for an hour. This is too long for me - after about twenty minutes, my eyes get irritated from the oils.

  2. It really doesn’t need to run all the time.

Clearly, what it needs is an intermittent function. On for a few minutes, then off.

So I thought I’d see if I could add that functionality. Turns out it wasn’t hard at all!

I posted the whole thing with a bunch more pictures over on my page at

2 Likes