🟡 Intermediate ⚙️ Type: WiFi Sensing / Edge AI 💸 Free & Open Source (MIT) ⭐ 350+ GitHub Stars
What is RuView?
RuView is a groundbreaking open-source platform that turns ordinary WiFi signals into a real-time sensing system. It allows you to detect people, measure breathing rates, track heartbeats, and monitor room occupancy—all without using a single camera or microphone.
Instead of relying on lenses or wearables, RuView reads the microscopic disturbances in the radio waves (Channel State Information, or CSI) bouncing around your room. When someone walks, breathes, or even sits perfectly still, they alter these radio waves. RuView captures these changes using a cheap $9 ESP32 microchip and runs them through a tiny AI neural network to figure out exactly what is happening in the physical space.
It’s the ultimate privacy-first smart home sensor. Because it operates entirely on radio physics and processes everything directly on the edge hardware, there are no images, no audio recordings, and no cloud subscriptions.
Who is it for?
- Privacy-conscious smart home owners who want highly accurate presence detection without putting cameras inside their bedrooms or bathrooms.
- Caretakers and elderly family members needing a reliable, contactless way to monitor falls, heart rates, and breathing while a patient is sleeping.
- Home Assistant enthusiasts looking to trigger advanced home automations based on micro-movements or sleep stages.
- Makers and IoT developers who want to experiment with running lightweight Hugging Face AI models directly on low-power microcontrollers.
What makes it special?
- Camera-free privacy — It literally cannot see you. It works purely through radio signal reflection, making it safe for any room.
- Through-wall sensing — Because WiFi goes through walls, RuView can track movement and occupancy through drywall, concrete, smoke, and complete darkness.
- Contactless vital signs — It can read a resting heart rate (40-120 BPM) and breathing rate (6-30 BPM) through clothes without the user wearing a smartwatch or chest strap.
- Incredibly lightweight AI — The pre-trained model is quantized down to just 8 KB, allowing it to process 54,000 frames per second on a basic $9 ESP32-S3 board.
- Native Smart Home integration — It broadcasts directly to Home Assistant via MQTT, and supports Apple HomeKit, Google Home, and Alexa as a Matter bridge.
Requirements before you start
Before installing RuView, you need to gather a few hardware and software items:
- ESP32-S3 Microcontroller (8MB Flash) — You must use the “S3” variant. Older ESP32s or the C3 variant lack the processing power needed for the DSP calculations. Cost is around $9 on Amazon.
- A Data-Capable USB-C Cable — Do not use a cheap charging-only cable, or your computer won’t recognize the board.
- Python 3.10 or higher — Installed on your computer to run the flashing tools.
- esptool — A Python library used to flash firmware to ESP chips.
- A 2.4 GHz WiFi Network — The system relies on standard 2.4 GHz WiFi to capture the channel state information.
💡 Tip: You can pair the ESP32 nodes with a Cognitum Seed (a dedicated Pi Zero hub) for advanced memory storage, but you can also route the data directly into a standard Home Assistant server using MQTT.
Step-by-step installation
Step 1 — Install the Python flashing tools
Open your terminal (Command Prompt on Windows, Terminal on Mac/Linux) and install the official Espressif flashing tool:
pip install esptool pyserial
Step 2 — Download the firmware binaries
Go to the RuView GitHub Releases page and download the latest files for the ESP32-S3. You will need four specific `.bin` files:
bootloader-s3.binpartition-table-s3.binota_data_initial-s3.binesp32-csi-node-s3-8mb.bin(The main firmware)
Save them all into a single folder on your computer.
Step 3 — Connect the ESP32-S3 to your computer
Plug the ESP32-S3 into your USB port. You need to find out which COM port it is using.
- Windows: Open Device Manager and look under “Ports (COM & LPT)”. It will likely be something like
COM3orCOM9. - Mac/Linux: Run
ls /dev/cu.*orls /dev/ttyUSB*in your terminal.
Step 4 — Flash the device
Navigate to the folder where you saved the `.bin` files in your terminal. Run the following command, replacing COM9 with your actual port:
python -m esptool --chip esp32s3 --port COM9 --baud 460800 write_flash 0x0 bootloader-s3.bin 0x8000 partition-table-s3.bin 0x10000 ota_data_initial-s3.bin 0x20000 esp32-csi-node-s3-8mb.bin
Wait for the progress bar to reach 100%. Once finished, unplug the ESP32 and plug it back in to reboot it.
Step 5 — Connect to your network
- After the device reboots, it will broadcast a temporary WiFi setup hotspot.
- Connect to this hotspot using your phone or laptop.
- A captive portal page will appear. Enter your home 2.4 GHz WiFi credentials and your Home Assistant MQTT broker IP address.
- Save and reboot. The sensor will now sit quietly in your room, reading radio waves and publishing real-time presence and health data directly to your dashboard!
Common errors and fixes
| Error | What it means | How to fix it |
|---|---|---|
A fatal error occurred: No serial data received | The computer cannot communicate with the ESP32 chip during the flash process. | Hold down the physical “BOOT” button on the ESP32 board, click enter to run the flash command, and release the button once the flashing begins. |
| Heart rate readings are wildly fluctuating | Too much movement is interfering with the micro-Doppler heartbeat reading. | Vital signs require a stationary subject (e.g., sitting or sleeping). The system currently degrades heart rate accuracy if the person is actively walking around the room. |
| Sensor connects to WiFi but sends no CSI data | You are likely connected to a 5 GHz network or a router that suppresses channel state feedback. | Ensure you are forcing the ESP32 to connect to a dedicated 2.4 GHz IoT network band. |
Free vs Paid comparison
| Feature | RuView (Free & Open Source) | Commercial Health / Radar Sensors |
|---|---|---|
| Hardware Cost | ~$9 (Basic ESP32-S3 board) | $80–$250+ per room |
| Cloud Subscription | $0 (Runs entirely offline) | Often $5–$15 / month for health data |
| Through-Wall Detection | ✅ Yes, using standard radio waves | ❌ No, mmWave radar is blocked by walls |
| Privacy | ✅ 100% Local, no images captured | ⚠️ Often relies on cloud analytics |
| Ease of Setup | ⚠️ Requires flashing firmware manually | 🟢 Plug and play app setup |
Bottom line: If you are willing to spend 10 minutes flashing an ESP32 board, RuView offers enterprise-grade contactless health and presence monitoring for less than $10 a room, completely offline. If you want a plug-and-play solution without touching code, a commercial mmWave sensor is an easier, though much more expensive, route.
Alternatives — 3 similar tools
1. ESPresense
An open-source firmware also built for ESP32 boards, but it relies on tracking the Bluetooth Low Energy (BLE) signals of your smartwatch or phone to determine which room you are in. It’s much easier to set up than RuView, but requires you to carry a device to be detected.
2. Aqara FP2 (mmWave Radar)
A highly popular commercial sensor that uses mmWave radar instead of WiFi to track up to 5 people in a room simultaneously. It is incredibly accurate for presence and fall detection, but it costs around $80 per room and cannot track vitals without a premium cloud tier.
3. Tommy Sense
Another WiFi-based sensing tool still currently in development. It offers a free basic tier but locks advanced features behind a closed-source paid “Pro” license. Good for those who want WiFi sensing but don’t want to dive quite as deep into raw firmware.
🚀 Want more free AI tools like this?
We find, test, and write setup guides for the best free and open-source AI tools — so you don’t have to dig through GitHub yourself.Browse Free AI Tools at globalaiforce.com/shop →
📸 Follow us for daily AI tool tips and tutorials: instagram.com/globalaiforce