Giter Club home page Giter Club logo

automotive-ai's Introduction

Automotive AI: Voice Activated Vehicle Diagnostic Assistant ๐Ÿš—๐Ÿ—ฃ๏ธ

Join the Discord Server (https://discord.gg/VsVuxche)

An experimental open-source application that integrates the OpenAi gpt-3.5-turbo-1106 or gpt-4-1106-preview models via API, NLP, TTS, STT, and an OBD-II ELM327 device to create a voice-activated, hands-free, vehicle diagnostic assistant.

โš ๏ธ This is a work in progress โš ๏ธ

11/12/2023: Updated to use OpenAI v1.2.3

๐Ÿ”œ ElevenLabs TTS, Google Calendar integration coming soon.

๐Ÿ› ๏ธ Built and tested using:

  • Windows 11 & Ubuntu 22.04
  • Python 3.11.6
  • OBDlink MX+ Bluetooth ELM327
  • 2005 and 2021 Ford Vehicles
  • Desktop testing using an ELM327 emulator

๐Ÿš€ Installation

  1. Clone the repository:
git clone https://github.com/Explorergt92/Automotive-AI.git
  1. Create a conda environment and activate it: Download Conda

Linux or Windows

conda create -n autoai python=3.11

conda install -n autoai -c conda-forge python=3.11

conda activate autoai
  1. Run the following command in the root directory:

Linux

./install.sh

Windows

.\install.bat
  1. Set your API keys and variables in the .env.template file and save it as .env without a file extension.

๐Ÿ Running the Application

Without a vehicle communication interface:

python main.py

With an ELM327 device connected:

python main.py --device elm327

๐ŸŽ™๏ธ Voice Commands

Current voice commands include:

  • "engine rpm"
  • "intake air temperature"
  • "fuel tank level"
  • "time run with MIL on"
  • "engine coolant temperature"
  • "read trouble codes"
  • "freeze frame data"
  • "pending trouble codes"
  • "clear trouble codes"
  • "vehicle identification number"
  • "calibration id message count"
  • "calibration id"
  • "calibration verification numbers"
  • "start a diagnostic report"
  • "send a diagnostic report"
  • "next on outlook calendar"
  • "create a new outlook appointment"
  • "check outlook"
  • "send an email with outlook"
  • "ask question"
  • "start a conversation"
  • "check gmail"
  • "what's next on my google calendar"

After a conversation has been started you can use the following voice commands to manage the conversation:

  • "clear all history"
  • "delete the last message"
  • "end the conversation"
  • "summarize the conversation history"

๐Ÿ“Ÿ ELM Simulator

ELM327 emulator: GitHub com0com virtual serial port driver: SourceForge (to create a virtual COM port pair).

After installing com0com, run:

elm -p COM6 -a 500000

Set the COM port in the .env file to COM7.

๐Ÿ“ˆ Data Stream (Under Construction)

python air_fuel_datastream.py

Streams data from the OBD-II ELM327 device to the console, but there's currently no way to stop the stream other than closing the application.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.