It’s a sci-fi trope that you can ‘scan for life signs’ and detect if there are humans — or suspiciously human-shaped aliens — present, but in real life it’s harder than that. [The Masked Bear]’s wifisense-pi project isn’t really scanning for signs of life, either, unless you happen to consider breathing a sign of life. Even then, it’s not detecting breathing per se, but the subtle motion that goes with it: it’s a very sensitive motion detector that relies on the fact that we fleshy bags of goo disturb WiFi signals with our presence, and motion alters those disturbances.
The device uses an ESP32-S3 to measure the radio channel 100 times per second, while a Raspberry Pi 4 provides the signal processing muscle. It can detect the slightest motions, and even determine the presence of a perfectly still human by their breathing, though you can hide your presence for as long as you can hold your breath.
A single sensor, no matter how sensitive, cannot give position information, and while multiple humans will distort WiFi more than a single one, [The Masked Bear] reports you cannot reliably extract that signal. So this project answers the question: “are there humans in this room?” Or, even more likely, “are there any large breathing animals in this room?” We can’t imagine a 50 kg Mastiff looking any different to this sensor than an equivalent mass of quivering human flesh.
Before you dismiss this as just another motion sensor, keep in mind that it is sniffing the signals already present on the 2.4 GHz band, and, like the WiFi signals themselves, it can work through walls. So we think it’s pretty nifty.
Of course, there are many other ways to detect humans, from machine-learning cameras to millimeter-wave sensors to a simple PIR. This isn’t the first project we’ve seen that uses WiFi like this. It isn’t even the first with an ESP32, but it’s an interesting implementation worth checking out.

Why not track heartbeats instead? More accurate and reliable.
How would you do that?
Similar to detecting breathing. Typically using mmWave radar.
Through walls?
Depends on the wall, radar frequency and distance.
Supposedly the CIA’s “Ghost Murmur” system can do that, but we probably won’t know how it works (or if it’s even real) for several years at least.
The new mm wave heart rate sensors have to be pretty close to detect heart beats still. It may not be as easy as you think.
I was think more about a human presence sensor rather than the radar heart sensor. And, yes, I believe it will be harder than you think.
Where exactly can we get a cheap transceiver to make one of them? You can buy a ESP32 2.4 GHz transceiver plus microcontroller for under 10 bucks.
seeedstudio has one for $4.99, waveshare has one for $2.99
I don’t think cost is particularly prohibitive.
Interesting, then I could add something like this to Home Assistant:
alias: “mmWave heartbeat”
trigger:
– platform: state
entity_id: binary_sensor.mmwave_heartbeat
to: “off”
for: “00:00:10”
action:
– service: notify.mobile_app_phone
data:
title: “Emergency”
message: “Call 911 now!”
mode: single
“What’s it key off?”
“Micro changes in air density”
Exactly, this isn’t Star Trek, it’s Alien.
Pretty sure it’s chest movement.
This could be a handy presence detector for HA using existing sensors. Presume the esp can’t be reliably doing other stuff though.
IME, ESP’s, HA , and “reliable” do not go together.
Says the guy who has over two dozen ESP’s in his HA setup. But I’m picky about reliability.
My main problem is whether we can reliably track people to a single room. We don’t want to turn lights on in one room because someone was on the opposite side of the wall. With that said… First thing I thought myself! đŸ¤£ I’m probably giving it a shot. Imagine someone breaks into your house and a voice says I see you! Then says you can only hold you breath for so long. Got you! I see you breathing again!
“Imagine someone breaks into your house and a voice says I see you”
Been there, done that.
But with one crucial difference. By the time someone has broken in, most of the damage is done. For example $2000 to replace your door with an insurance-approved type. Even more if they insist on window sensors and an alarm system. Plus increased home insurance forever.
So the only effective solution is deterrence. In my case the recording of a large dog,that is set of by the outside motion detector and played at a suitable volume from a speaker just inside the door.
Technical note: the dog MP3 file fits nicely inside an ESP32 2MB LittleFS file. It plays for about 3 minutes and has had my neighbour fooled.
“I just love scanning for lifeforms.”
Lovely little life-forms, where are you?
oh you can buy super tiny and cheap sensors from china that implement a presence radar using this idea. I have a few in my house for automatic lights
Wi-Fi occupancy sensing has been done so many times now we even have a IEEE standard for it (802.11bf).
Does it work if you hide under a pile of blankets and tin foil in the closet with a breathing tube? Just curious
This is a great project! I worked on a similar (previously patented) technology at Ga Tech back in 1990s that used 3, 10 and 24GHz as a Vital Signs Monitor to detect life signs of soldiers at ~30m to see if it was worth sending a medic to investigate. I used it to try to convince the 1996 Olympic folks to use it as a human interest story during select athletic events. It was later dropped as a privacy concern. The GBI wanted to use it to see if anyone was hiding behind a wall. The technology was later separately commercialized as an early detector of SIDS (sudden infant death syndrome), mounted above a baby’s crib. Great technology!