Skip to content

Wal33D/OBD-Droid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

526 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

OBD‑Droid

Full-stack Android diagnostics suite built for technicians, tuners, and enthusiasts.

OBD‑Droid turns any ELM327-compatible adapter into a professional-grade vehicle workstation. From live telemetry to AutoCheck intelligence and an AI copilot, every module is engineered to make complex diagnostics feel effortless.

TL;DR

  • Plug in any ELM327 adapter, launch the Android app, and get live data in under a minute.
  • One tap runs a full ECU scan, logs CSV/GPS telemetry, and syncs findings with your AI copilot.
  • Safety recalls, AutoCheck history, VIN decode, and report exports are all presented in-app with the same cohesive UI.

πŸš€ Why It Stands Out

  • Mission Control for Your Vehicle – Real-time dashboards, custom PIDs, HUD mode, and CSV/GPS logging.
  • Deep Diagnostics Pipeline – ECU discovery, freeze frames, emissions readiness, and health scoring in one flow.
  • VIN-Aware Intelligence – AutoCheck history with ownership, odometer, and open recalls side-by-side with NHTSA data.
  • AI Copilot – OpenAI ChatGPT delivers contextual answers using live vehicle data and prior conversations.
  • Modular Architecture – Service-driven Android app, standalone companion APIs, and reusable libraries.

β€œFrom handshake to fix recommendation, OBD‑Droid shows how far Android can stretch inside the garage.”


πŸ“Έ Product Tour

Dashboard Live vehicle overview with quick actions, health summaries, and shortcut metrics.
Live Data Customizable PID lists, chart overlays, HUD mode, and streaming CSV capture.
Fault Codes Rich DTC cards with freeze frames, remedy hints, and AI follow-ups.
Vehicle History AutoCheck report viewer with ownership timeline, odometer verification, and export actions.
Safety Recalls Segmented toggle combining public NHTSA campaigns with VIN-specific AutoCheck open recalls.
More UI moments
  • Vehicle Footer – Persistent vehicle identity footer across screens.
  • Live Data (Scrolled) – Extended PID telemetry with HUD-ready formatting.
  • Fault Code Detail – Deep dive card with freeze frame, remedy, and AI assistance.
  • Full Vehicle Scan – ECU discovery progress and baseline snapshot library.
  • Emissions Readiness – I/M monitors with pass/fail flags for inspection prep.
  • VIN Decoder – VIN decode powering downstream features.
  • Vehicle History Export – Share-ready PDF/JSON export drawer.

πŸŽ›οΈ Feature Gallery

Emissions Readiness Full Vehicle Scan ECU Modules Live Data Telemetry
Inspection-ready I/M monitor dashboard showing pass/fail status at a glance. Step-by-step ECU discovery with progress tracking and baseline snapshot creation. Comprehensive ECU list with addressing, protocol metadata, and change tracking. Live powertrain data fused with GPS & motion telemetry from the device sensors.
Fault Codes Start Fault Codes Detected Fault Code Detail
Fault code launcher prompting users to initiate a fresh scan. Detected DTC list with severity badges and quick actions. Drill-down view showing summaries, remedies, and export options.
Vehicle History Vehicle History Timeline Vehicle History Details Vehicle History Export
AutoCheck overview with vehicle score, alerts, and at-a-glance stats. Ownership timeline and odometer verification pulled from AutoCheck. Detailed campaign list, title history, and AutoCheck report drill-down. One-tap export drawer for PDF/JSON sharing of AutoCheck vehicle history.
VIN Decoder Vehicle Footer
VIN decode powering downstream features like recalls and AutoCheck. Signature vehicle footer with quick stats, connection state, and VIN context.

🧩 Feature Deep Dive

Real-time Telemetry

  • Adaptive polling with automatic ISO/KWP/CAN protocol negotiation.
  • Multiple view modes (list, chart, dashboard, HUD) backed by shared ProcessVariables.
  • CSV logger service stitches OBD values with GPS, accelerometer, and metadata for post-drive analysis.
    Live Data with Telemetry
    Live data + GPS/motion telemetry captured from device sensors alongside vehicle PIDs.

Diagnostics & Scanning

  • Full-vehicle scan orchestrator maps ECUs, persistent DTCs, pending codes, and module metadata.
  • Baseline scan library compares historic snapshots to spot new modules or faults.
  • Emissions center mirrors inspection readiness (I/M monitors, catalyst status, Oβ‚‚ sensors).
Full vehicle scan workflow

Intelligent Assistance

  • CoPilot (OpenAI ChatGPT) pulls context from active DTCs, vehicle metadata, and prior chats.
  • Automatic suggested next steps and part lookup hints based on failure patterns.
  • Conversation history cached per vehicle for continuity.

Vehicle Intelligence

  • VIN decode via VINDecoder (NHTSA) with manufacturer/trim heuristics.
  • AutoCheck companion API delivers premium vehicle history, open recalls, ownership, and odometer insights.
  • PDF export pipeline for shop handoffs, customer reports, and archive records.
  • Hybrid recall center blending NHTSA campaigns with AutoCheck VIN-specific items.

Fault Code Workflow

  • Launch screen guides the user to initiate a fresh scan before clearing codes.
    Fault Codes Start
  • Detected DTC list surfaces severity badges, quick actions, and export shortcuts.
    Fault Codes Detected
  • Detail cards provide summaries, consequences, remedies, and OEM links in-app.
    Fault Code Detail

🧱 Architecture at a Glance

            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
Adapter ⇨ CommService ⇨ ObdProt ⇨ ObdDataService ─┬─► Live Data / Gauges
            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                           β”œβ”€β–Ί Fault Codes / Emissions
                                                  β”‚   (freeze frames, readiness)
                                                  β”œβ”€β–Ί ScanOrchestrator β†’ Baseline Library
                                                  β”œβ”€β–Ί CsvLoggingService (GPS + sensors)
                                                  └─► Feature Modules (CoPilot, Recalls, AutoCheck)

Vehicle Data Service ⇨ AutoCheckService ⇨ VehicleHistoryActivity / RecallActivity
NHTSA API            ⇨ RecallLookupAndroid ⇨ RecallActivity (All Recalls tab)
Claude API           ⇨ CoPilotService ⇨ CoPilotActivity (contextual AI answers)
  • Separation of Concerns – OBD stack lives in its own package, while UI features orchestrate data via managers/services.
  • Request Queues & Caching – Vehicle data service caches VIN lookups; in-app caching enables instant revisit offline.
  • Configurable Telemetry – Logging and AI features respond to user settings stored in SharedPreferences.

πŸ”§ Tech Stack

Layer Details
Language Java 17 (Android), TypeScript/Node (AutoCheck companion)
UI AppCompat + Material Components, RecyclerView, custom cards, HUD mode
Architecture Service + manager pattern, feature-scoped packages, background workers
Data SharedPreferences caching, on-disk CSV, JSON interop for AutoCheck reports
Integrations NHTSA APIs, Experian AutoCheck (Playwright scrape), OpenAI ChatGPT
Tooling Gradle, Android Studio Giraffe+, Lint, unit tests, GitHub Actions (companion API)
Submodules DTC Database Β· NHTSA Recall Lookup Β· Automotive Logo Library

πŸ“¦ Project Map

OBD-Droid/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ src/java/com/obddroid/
β”‚   β”‚   β”œβ”€β”€ features/          # Feature modules (copilot, emissions, recalls, etc.)
β”‚   β”‚   β”œβ”€β”€ obd/               # Core OBD protocol implementation
β”‚   β”‚   β”œβ”€β”€ scan/              # ECU discovery & orchestration
β”‚   β”‚   β”œβ”€β”€ telemetry/         # CSV logging, GPS stitching
β”‚   β”‚   β”œβ”€β”€ services/          # Foreground/background Android services
β”‚   β”‚   β”œβ”€β”€ ui/activities/     # Primary screens
β”‚   β”‚   └── utils/             # Helpers, VIN decoding, state managers
β”œβ”€β”€ modules/                   # External libraries (submodules)
β”‚   β”œβ”€β”€ dtc-database/          # Offline DTC catalog
β”‚   β”œβ”€β”€ nhtsa-recall-lookup/   # NHTSA API bindings
β”‚   └── automotive-logo-library/
β”œβ”€β”€ docs/                      # Product notes, screenshots
└── README.md

βš™οΈ Getting Started

Prerequisites

  • Android Studio Giraffe (or newer) with JDK 17.
  • Android SDK targets API 21 – 34 (Android 5.0 – 14).
  • Physical Android device (recommended) with Bluetooth or USB host support.
  • ELM327-compatible OBD-II adapter (Bluetooth Classic, BLE serial, USB, or Wi-Fi).

Clone & Bootstrap

git clone https://github.com/Wal33D/OBD-Droid.git
cd OBD-Droid

# Pull bundled libraries (DTC database, logos, NHTSA bindings)
git submodule update --init --recursive

# Build & install debug variant
./gradlew :app:assembleDebug
./gradlew :app:installDebug

# Launch on device
adb shell am start -n com.obddroid/.ui.activities.MainActivity

Note: The Vehicle History feature requires a private AutoCheck backend that you host yourself. This is not included in the open-source release. If you have access to AutoCheck data through your own dealership or subscription, you can stand up your own backend and configure the endpoint in local.properties. All other features (live data, fault codes, emissions, recalls via NHTSA, AI copilot) work without it.


πŸ§ͺ Developer Workflow

Task Command
Clean build ./gradlew clean
Compile sources ./gradlew :app:compileDebugJavaWithJavac
Unit tests ./gradlew :app:testDebugUnitTest
Lint & static analysis ./gradlew :app:lintDebug
Instrumentation tests ./gradlew :app:connectedDebugAndroidTest
Generate signed bundle ./gradlew :app:bundleRelease

Environment toggles

  • gradle.properties houses feature flags, logging verbosity, and Claude API settings.
  • app/build.gradle encapsulates flavors, signing configs, and dependency graph.

πŸ”Œ Integrations

Integration Purpose Notes
Vehicle Data Service Premium vehicle history & open recall data Private β€” not included. Requires your own AutoCheck backend. Configure endpoint and API key in local.properties.
NHTSA Recall API Campaign listings, remedy info, VIN decodes Back bone for β€œAll Recalls” tab and VIN decoder.
OpenAI ChatGPT Conversational diagnostics Context-aware responses with client-side redaction.
VIN Decoder Make/model/trim heuristics Normalizes manufacturer naming for recall lookups.

πŸ—ΊοΈ Roadmap

  • Jetpack Compose migration for telemetry dashboards.
  • BLE adapter improvements and auto-reconnect heuristics.
  • Cloud sync for baseline scans and AutoCheck reports.
  • In-app marketplace for pro data packs (TSBs, repair procedures).
  • Integrate AutoCheck open recalls alongside NHTSA campaigns.
  • Material-compliant segmented toggle for recalls UI.

🀝 Meet the Maker

Built and maintained by Waleed Judah πŸ“« aquataze@yahoo.com Β· πŸ”— LinkedIn

Seriously though β€” if you're hiring, reach out. All I do is build.

Found this useful? ⭐ the repo, share it with your community, and keep connected cars transparent.


πŸ“„ License

This project is licensed under the MIT License. See the LICENSE file for details.

About

Professional OBD-II diagnostic app for Android with live data, fault codes, emissions testing, vehicle history, track mode, and AI-powered analysis

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages