THUGS(red) Wardrive
Sign in Join

Wardriving with an iPhone

Start with the disappointing part: there is no WiGLE app for iOS, and a stock iPhone cannot wardrive WiFi. That is not an oversight anyone can patch — Apple does not expose the radio. What an iPhone can do is run the rest of the rig, and this guide is about doing that well rather than chasing an app that does not exist.

Why not

An app on iOS can read the network you are connected to and, with a special entitlement, join one. It cannot ask "what access points can you hear right now?" — the scan API is private, and an app that used it would not pass review. WiGLE's own tooling is Android, Kismet and the desktop world; the project has never shipped an iOS scanner.

There was one, briefly. WiFi-Where reached the App Store in early 2010 and Apple pulled it within weeks; it lived on in the jailbreak world and then died there too. Anything on the App Store today that markets itself as a wardriving app is doing something else — showing your own connection, scanning Bluetooth, or reading a public database it did not collect. Judge such an app by whether it can produce a file with other people's BSSIDs and coordinates in it. Most cannot.

What actually works

The scanning has to happen on hardware that will let you scan. The iPhone then does everything else, and it is genuinely good at that.

1. An ESP32 rig with the iPhone as its uplink — best value

An ESP32 and a GPS module cost less than a takeaway, sit in the car window, and post observations to this site's live API while you drive. All the iPhone has to do is share its connection:

Settings → Personal Hotspot → on
Maximize Compatibility → on      (the ESP32 is 2.4 GHz only)

Put that hotspot's name and password in the sketch, and networks appear on the map while you are still moving. Full build, wiring and code: build an ESP32 wardriving rig. Leave "Maximize Compatibility" off and the ESP32 will simply never see the hotspot, which is a confusing way to lose an afternoon.

2. A WiFi Pineapple, driven from Safari

A Pineapple or Pineapple Pager does its own scanning and has a web interface, so an iPhone on its management network is a perfectly good screen for it — start a recon scan, watch it, download the results, upload them here. See Hak5 WiFi Pineapple and Pager.

3. Kismet on a Pi or a laptop, phone as terminal

Kismet hears the most of any option here. On a Raspberry Pi with a USB adapter and a GPS puck it is a self-contained box: reach its web UI over the hotspot from Safari, or SSH in from a terminal app, and pull the netxml off at the end of the drive. See wardriving with Kismet.

4. Bluetooth, if you want the iPhone itself to collect something

iOS does expose Bluetooth LE scanning, so a BLE logger app plus a GPS track is the one thing an iPhone can genuinely collect on its own. It is not what this archive stores — we hold 802.11 access points — so treat it as a different hobby rather than a substitute.

Uploading from an iPhone

Whatever collected the data, the phone can file it. Save the export to iCloud Drive or on-device Files (AirDrop from a laptop, download from the Pineapple's web UI, or a Files app over SMB), then open the uploader in Safari and choose Browse in the file picker. Kismet netxml, WiGLE CSV and ESP32 JSON are all read, gzipped or not, and the format is detected from the contents — so it does not matter that iOS renamed something to .txt.

If your rig posts to the API instead, nothing needs uploading at all; a token from the API tokens page and the do it yourself via API guide covers that path.

Using the iPhone as the GPS

An iPhone's GNSS is better than most cheap modules, and a rig that trusts it saves you a part. Two ways round:

If you go the second way, give the rig some notion of time — the ingest API accepts unix seconds or milliseconds, and falls back to the server's clock when a record has no timestamp at all.

What to expect

Stock iPhone alone
No WiFi wardriving. Not a settings problem
iPhone + ESP32
Live map updates while driving, about the price of lunch
iPhone + Pineapple / Pi
The best data; more to carry and to configure
Android phone
Works on its own — WiGLE on Android

Plenty of people here drive with an iPhone in the mount and an ESP32 stuck to the windscreen. The phone was never the interesting part of the rig.

Found an iOS app that really does export other people's BSSIDs with coordinates? Post it in the forum — this page should be corrected if that ever changes.