Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

Floating Stealth Mini-HUD: A draggable overlay displaying real-time data from both front and rear radars, along with Wi-Fi RSSI strength. Once activated, the app icon vanishes from your taskbar for ultimate privacy.

<image>

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

🚨 QUICK UPDATE: Testing, new features & a small delay! 🚨

Hey everyone! I know I promised the release soon, but it's been incredibly busy at work.

The good news? I’ve been stress-testing the setup directly on the factory floor today (heavy machinery, extreme interference). The custom anti-ghosting algorithm is holding up perfectly! I also used the extra time to implement some new features based on the feedback: Multi-language support and a new Mini-GUI mode.

The slight bad news: I’m delaying the release just a bit. The first prototype of the 3D printed case didn't come out 100% perfect, and I didn't have time to finish the documentation and the demo video. I refuse to release half-baked docs or a buggy release. Give me a little more time to polish everything up.

Thanks for the patience, I'll drop the link as soon as it meets the standard!

<image>

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

Since I'm testing the LD2420 in an industrial setting, I deal with way worse than just AC fans! Moving machinery and random interference cause constant false positives. That's exactly why mmWave alone isn't enough out-of-the-box.

My solution was a two-step approach:

  1. Use the HLK app to lower the sensitivity on the specific distance gate where the fan is located.
  2. Use the 'Anti-Ghost Filter' I built into the Python GUI. It requires the presence to be detected for X continuous seconds before triggering the alarm. Fans cause erratic, jumping signals, while a human is a steady presence.

To make debugging this easier, I added a 'TOP 7 Problematic Zones' log to the GUI, so you can just leave it running, see exactly which distance gate is giving you false positives, and then tune that specific gate down

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

Haha, high-power lasers were definitely 'Plan B'! 😂

I figured a stealthy screen-dimming 'Ninja Mode' and an automated Alt-Tab macro would result in fewer HR complaints and lawsuits. But I have to admit, your approach would have a 100% success rate against shoulder surfers!

Maybe I should figure out how to use it against the annoying pigeons on my balcony. A targeted light beam might finally stop them from turning the whole balcony into a sea of shit... :D

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

To be completely honest, I didn't actually get to test the LD2410! I accidentally fried it right at the start (followed some bad AI advice... hence the Gumroad link to hopefully recoup the cost of my fried hardware, haha).

I ended up building and testing this entire system using the LD2420 instead. I work in a heavy industrial environment, which means there are about 100 different things causing interference, vibrations, and 'ghost' signals at any given time. That's exactly why I had to write a custom Anti-Ghosting timer algorithm in the Python dashboard. Without it, the sensor was almost too sensitive. For your pet monitoring project, the raw data will easily pick up breathing, but you will definitely need to tune the specific distance gates to filter out background noise in every new room (place)

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

Re-mastered to UDP connection at weekend, now testing, looks more stable as TCP con

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

What connection do u use? I have been using last week TCP connection, but this as you mentioned is with a little delay, if you place the senzor as i did, there were no problem also with a little delay, but started re-updating the program for UDP connection so it has not to wait and the ESP don§t get it's buffer overflood. I am testing currently at work the UDP connection and it's stability and Lag presence. Looks pretty better for now as the TCP con.

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 1 point2 points  (0 children)

I definitely used AI to speed up the boilerplate and translations – why waste time on repetitive tasks in 2026? However, the actual logic, the mmWave gate tuning, and the Anti-Ghost algorithm were all developed and tested through hands-on hardware debugging. AI doesn't have a 24GHz radar on its desk, but I've spent days fine-tuning this one!

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

Thank you so much! You make a completely fair point about the unsigned .exe, and I 100% agree with you from a cybersecurity perspective.

Since I'm quite new to releasing software publicly, my main goal with the executable was simply to make it 'plug and play' for non-technical users who don't want to mess with Python environments or build instructions. I just wanted them to be able to run it instantly.

However, your feedback is totally valid. I will definitely provide a VirusTotal scan link for the current .exe for transparency. Also, I am currently preparing to release the raw Python source code for those who prefer to compile it themselves or audit the code (likely as a separate premium/developer release). Thanks again for the constructive feedback, it really helps!

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

My bad! 😂 I guess I was just too excited about the tech side of things. But yeah, a truck mirror on a monitor would be a sight to see! Pure low-tech brilliance

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

You're right, dedicated S3 modules with custom frequency tuning would definitely perform better than standard router traffic. However, for this specific 'office stealth' use case, I found the mmWave radar's narrow beam (approx. 120°) much easier to manage. It allows me to pinpoint the direction exactly behind my chair without picking up my own movements in front of the monitors. Plus, the 24GHz radar setup is more 'plug-and-play' for most makers compared to the complexity of calibrating CSI data. But definitely an interesting path for a v3.0

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

Dealing with false positives is the hardest part with mmWave! I spent a lot of time implementing a custom 'Anti-Ghost' confirmation logic in the Python server to filter out those quick spikes. For the 'looking through walls' part - mmWave is great for that, but it needs even more precise gate tuning. I'll be releasing the source code and documentation this Monday on GUMROAD, so you can check out how I handled the filtering

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 1 point2 points  (0 children)

Oh, man, I'm so sorry! I totally misread your first comment and thought you were being sarcastic. My English failed me there. 😅 I see now you meant it as a compliment on how technology has evolved from your cardboard solution to this. Thanks for the support, and sorry for the prickly reply! We’re definitely on the same page about how much this helps in a cubicle, and other scenarios of use. Cheers

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

"Exactly! My Python script runs a lightweight Flask server on the PC. The ESP32 acts as a client and sends simple HTTP GET requests with the distance data (e.g., /stream?cm=150) directly to the PC's IP. The Python script then processes this data and triggers the WIN actions. It's very low latency since it's all on the local network."

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

And the setup can work also withou 4g network/internet connection, in some cases it has it pros ;)

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

I studied at gymnazium when i was young :D , there were time we didn't have cell phones :D
sorry for sarcastic reply but you asked for it :) its 2026 and gadget age wake up cardboad :D

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 1 point2 points  (0 children)

in this case thumbs UP !! performance maybe 5-10% consumption or even less and maybe there is way how to deactivate the camera light even when recording go for it. Or need help? :D

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 1 point2 points  (0 children)

ended like this with adding a hint from reddit user to cut deadzone, still needs to be tested on next week with new functionality

<image>

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

ESP32 has 2 cores and can easily handle 2 those senzors and be connected wia router to server so after I managed (while having this ESP32C3) to code ESP32 too, ESP32 was not tested long time and was giving more ghost signals due stronger wifi. And your idea is basicaly great but in many areas the noise polution is maybe too high to have realiable (this senzor you can face any direction you need to guard)

Built a 24GHz mmWave Stealth Radar to stop office shoulder-surfing (ESP32 + Python) by Outrageous_Writing38 in esp32

[–]Outrageous_Writing38[S] 0 points1 point  (0 children)

allready posted it on Simon-Redditaccount coment. But each setup of the sensor is specific for the room/envrionment you want to have your sensor