Skip to content

ja51d/ardulog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

62 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Ardulog

Browser-based ArduPilot flight log analyzer. Drop a .bin / .tlog / .log, get a full diagnostic suite β€” 3D playback on real satellite terrain, AI-powered insights, FFT, PID tuning, battery analysis, PDF reports. Local β€” your log never leaves your browser.

🌐 ardulog.app


Features

Visualize

  • SUMMARY β€” log overview with frame type, duration, message counts
  • PLOT β€” searchable message tree, multi-series overlay, CSV export
  • MAP β€” 2D satellite view with altitude-colored track, mission waypoints, and geofence overlay
  • TERRAIN β€” 3D satellite map with real elevation, vehicle icon flying along the trajectory
  • 3D β€” orbit-able trajectory with airplane / quadcopter models, spinning propellers, vibration-heatmap toggle
  • COCKPIT β€” attitude indicator, HSI, altitude / airspeed tapes, RC sticks, wind compass

Analyze

  • COPILOT β€” AI flight Q&A (Google Gemini 2.5 Flash). Ask "Why was my battery sagging?" and get pilot-grade answers grounded in your log
  • FFT β€” vibration spectrum per IMU axis with peak frequency detection
  • PID TUNING β€” commanded vs actual roll / pitch / yaw overlay
  • MOTORS β€” per-motor output balance and saturation analysis
  • BATTERY β€” voltage / current / mAh consumption with sag detection
  • REVIEW β€” automated 14+ factor health assessment (incidents, EKF, GPS, vibration, etc.)

Data

  • REPORT β€” comprehensive multi-section flight report with PNG / PDF export
  • PARAMS β€” searchable parameter dump
  • INFO β€” raw log metadata

Playback

  • Synced play/pause/scrub across 3D, Terrain, Cockpit
  • Speed control 0.5Γ— β†’ 8Γ—
  • Color-banded flight timeline showing mode segments + events (failsafes, arms, landings)
  • Click any event to jump to that timestamp

Privacy

Every byte of your log is parsed in your browser via WebAssembly. No upload, no server-side storage.

  • Logs you've opened can be cached locally in IndexedDB (so they reappear on the home screen next visit) β€” purely local, never transmitted.
  • The AI Copilot sends a condensed text summary (key metrics, events, review findings) to Google's Gemini API β€” not the raw log bytes.

Tech stack

  • Vue 3 + Vite (Rolldown)
  • uPlot β€” fast 2D charts
  • Plotly β€” 3D scatter rendering
  • MapLibre GL β€” vector + raster maps with 3D terrain
  • Leaflet β€” 2D map view
  • fft.js β€” vibration spectrum analysis
  • html-to-image + jsPDF β€” report exports
  • Vercel serverless function β†’ Google Gemini 2.5 Flash for AI Copilot

Local development

git clone https://github.com/ja51d/ardulog.git
cd ardulog/web
npm install
npm run dev

To enable the AI Copilot locally, set a GEMINI_API_KEY environment variable (free key from aistudio.google.com/apikey).

Built and deployed with Vercel β†’ vercel --prod.


About me

Built by Javid (@ja51d) β€” astronautics engineer and UAV builder. Inspired by plot.ardupilot.org and the brilliant ArduPilot community.

License

See LICENSE.

About

πŸ›©οΈ Browser-based ArduPilot flight log analyzer β€” 3D satellite terrain playback, AI copilot, FFT, PID tuning, PDF reports. Local, nothing uploaded.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors