/AtomGPS_wigler

Uses an ATOM M5 GPS Kit for Wigle wardriving

Primary LanguageC++

AtomGPS Wigler

Overview

AtomGPS Wigler is a wardriving tool originally created by @lozaning for use with the M5Stack Atom GPS kit.

This tool is specifically designed for Wi-Fi network scanning and includes LED status indicators. It offers features such as dynamic channel hopping and deduplication. Writes CSV files compatible with wigle.net.

Feedback & Community

Detailed review and instructions for beginners | Thanks to kampf for the writeup:


Note

This is free, unmaintained code for use at your own risk. Many known issues exist with this legacy device.

Flashing

  • Grab the codebase:
    git clone https://github.com/lukeswitz/AtomGPS_wigler.git
    cd AtomGPS_wigler/build

Method One: Esptool.py

1. Locate the device:

  • Linux/macOS:
    ls /dev/ttyUSB*
    # or
    ls /dev/cu.*
  • Windows, check COM port in Device Manager.

2. Flash the firmware, partition and bootloader:

Note

Ensure you have the latest version of esptool.py installed from the link above, or a known warning about header fields will display when flashing.

  • Navigate to the build folder (if not already there).
  • Flash using the following command inside the build folder or by specifying file paths:

esptool.py -p [YOUR_PORT] -b 1500000 --before default_reset --after hard_reset --chip esp32 write_flash --flash_mode dio --flash_size detect --flash_freq 80m 0x1000 AtomGPS_wigler_v1_4.bootloader.bin 0x8000 AtomGPS_wigler_v1_4.partitions.bin 0x10000 AtomGPS_wigler_v1_4.bin


Method 2: Arduino IDE

1. Open the .ino file in Arduino IDE (or copy and paste it into a new sketch).

2. Add the ESP32 Boards Repo:

  • Open Arduino IDE.
  • Go to File > Preferences.
  • Add https://dl.espressif.com/dl/package_esp32_index.json to "Additional Boards Manager URLs."
  • Click OK.
  • Navigate to Tools > Board > Boards Manager.
  • Search for "esp32" and click Install for "esp32 by Espressif Systems." as shown below.

3. Add the M5Atom Library:

  • Library Manager > search for "M5Atom".
  • Click Install.

Important

Update outdated Arduino boards and libraries. Version numbers will change with time.

image image

4. Set Board: Tools > Board > esp32 > M5Atom

5. Ensure the default settings are as below:

image

6. Click Upload


Use

After flashing, the device scans for Wi-Fi networks, using LEDs to display status. Network data is saved in Wigle.net-compatible CSV files on the SD card, each with a timestamp and unique run number. For issues, refer to the main repository.

LED Indicators:

Note

  • Press and hold the button during scanning to toggle the Green LED.
  • RED blink if the SD card is missing/write error.
  • PURPLE blink while waiting for a GPS fix.
  • GREEN blink during scanning (Optional).

Caution

Wardriving may not be legal in all locations. Please check local laws and obtain proper consent where necessary.