Skip to content

PILS Documentation

POLOCALC Inertial & Drone Loading System

Welcome to PILS, a Python library for loading, processing, and analyzing drone flight data with integrated sensor fusion capabilities.

  • Getting Started


    Install PILS and run your first flight analysis in under 5 minutes

    Quick Start

  • API Reference


    Complete documentation for all classes, methods, and data types

    API Docs

  • User Guide


    User Guide for PILS

    User Guide

  • Development


    Architecture, testing, and contribution guidelines

    Development


What is PILS?

PILS is designed for drone-based geophysical surveys, providing:

  • Multi-platform support: DJI, ArduPilot (BlackSquare), and Litchi
  • Sensor integration: GPS, IMU, ADC, Camera, Inclinometer
  • Time synchronization: Align data from multiple sources
  • PPK processing: Post-Processed Kinematic analysis with version control
  • Polars-native: High-performance DataFrames throughout

Quick Example

from pils.loader.path import PathLoader
from pils.flight import Flight

# Load a flight
loader = PathLoader(base_path="/path/to/campaigns")
flight_info = loader.load_single_flight(flight_id="flight_20251208_1506")

# Create flight container
flight = Flight(flight_info)
flight.add_drone_data()
flight.add_sensor_data(['gps', 'imu'])

# Access data
gps_df = flight['gps'].data
print(gps_df.head())

Key Features

Feature Description
Polars DataFrames All data returned as high-performance Polars DataFrames
Type Safety Full type hints on all public APIs
HDF5 Export Persistent storage with compression
PPK Versioning Track and compare multiple PPK solutions
Lazy Loading Load only what you need
TDD Tested 283+ tests with 63% coverage

Supported Platforms

Drone Platforms

  • DJI: Phantom, Mavic, Matrice series (CSV + DAT formats)
  • ArduPilot: BlackSquare and compatible (BIN logs)
  • Litchi: Mission planner CSV exports

Sensors

  • GPS: u-blox, NMEA compatible
  • IMU: MPU9250, accelerometer/gyroscope/magnetometer/barometer
  • ADC: ADS1256, 4-channel voltage measurement
  • Camera: Video and image sequence
  • Inclinometer: Kernel-100, IMX-5

Project Status

Production Ready

PILS v1.0 is stable and production-ready with comprehensive test coverage.

Metric Value
Python Version 3.10+
License MIT