In my previous article, I showed you how to build your own WiFi motion detector—and in doing so, revealed that your router is constantly broadcasting data that can track your movements through walls.
Cool for home automation. Concerning for privacy. So let's flip the script.
The bad news: There's no 100% software kill-switch. This is physical-layer radio waves—it happens before encryption, before your VPN, before anything software can touch.
The good news: You can slash the effectiveness 70-95% for under $30 with stuff you probably already have or can grab at Walmart/Amazon today.
What We're Fighting
WiFi sensing (BFI/CSI) works by analyzing how your body reflects and distorts radio waves. Our countermeasures either: (1) reduce the signal leaking outside your home, (2) degrade the quality of the beamforming data, or (3) inject noise that confuses sensing algorithms.
1. Router Settings Tweaks FREE
Do this first. Takes 5 minutes. Most modern routers let you cripple the exact beamforming feedback that BFI/CSI sensing relies on.
Go to your router admin page (usually 192.168.1.1 or 192.168.0.1) and look for these settings:
Settings to Disable
- Beamforming (Explicit + Implicit/Universal) — This is the core of WiFi sensing. Disabling it means your router broadcasts more uniformly instead of focusing beams.
- MU-MIMO — Multi-user MIMO requires detailed channel feedback. Turn it off.
- Airtime Fairness — Less relevant but often bundled with beamforming optimizations.
- Transmit (Tx) Power → Low or 25-50% — Less power = shorter range = less signal leaking outside.
Where to Find These Settings
- NETGEAR: Advanced → Advanced Setup → Wireless Settings
- TP-Link: Advanced → Wireless → Wireless Settings
- ASUS: Advanced Settings → Wireless → Professional
- Xfinity: Just turn off "WiFi Motion" in the Xfinity app (they literally built sensing into the router)
- Google/Nest WiFi: Limited options—consider a different router if privacy is a priority
Result: Your WiFi still works great inside the house, but the clean BFI data that outsiders (or neighbors) can sniff drops dramatically. You're trading some theoretical speed optimization for privacy.
2. DIY Aluminum Foil Shielding < $10
Yes, really. The classic that actually works surprisingly well.
Materials:
- Heavy-duty aluminum foil (Reynolds Wrap or similar)
- Painter's tape or foil tape
- About 30 minutes
Method: Cover windows, exterior walls, or just the room you care about most (bedroom, office). Use 2-3 overlapping layers for best results.
Why it works: Aluminum reflects radio waves. Multiple layers create a Faraday cage effect that blocks 90%+ of leaking WiFi signals. Your router's signal stays inside; outside sniffers get noise.
Pro tip: Focus on windows first—they're the biggest leak. Glass is basically transparent to radio waves. For a cleaner look, search Amazon for "RF blocking window film" or "EMF shielding window tint" (~$15/roll). Same physics, less tin-foil-hat aesthetic.
3. RF-Blocking Fabric or Curtains $15-40
One step up from foil if you want something that doesn't look like a conspiracy theorist's apartment.
Search Amazon for:
- "Faraday fabric curtain"
- "EMF shielding fabric"
- "RF blocking curtains"
These are real products used in server rooms, medical facilities, and secure government buildings. A single 4×9 ft panel (~$25-40) blocks WiFi, Bluetooth, and cell signals through walls. Hang like normal curtains or tack up as wallpaper.
Where to Deploy
- Bedroom windows: Block sleep pattern detection
- Home office: Protect work-from-home activity patterns
- Street-facing walls: The most exposed to drive-by sniffing
- Shared walls (apartments): Your neighbor's router can sense you too
4. Bonus Cheap Hacks $0-15
Switch to Ethernet ($5-10)
Every device on WiFi generates BFI traffic. Fewer WiFi devices = less data to analyze. Run ethernet cables to:
- Smart TVs
- Desktop PCs
- Gaming consoles
- Streaming boxes (Roku, Apple TV, etc.)
These devices don't move anyway—they don't need WiFi. A $5 ethernet cable eliminates their contribution to the sensing data entirely.
Smart Plug Schedule ($0 if you have one)
Put your router on a smart plug and turn WiFi off:
- At night while sleeping (no one's using it anyway)
- When everyone's away from home
- During sensitive activities
No WiFi signal = no WiFi sensing. Simple.
5. ESP32 WiFi Fog Machine ~$8-12
This is the fun one. I built an open-source tool called WiFi Fog that turns a cheap ESP32 microcontroller into a privacy shield. It floods your network with harmless noise that makes WiFi sensing algorithms completely useless.
Think of it like a fog machine for radio waves. The sensing algorithms are trying to "see" you move through your house by analyzing WiFi reflections. WiFi Fog fills the air with so much random radio activity that your actual movements become invisible in the noise.
ESP32 WiFi Fog
Open source privacy tool
Get the code, documentation, and installation instructions:
View on GitHubWhat You Need (5 Minutes to Order)
ESP32 Board
Any ESP32 works. Search Amazon for "ESP32 development board"
~$8-12
USB Cable + Charger
Micro-USB or USB-C depending on your board. Any phone charger works.
~$0 (you have these)
That's it. One board provides solid coverage. Two boards (one per floor) gives you whole-home protection. Total investment: less than a fancy coffee.
Three Intensity Levels
WiFi Fog has three configurable intensity levels so you can balance privacy protection with bandwidth usage:
Gentle Mode
Longer delays between requests (~600ms base). Minimal bandwidth impact. Good for always-on background protection.
Medium Mode (Recommended)
Balanced timing (~350ms base). Best trade-off between protection and network impact. Start here.
Aggressive Mode
Short delays (~120ms base). Maximum noise generation. Use when you want serious obfuscation.
Two Ways to Install
Choose whichever method fits your setup:
Option A: Arduino IDE
Traditional approach. Works on any computer.
- 1. Install Arduino IDE
- 2. Add ESP32 boards (File → Preferences → Board URLs)
- 3. Download
source.cppfrom the repo - 4. Edit your WiFi credentials
- 5. Select board + port, click Upload
Option B: ESPHome
If you already use Home Assistant. Super easy.
- 1. Copy the YAML config from the repo README
- 2. Paste into ESPHome dashboard
- 3. Edit your WiFi credentials
- 4. Click Install
- 5. Done—it auto-integrates with HA
What It Actually Does
Once running, WiFi Fog:
- Generates random HTTP requests to public connectivity-check endpoints (Cloudflare, Google, Apple)
- Varies timing unpredictably with random delays + occasional bursts
- Creates ~0.5W of power draw (less than a nightlight—run it 24/7)
- Runs completely locally with no cloud dependencies
- Starts automatically on power—plug it in and forget it
The randomized traffic patterns create constant noise in the WiFi channel state information. Sensing algorithms depend on detecting the subtle, characteristic changes that happen when a human body moves through the radio field. WiFi Fog drowns those signals in a sea of random data.
The Analogy
Imagine you're trying to listen for footsteps in a quiet room. WiFi Fog is like turning on a white noise machine, running water, and playing music all at once. The footsteps are still there—but good luck picking them out of the noise.
Deployment Tips
- Placement: Near your router is good. One per floor is better. Don't overthink it.
- Power: Any USB port or phone charger. It draws almost nothing.
- Multiple boards: Each board generates unique patterns (based on chip ID), so they don't cancel each other out.
- Leave it running: It's designed for 24/7 operation. Set and forget.
Test Your Countermeasures
The best part: you can verify this actually works using the same tools from the original article.
- Run your Wi-BFI or ESPectre setup before implementing countermeasures
- Note the motion detection sensitivity and range
- Implement the countermeasures above
- Run the detection again
- Watch the motion spikes get tiny or disappear
You should see dramatically reduced sensitivity. The system might still detect large movements in the same room as the sensor, but through-wall detection should be mostly eliminated.
The Realistic Expectation
Let's be clear about what this does and doesn't do:
What you're achieving:
- Making casual/opportunistic WiFi sensing much harder
- Blocking neighbors from accidentally (or intentionally) sensing your home
- Degrading the quality of any captured BFI data
- Raising the cost and effort required to sense your movements
What you're NOT achieving:
- 100% immunity from a determined, well-resourced attacker
- Protection against other sensing methods (cameras, thermal, etc.)
- Complete radio silence (you'd need a full Faraday cage)
But for most threat models—nosy neighbors, drive-by data collection, mass surveillance—these countermeasures are highly effective and cost almost nothing.
"Privacy isn't about having nothing to hide. It's about having control over what you reveal and to whom."
Quick Reference: The Complete Checklist
| Countermeasure | Cost | Effort | Effectiveness |
|---|---|---|---|
| Router settings | Free | 5 min | Medium |
| Foil shielding | $5-10 | 30 min | High |
| RF curtains | $15-40 | 15 min | High |
| Ethernet migration | $5-15 | 30 min | Low-Medium |
| WiFi scheduling | Free | 5 min | Complete (when off) |
| ESP32 WiFi Fog | $8-12 | 15 min | High |
Wrapping Up
You now have the knowledge to both exploit WiFi sensing (for legitimate home automation) and defend against it (for privacy). That's the balance I always aim for: understand the technology, then decide how you want to use it.
The router tweaks are free and take 5 minutes. Start there. Add the other countermeasures based on your threat model and how much you care about this particular privacy vector.
And if you build WiFi Fog, I'd love to hear about it. Tag me @thesecretchief with your setup or your before/after BFI plots. Let's make WiFi sensing obsolete.
Resources
- ESP32 WiFi Fog: github.com/thesecretchief/esp32-wifi-fog-
- Part 1: Your WiFi Can See You Moving: A Weekend Project to Prove It
- ESP32 Arduino Setup: Official Espressif Guide
- ESPHome: Getting Started with Home Assistant
- Faraday Fabric: Search "Mission Darkness" or "TitanRF" on Amazon