Project presentation
TritonNav · Google Slides
View presentationA campus-aware pedestrian navigation prototype, connecting destination research, interface design, and open-source routing—and testing the result on a real iPhone.
Real iPhone captures · Prototype route previews · Displayed ETAs are interface state, not additional field measurements.
23
Completed iPhone trials with numeric timing pairs
0.96 min
Primary measured-only timing sample
2
Recorded checks, not a timing-sample failure rate
40
Across 41 keyed workbook records
Curated research navigator
Evidence-grounded answers from this study and its paper. Curated, not generated; no live AI or personalized retrieval.
01 / The problem
On a campus, a room code can be more useful than a building name. A college can mean an entire neighborhood. And the center of a building is rarely the place a person should walk to.
TritonNav explores a narrower, concrete problem: resolve familiar UC San Diego destinations and display genuine pedestrian routes in a mobile-first interface. It is not complete indoor navigation, and it does not certify accessible paths.
How do recorded walking durations compare with Valhalla ETAs in usable physical-iPhone trials?
Which routing, destination, and rendering problems appear in the field workbook?
Do approved corrections or modeled scenarios change the descriptive timing result?
02 / Design response
The interface brings destination search, a visible starting point, route geometry, and a destination/ETA sheet together over the map. The supplied iPhone captures show this route-preview state, not a claim about every destination or current deployment behavior.
The product separates three responsibilities: campus destination intelligence, pedestrian route computation, and map rendering. That boundary matters: a routing engine can compute a plausible path to the wrong place.
Resolve a campus room, building, college, housing location, entrance, or place.
Prefer an entrance coordinate over a building centroid where campus data provides one.
Send origin and destination coordinates to the internal walking-route adapter.
Draw the normalized GeoJSON LineString with MapLibre and display the returned route information.
03 / System architecture
Next.js/React provides the mobile web interface. Capacitor wraps the hosted application in an iOS shell. MapLibre GL JS uses OpenFreeMap for the basemap and renders the markers and returned route.
The local evaluation used Docker-hosted Valhalla with routing tiles built from a UCSD-area OpenStreetMap PBF. The solid path below is the verified local architecture; the dashed production path remains planned. A deployed web application cannot reach a routing service on the developer’s localhost.
The campus data layer translates familiar destination labels into routable coordinates. GIS and entrance provenance are provisional; resolving a label is not proof that its placement is correct.
Entrance coordinates are preferred where available, rather than routing blindly to a centroid. Field errors show why these anchors still need verification.
POST /api/routes/walking reads the server-side VALHALLA_BASE_URL, calls Valhalla, validates the response, and returns normalized route data. The browser does not receive the routing-service address or credentials.
MapLibre renders OpenFreeMap tiles and GeoJSON LineString routes. Capacitor provides the iPhone container and native permission configuration while preserving the web codebase; this is not a React Native implementation.

04 / Evidence audit
The source workbook contains 41 keyed records and 40 unique trial IDs: Trial ID 25 occurs twice. Of the keyed records, 39 are marked complete and two incomplete. One additional completed row has no trial ID and is excluded from keyed counts.
The primary timing sample includes only 23 completed physical-iPhone trials with numeric original actual durations and Valhalla ETAs. Untimed interface checks and a Mac check are not physical walking observations. The strict 17-trial subset requires entered and timestamp-derived durations to agree within 0.5 minutes.
Signed error is actual time minus Valhalla ETA; negative values mean the recorded walk was faster. All timing results are descriptive, not population-level validation.
05 / Measured results
In the 23-trial primary sample, recorded walking time averaged 5.70 minutes, compared with 6.48 minutes estimated by Valhalla. Mean signed error was −0.78 minutes; mean absolute error was 0.96 minutes.
The stricter timestamp-consistent subset produced a similar descriptive result. This does not establish calibrated accuracy across campus users or repeatability for individual routes.


06 / Field issues
Eight records report at least one wrong turn, four contain narrative issues, two record routing failures, and two describe incorrect destination placement. These categories overlap; adding them would not produce a unique count of affected trials.
No route was returned; the notes report a college diagram. Current resolver diagnostics cannot resolve both historical endpoints.
The recorded check showed neither a route line nor a map. Historical label resolution also exposes campus-data gaps.
The destination was reportedly placed near DIB instead of the intended market.
The duplicated Trial ID 25 record reports four wrong turns, an incorrect entrance, and placement at Bonner Hall despite a completed label.
07 / Exploratory only
Trial 2’s approved ETA normalization converts a date-typed source value to 3.0 minutes. The resulting 24-record normalized set has signed error −0.75 minutes and absolute error 0.92 minutes. It remains outside the primary measured-only analysis.
Substituting timestamp-derived durations for seven conflicting entries produces signed error +0.42 minutes and absolute error 2.33 minutes. Trial 23’s entered four-minute duration conflicts with a 33-minute timestamp span; that discrepancy must be reconciled, not silently corrected.
Twelve untimed checks were filled as hypothetical scenarios using a current Valhalla ETA × 0.875, the strict sample’s median actual-to-ETA ratio. The resulting 36-record exploratory set has signed error −0.88 minutes and absolute error 0.99 minutes. Because ETA helps generate the scenario durations, these values cannot independently validate Valhalla.
08 / Limits & changes
One evaluator, mostly unique routes, coarse timing, absent numeric GPS-accuracy logging, provisional GIS/entrances, and inconsistent source units limit what this study can establish. Distance was not analyzed because source entries mixed units. No accessibility or deployment-readiness claim follows from these results.
What changed through the audit was the interpretation of success: completion labels no longer stand in for walks, measured values stay separate from corrections and models, and route-engine behavior is considered alongside destination placement. These are documented evidence and architecture decisions, not an invented before/after redesign.
The evaluation supports the feasibility of a modular open-source campus-navigation architecture. It also makes the next experiment specific.
Pre-register a compact route set and measure repeatability across people, walking speeds, and device conditions.
Validate destination coordinates, canonical entity IDs, and selected entrances against reliable UCSD data.
Capture timestamps, horizontal location accuracy, app commit, device/OS, provider metadata, and linked issue records. Separate checks from walks at collection time.
Evaluate with representative users and verified path data before making accessibility claims. Move Valhalla to a production HTTPS host before treating local routing as deployment-ready.
09 / Research artifacts
Diego Cordova · UC San Diego · September 30, 2026 · 7 pages
The system report, dataset audit, measured analysis, sensitivity checks, limitations, and references in one document.
TritonNav · Google Slides
View presentation
PDF reader availability varies by browser. Open the full document in a new tab.