SD Card Configuration

Automatically load Wi-Fi and WiGLE settings from SD card

On this page

Load Wi-Fi credentials and WiGLE settings from config.cfg in the root of your SD card: create the file, then load it with Settings → WiGLE → Load Config from SD or the loadconfig CLI command and confirm the settings in the popup/output.

Configuration File Format

Create config.cfg in the root directory of your SD card (/mnt/ghostesp/config.cfg):

#-------------
#-----WIFI----
#-------------
SSID=YourNetworkName
PASSKEY=YourWiFiPassword
AutoReconnect=true

#------------
#------Wigle-
#------------
# Encoded for Use token from Wigle.net/account
# Auto Upload Values = true/false
# Donate values = true/false (true preferred)
EncodedForUseToken=YourBase64EncodedToken
AutoUpload=true
Donate=true

Configuration Fields

FieldRequiredDescription
SSIDOptionalWi-Fi network name to connect to
PASSKEYOptionalWi-Fi password
EncodedForUseTokenOptionalWiGLE “Encoded for Use” token from wigle.net/account
AutoUploadOptionalEnable automatic upload when Wi-Fi connects (true/false)
DonateOptionalShare wardriving data with WiGLE (true/false, recommended: true)
AutoReconnectOptionalAutomatically reconnect to Wi-Fi when the connection drops (true/false)

Notes

  • All fields are optional - only include what you want to configure
  • Lines starting with # are comments and ignored
  • Blank lines are ignored
  • Field names are case-insensitive (SSID = ssid = Ssid)
  • Boolean fields (AutoUpload, Donate, AutoReconnect) accept true, on, or 1; any other value is treated as false

Getting Your WiGLE Token

See WiGLE Upload for how to obtain the “Encoded for Use” token from wigle.net/account or the legacy APIName:APIToken credentials.

When read from config.cfg, EncodedForUseToken accepts either form and detects it automatically:

  • No colon: Treated as pre-encoded token (used directly)
  • With colon: Treated as APIName:APIToken (base64 encoded automatically)

Loading Configuration

Via GUI (Display Builds)

  1. Insert SD card with config.cfg in root directory
  2. Navigate to Settings → WiGLE
  3. Select “Load Config from SD”
  4. Review the confirmation popup showing loaded settings:
    • Wi-Fi SSID (if configured)
    • WiGLE token status (set/not set)
    • AutoUpload status
    • Donate status

Via CLI

loadconfig

Example Output:

Loading config from SD card...
  WiFi SSID: MyHomeNetwork
  Wigle token: Set
  AutoUpload: true
  Donate: true
Configuration loaded successfully

How it works

On JIT-mount boards the SD card is mounted just long enough to read config.cfg, then unmounted again. See Storage Layout for how mounting works across boards.

Settings Storage

All settings from config.cfg are saved to Non-Volatile Storage (NVS), so they persist across reboots even if the SD card is removed.

Use Cases

Quick Device Setup

Set up multiple devices quickly by copying the same config.cfg to each SD card.

Field Deployment

Pre-configure devices before deployment - no need to connect to CLI or navigate menus.

Token Updates

Easily update WiGLE credentials across multiple devices by updating config.cfg.

Backup Configuration

Keep a backup config.cfg with your preferred settings for easy restoration.

Troubleshooting

“SD Mount Failed”

  • Ensure SD card is properly inserted
  • Check that SD card is formatted (FAT32 recommended)
  • Verify SD card is not corrupted

“Config File Not Found”

  • Verify file is named exactly config.cfg (case-sensitive)
  • Ensure file is in the root directory of SD card, not in a subfolder
  • Check that file path is /mnt/ghostesp/config.cfg

“Failed to Parse Config”

  • Check file format matches the example above
  • Ensure no invalid characters in values
  • Verify field names are spelled correctly

Settings Not Applying

  • Check NVS storage is not full (run settings list to verify CLI access)
  • Verify values are valid (e.g., true/false for boolean fields)
  • Try loading config again

Example Configurations

Minimal Wi-Fi Only

SSID=MyNetwork
PASSKEY=MyPassword123

WiGLE Only

EncodedForUseToken=QUlEMTIzNDU2Nzg5MDphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eg==
AutoUpload=true
Donate=true

Complete Configuration

#-------------
#-----WIFI----
#-------------
SSID=WarDriveNet
PASSKEY=SecurePassword456!
AutoReconnect=true

#------------
#------Wigle-
#------------
EncodedForUseToken=QUlEMTIzNDU2Nzg5MDphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eg==
AutoUpload=true
Donate=true

Legacy API Format

# Using legacy APIName:APIToken format
EncodedForUseToken=AID0123456789:abcdefghijklmnopqrstuvwxyz123456
AutoUpload=false
Donate=true

Security Considerations

  • Config file contains sensitive information (Wi-Fi password, API tokens)
  • Keep SD card secure when not in device
  • Consider encrypting sensitive values if sharing config files
  • Delete config.cfg after loading if you’re concerned about physical access
  • Remember: Settings persist in NVS after loading, so config.cfg can be removed
CommandDescription
loadconfigLoad settings from config.cfg on SD card
wigle showDisplay current WiGLE settings
wifistatusDisplay current Wi-Fi connection and saved SSID status
settings listList all available settings