Post

How I Used AI and Floor Plans to Fix My Zigbee Network

Using architectural floor plans and ChatGPT to troubleshoot outdoor Zigbee sensor placement.

How I Used AI and Floor Plans to Fix My Zigbee Network

I never really had trouble with my Zigbee network. My coordinator was solid, my devices responded quickly, and I didn’t think much about the mesh. That changed the day I stuck a couple of soil moisture sensors into the ground.

Soil moisture sensor in garden placeholder

Chris Hansen Tech is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to Amazon.com. As an Amazon Associate, I earn from qualifying purchases.

We had just planted new lilac and hydrangea bushes, and I suspected my wife might be watering them a bit too generously. To prove my point, I ordered a few Third Reality soil moisture sensors and paired them with my Zigbee network.

That’s when I discovered a new problem: the sensors would barely connect outside.

When outdoor sensors meet Zigbee

Indoors, everything worked fine. But outside in the yard, the sensors struggled to stay connected. I’d occasionally get a reading, then nothing for hours. The data was too unreliable to be useful. The sensor by the lilacs had an LQI of 35 and the hydrangea sensor was an LQI of 42.

Zigbee map before changes Zigbee map before changes

My setup wasn’t short on routers either. I had a handful of mains-powered devices acting as routers. But of course all those devices were placed based on their usage not on getting the best mesh outside.

Instead of buying more hardware right away, I wanted to understand why the signal wasn’t reaching the bushes even though they were right next to the house.

Floor plans to the rescue

When we moved into our house, my wife got a copy of the architectural floor plans to plan furniture layouts. She was provided with the site plan, first floor, basement, and elevations in PDF files. I had already used those plans once before with AI to decide where to mount a radon detector, based on vendor recommendations. You can read more about that in my Air Quality Monitoring post.

Architectural floor plan Architectural floor plan

It hit me: why not do the same thing for Zigbee?

Using AI to map the network

I attached all the floor plan PDFs, a screenshot of the current Zigbee map, and described my network to ChatGPT in terms of the floor plan using this prompt.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
I’ve attached the floor plan PDFs for my house along with a Zigbee Map
screenshot from Zigbee2MQTT. Please analyze these to suggest the best router
placements and point out weak spots in the mesh.

Here’s the current setup:

- **Coordinator**: Basement utility room, north wall, across from the furnace.
- **TV stand**: Northeast corner of the living room, directly above the
  coordinator.
- **Pet feeders**: Three on east wall of the dining room, under the window (these act as
  strong routers).
- **Hydrangea**: Outside the north living room window (soil sensor).
- **Lilacs**: West side of the garage (soil sensor).
- **Garage**: Mains-powered Zigbee presence sensor.
- **Basement office**: Small room in the northwest corner of the basement light switch is a router.

The goal is to optimize coverage for the outdoor sensors and minimize dropouts
on the main floor.

Tip: Using Markdown formatting like **bold**, *italic*, and bullet points in your prompt doesn’t make the model literally “see” bold text, but it does help structure information in a way that guides the model to focus on what’s important. Just like in human writing, clarity and emphasis improve the results.

ChatGPT came back with a practical plan. Since my coordinator lives in the basement utility room, the advice was to “build up and out” with a couple of extra routers. The key spots were:

  • Behind the TV stand on the main floor, directly above the coordinator, to strengthen coverage for the living room, dining area, and the hydrangea sensor outside the north window.
  • On the interior garage wall to give the lilac sensor a clear path, since the garage presence sensor wasn’t doing much.
  • An optional one in the basement office if I ever expand devices down there.

The nice part was that my pet feeders were already solid routers, so the recommendation was to leave those alone. Just adding the TV stand and garage routers should stabilize the outdoor sensors and clean up dropouts on the main floor.

The limitations of AI

Working with AI on this project was useful, but it’s not magic. ChatGPT can only work with the information I provide — floor plans, screenshots, and descriptions — and then reason about them based on patterns it’s seen before. It can highlight weak spots, suggest where routers might help, and summarize a plan in plain language. That’s very different from running a wireless survey or doing real RF engineering.

AI isn’t measuring signal strength, interference, or attenuation. It has no direct view into the radio environment. What it does instead is take the context I supply — where the coordinator is, which devices are routers, where the sensors are located — and apply general knowledge about how Zigbee meshes behave. The suggestions it generates are essentially “educated guesses,” not calculations.

The quality of input also matters. I was working from detailed architectural plans in PDF format, with site drawings, elevations, room labels, and measurements. That’s far more context than a simplified CAD sketch or a phone-generated floor plan, but even then AI isn’t “reading” RF propagation off the walls. It’s just reasoning with the details I provided.

The same applies to Zigbee maps. ChatGPT can look at a map screenshot, note which devices are acting as routers, and reason about why an outdoor sensor might be struggling. But it isn’t directly analyzing the radio data. The real proof still comes from testing in my own house: plugging in routers, power-cycling devices, and watching the Zigbee2MQTT map update to confirm the changes worked.

So the takeaway is simple: AI is a helpful assistant for planning, not a replacement for real-world validation. What it does well is shorten the trial and error of moving devices around. Instead of plugging routers into five different outlets before finding the right spot, I had a clear plan to test first — and that saved time.

Flashing Sonoff dongles as routers

I also had to get my two SONOFF Zigbee 3.0 USB Plus dongles working properly as Zigbee routers.

  1. Download the latest release of the CC1352P2_CC2652P_launchpad_router firmware.
  2. Download and install Flash Programmer 2 from Texas Instruments
  3. Download Hex2Bin
  4. Convert the router firmware .hex file to a .bin file using Hex2Bin
1
hex2bin.exe CC1352P2_CC2652P_launchpad_router_20250403.hex
  1. You’ll need to temporarily remove the board from the case to access the buttons
  2. Hold down the Boot button on the Sonoff dongle while plugging it in to the USB port
  3. Use Flash Programmer 2 to flash the board

Once flashed, the dongles extended the mesh and stabilized my outdoor sensors.

These steps and the firmware may vary depending on the dongle model.

The adjustments

Using the feedback from ChatGPT I installed a new Sonoff Zigbee dongle behind the TV. At first I just had it plugged in by the outlet and the signal to the hydrangea sensor was better but not much. I added a USB extension cable so I could mount it closer to the window and then the sensor got a great connection. The other USB dongle I first installed on the ceiling of the garage on the west side but still had poor signal so I moved it to the wall where the lilac sensor was on the opposite side.

Zigbee map after changes placeholder

Now the sensors report consistently, and I can finally track soil moisture for the lilac and hydrangea bushes without relying on guesswork. After adding the two Sonoff Zigbee dongles as routers the lilac sensor now has a LQI of 124 and the hydrangea sensor a LQI of 82

Soil sensor tips

The Third Reality soil moisture sensors have worked great through Zigbee2MQTT, but I ran into a few quirks along the way.

  1. At first only Humidity value showed up in Zigbee2MQTT and Home Assistant. I had to do an OTA firmware update before Soil moisture populated.
  2. The lilac sensor did continue to drop off randomly. I found the issue was the Amazon Basics AA batteries that came with it was drained. I replaced it with a lithium Ion AA battery and it has worked great since then.

Here is the automation I use to notify my wife when a sensor reports the soil is too dry.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
alias: Notify USER When PLANT Needs Water
description: Notify USER if the PLANT soil is too dry.
triggers:
  - entity_id:
      - sensor.PLANT_SOIL_MOISTURE_SENSOR
    below: 60
    trigger: numeric_state
conditions: []
actions:
  - action: notify.mobile_app_USER_DEVICE
    data:
      title: 🌱 PLANT Needs Water
      message: >-
        The soil near the PLANT is too dry. Please water when you get a chance!
mode: single

I did have some connection issues after improving my Zigbee network, but it turned out to be the Amazon Basic AA battery included with one of the sensors was very low.

Takeaways

  • Floor plans aren’t just for furniture—they’re great for visualizing Zigbee coverage.
  • AI can highlight weak spots you might overlook, but it won’t replace real-world testing.
  • Sometimes you don’t need new gear; you just need a smarter placement of what you already have.

Sometimes the best troubleshooting tool is just a new perspective—even if it comes from an AI.

Frequently Asked Questions

Do I need to buy new routers, or can I move devices I already have?

Often you can reposition existing mains-powered devices (smart plugs, switches, or hubs) to improve coverage. Start by placing a router directly above the coordinator on the main floor and another on the interior side of the exterior wall closest to your outdoor sensor.

Can AI replace a proper wireless site survey?

No. AI can help plan and prioritize where to test, but it doesn’t measure signal strength or interference. Validate changes in your home by watching link quality and stability over time.

Do I need architectural PDFs, or will a phone-generated floor plan work?

Detailed plans help, but they’re not required. Even a simple sketch with room labels and approximate dimensions can give the model enough context to suggest test points.

What LQI should I aim for on outdoor sensors?

As a rule of thumb, aim for an LQI above ~70 for stable performance. If readings fluctuate or drop, try moving the nearest router a bit closer or higher and recheck.

Which firmware should I use for Sonoff USB dongles as routers?

For CC1352P2/CC2652-based dongles, many people use the CC1352P2_CC2652P_launchpad_router firmware from the Z-Stack releases. Always confirm the exact model of your dongle and follow the firmware notes for that device.

My Third Reality sensor only shows humidity. How do I get soil moisture?

Update the device with an OTA firmware upgrade in Zigbee2MQTT. After the update completes and the sensor wakes, the Soil moisture attribute should appear.

Are lithium AA batteries worth it for outdoor sensors?

Yes. Lithium cells handle temperature swings better than basic alkaline batteries and tend to last longer in outdoor devices.

How long until devices start using a new router?

It can take hours for a mesh to settle. You can speed it up by power cycling the end device or briefly rebooting the coordinator, then rechecking routes.

This post is licensed under CC BY-NC-SA 4.0 by the author.