Why We Can Navigate Cities but Not Buildings?
A few months ago, I stumbled upon a problem that seemed deceptively simple.
Why We Can Navigate Cities but Not Buildings?
A few months ago, I stumbled upon a problem that seemed deceptively simple.
Indoor navigation.
At first, I assumed it was already solved. After all, we can navigate across entire cities with incredible precision. Open Google Maps, enter a destination, and within seconds you’re being guided through roads, intersections, highways, and traffic conditions in real time.
Surely navigating inside a building should be easier.
A building is much smaller than a city.
As it turns out, that assumption was completely wrong.
What started as a casual exploration turned into a three-month deep dive into indoor positioning systems. I spent time researching existing solutions, reading papers, experimenting with different approaches, and trying to understand how companies and researchers were tackling the problem.
The deeper I went, the more surprising the situation became.
Despite decades of research and advances in smartphones, sensors, wireless networking, and machine learning, indoor navigation remains far from solved.
And the reason becomes obvious once you understand where modern navigation gets its location data from.

The Problem Starts With GPS
Most navigation systems today rely on GPS.
It’s one of those technologies we rarely stop to appreciate. Your phone receives signals from multiple satellites orbiting thousands of kilometers above the Earth and uses them to estimate your position. Outdoors, the results are remarkably accurate. We have become so accustomed to GPS working that we hardly think about it anymore.
The moment you step indoors, however, things begin to break down.
Walls, floors, steel structures, elevators, and countless other obstacles interfere with satellite signals. GPS may still be able to tell that you’re inside a particular airport, hospital, office building, or shopping mall, but it usually cannot tell which room you’re in, which corridor you’re standing in, or even which floor you’re on.
For indoor navigation, that level of accuracy is practically useless.
Knowing that someone is inside a building is not the same as knowing where they are inside the building.
And that is where the challenge begins.
Computer Vision: Teaching Phones to See
One of the first alternatives I explored was computer vision.
The idea is straightforward. If a smartphone can see its surroundings through the camera, perhaps it can identify landmarks and determine its position based on what it sees. This forms the foundation of many AR-based navigation systems.
In controlled environments, the results can be surprisingly impressive. A phone can recognize visual features, compare them against a known map of the environment, and continuously estimate its location as the user moves.
From a purely technical perspective, it’s an elegant solution.
The challenge is usability.
Most people don’t want to walk through an airport, hospital, or shopping mall holding their phone in front of them and continuously scanning their surroundings. Camera-based navigation also depends on lighting conditions, visibility, battery life, and privacy considerations.
The technology works.
The experience is often less convincing.
The Industry’s Solution: Add Infrastructure
As I continued researching the space, I noticed that many commercial indoor navigation systems solve the problem by modifying the environment itself.
One of the most common approaches uses Bluetooth Low Energy (BLE) beacons. These are small devices installed throughout a building that continuously broadcast signals. Smartphones listen to those signals and estimate their location based on signal strength and proximity.
It’s a practical solution and one that has been deployed successfully in airports, malls, museums, and large enterprise campuses.
However, it comes with a trade-off.
Every beacon needs to be purchased, installed, maintained, and eventually replaced. While that may be reasonable for a single building, the cost and operational overhead become much more significant when the goal is to support large numbers of locations.
I also came across systems that rely on QR codes. These work by placing QR codes at known locations throughout a building. Users scan a code, the system establishes their position, and navigation begins from there.
It’s simple, inexpensive, and easy to deploy.
But it isn’t really continuous navigation. The system only knows where the user is when they actively scan a code. If they forget to scan one, the positioning process breaks down.
It feels more like a checkpoint system than a true positioning system.
Could Software Alone Solve It?
The more I looked at hardware-heavy solutions, the more interested I became in a different question.
Could indoor navigation be solved entirely through software?
Modern smartphones already contain a remarkable collection of sensors. They can detect nearby Wi-Fi networks, measure movement, estimate orientation, and continuously gather information about how a user is moving through space.
The data already exists.
The question was whether it could be used effectively.
That led me to Wi-Fi fingerprinting.
The Promise of Wi-Fi Fingerprinting
The concept is surprisingly elegant.
Every location inside a building has a unique pattern of Wi-Fi signals coming from nearby access points. If enough measurements are collected throughout the building, those signal patterns can be stored in a database.
Later, when a user’s phone performs a Wi-Fi scan, the system compares the observed signal pattern against the stored fingerprints and estimates the user’s location.
At first glance, it feels like the perfect solution.
The infrastructure already exists.
No additional hardware is required.
Most smartphones can perform Wi-Fi scans without any difficulty.
The reality, however, is far messier.
The Problem With Wi-Fi Signals
Wi-Fi signals are surprisingly unstable.
The same location can produce different measurements throughout the day. People moving through the environment affect signals. Doors opening and closing affect signals. Furniture changes, network upgrades, interference from nearby devices, and countless other variables influence the measurements being collected.
Some access points produce relatively stable readings while others fluctuate significantly.
As a result, fingerprints that appear reliable during testing can become noticeably less reliable over time.
Collecting fingerprints is not the difficult part.
Maintaining a system that continues to work as the environment evolves is where the real challenge lies.
Enter the IMU
To compensate for the limitations of Wi-Fi fingerprinting, I started exploring another source of information available on nearly every smartphone.
The IMU, or Inertial Measurement Unit.
This typically includes an accelerometer, gyroscope, and magnetometer. Together, these sensors provide information about movement, direction, and orientation.
The idea was simple.
If I know where someone starts, perhaps I can continuously estimate where they move afterward.
Every detected step updates their position. Every change in direction updates their path. Over time, the system can build an estimate of the user’s movement through the building.
This approach, commonly known as dead reckoning, looked extremely promising on paper.
Then I encountered drift.
The Drift Problem
The challenge with dead reckoning is that even tiny measurement errors accumulate over time.
A small error in direction estimation may seem insignificant initially. After a few meters, the difference is barely noticeable. After dozens or hundreds of meters, however, the accumulated error becomes substantial.
Eventually, the estimated position begins drifting away from reality.
This phenomenon is one of the biggest challenges facing IMU-based positioning systems.
The longer the system operates without correction, the larger the error becomes.
Which means IMU sensors alone cannot reliably solve indoor navigation either.
Combining Both Approaches
At this point, the obvious solution seemed to be combining Wi-Fi fingerprinting with IMU sensors.
Wi-Fi could provide periodic location corrections while IMU sensors could continuously track movement between those corrections. One system would compensate for the weaknesses of the other.
In theory, it sounded exactly like the answer I had been looking for.
In practice, things were much more complicated.
Wi-Fi measurements are noisy. Sensor readings are noisy. Buildings change over time. Different smartphones behave differently. Human movement is unpredictable.
Combining two imperfect systems does not automatically create a perfect one.
It simply creates another layer of engineering complexity.
Why Indoor Navigation Is Still Unsolved
When I began exploring indoor navigation, I assumed there was a mature solution hiding somewhere that I simply hadn’t discovered yet.
Three months later, I came away with a very different conclusion.
The industry doesn’t suffer from a lack of solutions.
It suffers from a lack of perfect solutions.
GPS lacks indoor precision. Computer vision requires active camera usage. BLE beacons require infrastructure. QR codes require user interaction. Wi-Fi fingerprinting requires continuous maintenance. IMU systems drift.
Every approach solves one problem while introducing another.
And perhaps that’s what makes indoor navigation so fascinating.
It’s not a single problem waiting for a breakthrough. It’s dozens of smaller problems layered on top of one another, each introducing its own set of trade-offs and constraints.
Despite carrying powerful computers in our pockets and living in a world filled with sensors, we still struggle to answer a question that sounds incredibly simple:
Where exactly am I inside this building?
After spending three months exploring the problem, I have far more respect for that question than I did when I started.
메타데이터
- post_id
- 517d5b5edd5f
- slug
- why-we-can-navigate-cities-but-not-buildings-517d5b5edd5f
- url
- https://medium.com/@studiousmanav/why-we-can-navigate-cities-but-not-buildings-517d5b5edd5f
- canonical_url
- https://medium.com/@studiousmanav/why-we-can-navigate-cities-but-not-buildings-517d5b5edd5f
- author_url
- https://medium.com/@studiousmanav
- status
- ok
- fetched_at
- 2026-06-09 15:37:30