RuView project leverages ESP32 nodes for WiFi-based presence detection, pose estimation, and breathing/heart rate monitoring

RuView is an open-source “WiFi DensePose” implementation leveraging multiple ESP32 nodes to turn WiFi signals into real-time human pose estimation, vital sign monitoring, and presence detection without relying on video cameras.

WiFi DensePose is a sensing technique, first explored in academic research, that leverages WiFi signals to reconstruct human pose. RuView implements this technique in Rust or Python, and relies on your WiFi router and several ESP32 nodes to track body pose, detect breathing rate, and measure heart rate even through walls. As we’ll discuss below, this project has its own controversy, as some claim it’s fake.

Ruview

The solution relies on Channel State Information (CSI) disturbances caused by human movement to reconstruct body position, breathing rate, heart rate, and presence in real time using “physics-based signal processing and machine learning”.

That obviously means you need CSI-capable hardware, and not all consumer WiFi nodes implement it. The project description lists various hardware options:

  • ESP32 Mesh (recommended) – 3-6x ESP32-S3 + WiFi router; About $54 (ESP32 nodes only) for pose, breathing, heartbeat, motion, presence
  • Research NIC – Intel 5300 / Atheros AR9580 (~$50-100) with full CSI with 3×3 MIMO
  • Other WiFi client – Windows, macOS, or Linux laptop (no extra cost); RSSI-only for coarse presence and motion

If you have no WiFi hardware, the solution runs in simulated mode with synthetic CSI data. However, if you rely on ESP32-S3 mesh, you may be able to meet the following performance metrics:

  • Pose estimation – 54K fps (Rust)
  • Breathing detection – 6-30 BPM
  • Heart rate – 40-120 BPM
  • Presence sensing – < 1ms latency
  • Through-wall – Up to 5m depth

The installation on the host machine relies on Docker and works on Windows 10/11, macOS 10.15, Ubuntu 18.04 or greater, and you’d also need to install the firmware to each of your ESP32-S3 nodes. It’s also important to understand that presence detection, motion level (how much movement), breathing rate, and signal quality measurements should work out of the box without neural networks. However, the pose estimate with a 17-keypoint skeleton is not a plug-and-play solution, and requires the user to train a model for his/her own environment for this to work. You’ll find the instructions in the user guide on the project’s GitHub repo. After that, you can access the web dashboard on http://localhost:3000. If you just want to have a quick look at the web interface using simulated data, you can check the live demo website.

RuView Observatory Web interface body skeleton

RuView ESP32 WiFi CSI Sleep monitor Fall detection Vital
The interface supports multiple modes, including Sleep Monitoring, Fall Detection, Vital Signs, etc. It’s also possible to combine WiFi CSI data with a camera

Some other advertised benefits and highlights of the RuView project and/or the WiFi DensePose technique in general include:

  • Privacy – It tracks human pose using only WiFi signals without cameras.
  • Multi-person support
  • Through-wall support
  • Disaster Response – Detects trapped survivors through rubble and classifies injury severity (likely over the top here)
  • Multistatic Mesh – 4-6 low-cost sensor nodes work together, combining 12+ overlapping signal paths for full 360-degree room coverage with sub-inch accuracy and no person mix-ups
  • Self-Learning from raw WiFi data
  • QUIC Mesh Security – All sensor-to-sensor communication is encrypted end-to-end with tamper detection, replay protection, and seamless reconnection if a node moves or drops offline
  • AMOLED Display – ESP32-S3 boards with built-in AMOLED screens show real-time presence, vital signs, and room status directly on the sensor

It looks good so far, but about one month ago, Deletexiumu had a look at the project and called it a scam. That was for good reason, since at the time several variables were filled with random data. The repo also noted the lack of pretrained weights, training scripts, dataset, and evaluation code, among other issues.

WiFi DensePose CSI Random DataI haven’t checked all the claims, but checking out the most recent v1/src/hardware/csi_extractor.py file, the randomly generated values are gone:


It’s possible the (AI-powered) analysis was done on an early version of the code with only random/simulated data. The science behind the project is real (see link to the research paper in the introduction), Espressif Systems demonstrated a more basic ESP32 WiFi CSI implementation in 2022, and I can see some user reports in the issues tab, various pull requests, and so on. It’s quite likely some of the claims are over the top or only valid in some specific conditions, but nothing points to the project being completely useless. On the downside, I can’t find any video demos of RuView on YouTube, only people *talking* about it.

Via Rimsha Bhardwaj on X.

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Orion O6 Armv9 mini-ITX motherboard

10 Replies to “RuView project leverages ESP32 nodes for WiFi-based presence detection, pose estimation, and breathing/heart rate monitoring”

  1. I strongly disagree with this point “It’s quite likely some of the claims are over the top or only valid in some specific conditions”.
    As far as I know the author refuses to address the issues, and also does not publish a life video showing real analysis of his project!
    I *REALLY* dont understand why the article was posted here, WITHOUT verifyng the actual work, done by YOU on YOUR hardware and with *REAL* data.

    1. Maybe you should evaluate the hardware and data. Then publish an article to prove the author wrong.

    1. While there are open (and closed) issues in the project from real users, the response is nearly invariably “we released a new version of X which addresses Y” (often completely unrelated).

      I’m yet to see anyone posting a comment saying anything actually works with good results (there are a few things that seem to actually work, but the results are terrible, from what i’ve seen). However given the extremely wide list of claims, one should probably try to focus on a one issue at a time.

      I would say, for the simplest cases (won’t even go as fas as pose estimation which requires training):

      • Can the system actually detect the presence of **anyone** (remember that Wi-Fi goes through walls so you would need to get quite far from the setup to distinguish between “no-one” and “someone present”)
      • Can it actually count people with any level of accuracy?
      • Can it actually detect heartbeat or breathing?
      • Can it actually detect the position of a person and/or whether a person is actually in the target room (and not next door)?

      It may be useful to know if any of the above requires any form of location-specific training.

      Note that they recently (supposedly) added support for mmWave radar. This is a quite orthogonal to Wi-Fi sensing, and could indicate that the Wi-Fi-based methods are not that reliable/usable.

  2. Given the 100% vibe coded nature of the project and the comically large ego of the author I seriously doubt it works at all.

  3. The disaster response point is comical. I guess you might need to retrain a model for the slightly alternated spatial layout after a disaster, as well as make sure power supply is ok. Should it work under non-disastrous circumstances that is.

  4. Assume AI slop until proven otherwise is the new rule unfortunately. It’s become too easy to simply generate the appearance of a “promising new project making incredible claims,” so without seeing a demo or someone with expertise to provide even basic analysis… I really don’t know why this publication is providing free publicity to an unknown entity’s admittedly dubious claims…

  5. When the code has sections that provide data with rnd() function, and if you ask ANY ai to analyze the code you get the same result, it doesnt use actual data. Please at least try run a project before sharing slop…

    For future readers, any project a reviewer hasn’t personally tested is now safe to assume is fake…theres just too many ai slop

Leave a Reply

Your email address will not be published. Required fields are marked *

Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC
Boardcon MINI1126B-P AI vision system-on-module wit Rockchip RV1126B-P SoC