🚀 Project Website & GitHub Repo

Quickstart: Setup & Usage (Windows & Linux)

1. Environment Setup

Windows

  1. Open a command prompt and navigate to the Python folder:
    cd Python
    
  2. Run the setup script:
    setup.bat
    
    • This will create a virtual environment (venv) and install all required dependencies from requirements.txt.

Linux

  1. Open a terminal and navigate to the Python folder:
    cd Python
    
  2. Make the setup and run scripts executable (only needed once):
    chmod +x setup.sh run.sh
    
  3. Run the setup script:
    ./setup.sh
    
    • This will create a virtual environment (venv) and install all required dependencies from requirements.txt.

2. Starting the Tools

Windows

  1. In the same command prompt, run:
    run.bat
    
  2. Select the tool you want to use:
    • [1] Map Viewer (Plot GUI)
    • [2] Database Combiner
    • [3] Exit

Linux

  1. In the same terminal, run:
    ./run.sh
    
  2. Select the tool you want to use:
    • [1] Map Viewer (Plot GUI)
    • [2] Database Combiner
    • [3] Exit

WiFi/Bluetooth Database Combiner - Quickstart Guide

Overview

The Database Combiner (start_combine_dbs.py) is a GUI tool for merging, cleaning, and repairing WiFi and Bluetooth databases from the WIFIGEOGRABBER project.

Features

Main Functions

Advanced Features

Installation

Prerequisites

pip install tkinter sqlite3

Note: tkinter is usually included in standard Python installations.

Quick Start

1. Launch Program

python Python/start_combine_dbs.py

2. Main Window

The program opens a GUI with the following sections:

Main Database (Target)

Source Databases

Options

Usage

Scenario 1: Merge Multiple Databases

  1. Click “Select” under “Main Database” and choose your main database
  2. Click “Add DB” under “Source Databases” and select one or more databases
  3. Click “🔍 Start Analysis” to preview the data
  4. Click “🚀 Merge” to start the process

Result:

Scenario 2: Clean a Single Database

  1. Select the database to clean as main database
  2. Click “🧹 Clean DB” without adding source databases
  3. Confirm the cleaning operation

Result:

Scenario 3: Repair Database Structure

  1. Select the database to repair as main database
  2. Click “🔧 Repair DB”
  3. Confirm the repair operation

Result:

Database Structure

wifi_data Table

Stores all WiFi networks with the following fields:

device_data Table

Stores all Bluetooth devices with the following fields:

Intelligent Duplicate Detection

The tool detects duplicates based on:

Movement Tracking

The tool tracks device movements:

Tips and Best Practices

  1. Always Use Backups: Keep the backup option enabled
  2. Analyze Before Merging: Use the analysis function to get an overview
  3. Large Datasets: With many databases, the process may take several minutes
  4. Regular Cleaning: Perform regular cleaning to remove duplicates
  5. Structure Updates: Use the repair function after program updates

Troubleshooting

Problem: “No valid GPS coordinates found”

Solution: The database only contains entries with latitude = 0 and longitude = 0. Ensure the Android app records GPS data.

Problem: “Backup failed”

Solution: Check write permissions in the database folder or choose a different location.

Problem: Merge takes very long

Solution: This is normal with large databases (> 10,000 entries). The log shows progress.

Understanding Log Output

In the log area, you’ll see detailed information:

File Format

The tool works with SQLite3 databases (.db files). These can be opened with any SQLite browser.

Support

For issues or questions:

  1. Check the log output in the program
  2. Verify database structure with an SQLite browser
  3. Create an issue in the GitHub repository

Further Information