Table of Contents

Advanced Config

Available on software v1.2.0 and higher

Introduction

Some parts of the Wardriver cannot be configured using the web interface and must be configured using a file stored on the SD card. This can also be used to set up a large number of Wardrivers identically in a quick way.

Getting Started

The configuration file must be called cfg.txt and must exist at the root of the SD card within your Wardriver. This means it cannot be inside any folders. It is recommended to leave a blank line at the end of the file.

This file contains a list of different configuration options and values, one per line. The name of the option is followed by the value with an equals sign between them. For example, the following line would set “test_value” to “123” and set “example2” to “exampleValue”:

test_value=123
example2=exampleValue

Valid Options

This section will describe which options are valid and what each option does. This section is in no particular order.

gps_baud_rate

Changes the baud rate which the Wardriver talks to the GPS module. If your GPS is working correctly, this should not be changed. Generally should only be changed if you use a GPS module which was not recommended by the project.

Default: 9600

Valid: Integer / any whole number. Recommended 9600 - 115200.

This should match whatever your GPS module datasheet states should be used, and should be numeric (eg, numbers only). Example:

gps_baud_rate=9600

rotate_display

Flips the display by 180 degrees (eg, makes it upside-down).

NOTE: Some messages early in the boot process will be shown using the standard (not flipped) rotation. This option was implemented but did not work on releases prior to 1.2.0b5.

Default: no

Valid: yes/no

rotate_display=no

block_resets

Disables the factory reset method (remove the power supply during boot when it states “Power cycle now to factory reset”).

This can prevent your device from being accidentally reset, such as in situations where you power the device with an unstable power supply.

Default: no

Valid: yes/no

block_resets=no

block_reconfigure

Disables the “first time setup” functionality where the Wardriver forces you to configure WiFi networks and basic configuration.

If you enable this on an unconfigured Wardriver, it will boot straight into wardriving mode and begin capturing data. This means you are unable to reconfigure the WiFi networks on the device using the web interface.

Default: no

Valid: yes/no

block_reconfigure=no

web_timeout

The number of milliseconds the web interface should be active for before starting wardriving mode. Each page loaded on the web interface will reset this back to the amount defined here.

Increase this if you notice the Wardriver switches to wardriving mode too quickly before you are able to connect and download data. Lower this if you want your device to start collecting data quicker on each boot.

Default: 60000

Valid: Integer / any whole number. Recommended 30000 - 180000

Remember this is in milliseconds, so the default 60000 is 60 seconds.

web_timeout=60000

gps_allow_stale_time

How many milliseconds the most recent valid GPS data should be used for upon losing a GPS fix, this location is considered “stale” because it is valid but outdated. Eg, when entering a tunnel your GPS may be lost and then the old GPS location will be used for this amount of time “sticking” you to your old location for a short while.

Cell Tower Positioning (GSM location) will begin attempting to get your location once half of this time has elapsed. As an example, if this is set to 60 seconds, location triangulation will start after 30 seconds of losing GPS. For the first 30 seconds, your old (stale) location will be used, and afterwards your triangulated location (less accurate) will be used instead.

The “accuracy” part of your GPS data will be increased to tell Wigle that the location is not as accurate as a real fix. About 10 metres of inprecision will be added for each second this feature is used. This means after 1 minute of using this, Wigle will be informed that your actual location is +/- 600 metres of the provided (stale) location. This compensates for the fact you may be traveling despite your provided location not changing.

You may wish to increase this if you often lose GPS and cannot use GSM triangulation however stale GPS data is not very useful to Wigle, especially when you are traveling. The default is a good balance between performance and accuracy.

Default: 60000

Valid: Integer / any whole number. Recommended 60000 - 120000

Remember this is in milliseconds, so the default 60000 is 60 seconds.

gps_allow_stale_time=60000

enforce_checksums

Whether the SHA256 checksum of an OTA update binary should be checked in a strict way, prevening the Wardriver from installing any non-verified updates.

This will prevent your device from installing anything aside from official wardriver.uk binaries using the OTA function. This also requires a working internet connection during the install.

Disabling this may be a security risk because people who are able to access your Wardriver web interface can install any software they like, including malicious software. This should not be disabled if you connect your device to untrusted networks.

Default: yes

Valid: yes/no

enforce_checksums=yes

NOTE: This feature contained a bug in v1.2.0b1 which prevents any OTA update from working when this is enabled. This feature was disabled in v1.2.0b2 regardless of your chosen configuration. From 1.2.0b3 onwards, it works as documented here.

con_ssid & con_psk

con_ssid and con_psk can be used to define the SSID and password of a WiFi network to connect to. This is not recommended due to how easy it would be for someone else to remove the SD card from your Wardriver and retrieve this configuration.

This configuration overrides whatever you configure in the web interface. For that reason, this is best used in conjunction with block_reconfigure=yes to prevent confusion.

Default: No network, or the network defined on the web interface

Valid: Any string

con_ssid=mynetwork
con_psk=mySecretPassword!

fb_ssid & fb_psk

fb_ssid and fb_psk can be used to define the SSID and password of a fallback WiFi network to create on boot if no network is available to connect to. Do not re-use passwords here since it would be easy for someone to remove the SD card from your Wardriver to read this password.

This configuration overrides whatever you configure in the web interface. For that reason, this is best used in conjunction with block_reconfigure=yes to prevent confusion.

Default: No network, or the network defined on the web interface

Valid: Any string

fb_ssid=wardriver
fb_psk=passwordForWardriver!

sb_bw16

Whether “Side B” is using a BW16 5GHz module instead of a SIM800L. Future versions may cache this option so you should set this to “no” if you stop using the BW16 and want to return to the SIM800L (simply removing the line won't change the value back).

Default: no

Valid: yes/no

sb_bw16=no

nets_over_uart

Whether discovered networks should also be logged over UART on “Side A” in addition to the SD card. This may slightly slow down scanning, but is useful if you want to log networks directly to a computer.

Default: no

Valid: yes/no

nets_over_uart=no

ota_hostname

Hostname to connect to for OTA update checks. Should not be changed unless debugging against a non-production OTA endpoint.

Default: ota.wardriver.uk

Valid: Any string

ota_hostname=ota.wardriver.uk

force_lat & force_lon

force_lat & force_lon can be used to override the latitude and longitude coordinates returned by the GPS module. This is only useful if your wardriver never moves. A value of 0 (the default) for either lat or lon disables the feature. This sets the GPS accuracy field to 1 meter (high accuracy).

Default: 0 (for both lat and lon)

Valid: Any floating point integer

Example

force_lat=39.10639787653908
force_lon=-76.7731454884336