Scanning For Lifesigns With ESP32 And Raspberry Pi

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.

28 thoughts on “Scanning For Lifesigns With ESP32 And Raspberry Pi

    1. 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

    1. 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!

      1. “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.

  1. 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!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.