Samir Makwana is a technology journalist and editor from India since past 18 years and his work appears on MakeUseOf, HowToGeek, GSMArena, BGR, GuidingTech, The Inquisitr, TechInAsia, TechWiser, and others. He has written news, features, and gadget reviews for national technology media publications. His passion is to help people with their technology problems and gadget purchases. For that, he has worked for some of the biggest international technology publications, covering news, explainers, how-to guides, listicles, and product-buying guides.
He has worked as an editor and managed teams since 2015. His expertise broadly covers computers, smartphones, game consoles, headphones, smart home products, browsers, and apps.
I’ve lost count of how many times I’ve stood in a corner of my house and suddenly lost wireless connectivity. I knew I couldn’t fully trust those Wi-Fi signal bars, so I'd shift my stance and wait for the bars to climb back up, hoping the connection would hold. But the number of bars never told me what I needed to do to use Wi-Fi without getting booted out.
I picked up a spare ESP32-S3 from an earlier project and decided to let it tell me about the weaker Wi-Fi zones in my house. I wasn’t expecting a professional-grade dead zone identifier, but I hoped for enough information to adjust my router, so the wireless connection reaches most corners.
Wi-Fi analyzer apps on my phone rarely gave real answers
Signal bars don’t tell me where to stand
Like many, I surveyed my house using Wi-Fi signal bars on my phone and realized they're just indicators. They don’t give precise information. After trying three different Wi-Fi analyzer apps on the same phone, I stood in the same spot and found they disagreed: one claimed a strong connection, while another flagged the same corner as borderline. None of them noted where I was standing a few minutes ago. So, I couldn’t trust any single app to tell the whole story.
What I really wanted was a figure my router and wireless devices see, measured in decibels, not an estimate. So, instead of using my phone or a tablet, I wanted dedicated hardware that showed me the data plainly. A microcontroller can read that directly from its Wi-Fi chip. All I needed to do was pull that data from a microcontroller like an ESP32 and store it temporarily.
Picking the right ESP32 board is trickier than it sounds
I didn’t need Wi-Fi 6 or Zigbee radio specifically
While my drawer had a couple of ESP32 boards to choose from, I weighed the ESP32-S3 against the newer ESP32-C6. At first, the C6 seemed like a good choice, with Wi-Fi 6 and a built-in Zigbee radio. I liked the idea of using a second radio to step in if I ever walked into an absolute dead spot where my Wi-Fi gave out completely. That was my initial idea for mapping those spots accurately.
The idea sounded great, but it didn’t hold up on closer inspection. Reading Wi-Fi signal data off-board doesn’t care whether it has a Wi-Fi 6 chip. Also, relaying any information meant pairing it with a coordinator chip, which forwards the data. That was easier said than done, because getting the second radio to kick in when the Wi-Fi drops is tricky. For a simple job, I chose ESP32-S3 instead because of its mature tooling, and I wouldn’t have to debug any radio quirks on top of everything else.
ESP32-S3
ESP32-S3-N16R8 comes with a dual-core Xtensa LX7 microcontroller. It has 16MB of flash memory and 8MB of PSRAM with years of maturity to be ready for a variety of projects.
Getting Wi-Fi signal strength data into Home Assistant
A small configuration file did the heavy lifting
It took a while to decide where the data would land, and I even evaluated a few versions of this project before settling on a simple option. At first, I considered running a web server to show the RSSI values, but it’d disappear the moment I closed the tab. That defeated the point of mapping anything.
I already had a Home Assistant instance running at home, and feeding the signal readings to it made more sense than building my own dashboard from scratch. A short YAML configuration file tells the ESP32-S3 to read the Wi-Fi signal strength, report it as a sensor, and from that point on, the numbers land somewhere I already check throughout the day anyway.
Recording room-by-room Wi-Fi data of the house
Helpers and a dashboard card helped close the loop
Flashing the ESPHome YAML configuration on the ESP32-S3 barely took a few minutes. To capture the board's RSSI data, I pulled everything into Home Assistant. I set up three separate sensors: one for the live reading, one for the running survey average, and one that holds the latest results for the room I’m standing in.
Next, I added a Wi-Fi Survey YAML configuration file that turns the board’s measurements into room-by-room survey data. Instead of a rigid, technical setup, I kept it simple, as the file includes a small script to start and stop Wi-Fi surveys and save the average RSSI values to the selected room’s helper.
On the Home Assistant dashboard, I used entity cards to create separate views for the live Wi-Fi signal, survey recording (with room and duration selection), live signal history, and a list of the latest result per room. All I had to do was visit a room, select the card, and start the survey to record that room's values.
No more walking around with my phone
By the time I finished surveying all the rooms, I realized my kitchen and the other corner of the bedroom barely had wireless connectivity at all. The numbers were so low that I’d never trusted my phone’s bars to catch it. To find the dead spots, I used a cheap board, a short configuration file, a few helpers, and a couple of entity cards.
I already have the Home Assistant dashboard running on a tablet at home. But it gave me real data tied to every room, so I don't have to rely on my memory. If you’ve got a spare ESP32 from another project, this is a genuinely satisfying way to put it to work and find weak Wi-Fi zones in and around your home. It also means your next router or mesh node placement decision is based on real numbers instead of a hunch formed while waving your phone around.
- AITRIP
- UART, USB
The ESP32 is a fantastic development board that combines solid specs with an affordable price. Despite being cheaper than Arduino and Raspberry Pi Pico, it outperforms most of its rivals. Plus, the ESP32 even has Wi-Fi and Bluetooth functionality built into every board, making it great for projects where you can't physically keep the microcontroller connected to your PC at all times.










