This is the remake of the program PYOBD. It works on Python3 and all new libraries. It was tested on Linux, Windows, and it should work on MAC too.

Overview

PYOBD PYOBD

This is the remake of the program PYOBD. It works on Python3 and all new libraries. It was tested on Linux, Windows, and it should work on MAC too. You just need an ELM327 USB or bluetooth device and a PC(laptop preferably).

NOTE: On Windows you will need a suitable driver for your ELM327 device(on Linux it is not needed). You can download drivers from here: http://www.totalcardiagnostics.com/support/Knowledgebase/Article/View/1/0/how-to-install-elm327-usb-cable-on-windows-and-obd2-software

pyOBD (aka pyOBD-II or pyOBD2) is an OBD-II compliant car diagnostic tool. It is designed to interface with low-cost ELM 32x OBD-II diagnostic interfaces such as ELM327. It will basically allow you to talk to your car's ECU,... display fault codes, display measured values, read status tests, etc. All cars made since 1996 (in the US) or 2001 (in the EU) must be OBD-II compliant, i.e. they should work with pyOBD.

Video presentation on YouTube(click on it):

PYOBD Youtube video 2021

On Debian 10 type these commands to install the requirements:

sudo apt-get install dpkg-dev build-essential libjpeg-dev libtiff-dev libsdl1.2-dev libgstreamer-plugins-base1.0 libnotify-dev freeglut3 freeglut3-dev libsm-dev libgtk-3-dev libwebkit2gtk-4.0-dev libxtst-dev

pip3 install wxpython==4.1.1

pip3 install pyserial==3.5

pip3 install obd==0.7.1

The program is run by typing:

python3 pyobd.py

The ignition must be on, to connect to the car and display data(key turned one level before engine start). Although most of the sensors are visible only when the engine is running. If you connected and then turn the engine on, you must connect to the car again.

The program works nice and I will also add new functionalities to it.

ELM327

Comments
  • How to debug first connection?

    How to debug first connection?

    @barracuda-fsh, many thanks for maintaining and enhancing this cool piece of software. I just received a brand new Chinese ELM327 v1.5. It works just fine on Ubuntu 20.04 by using OBD commands with 'sudo screen /dev/ttyUSB0 38400': I was among others able to retrieve trouble codes. I can't get it to connect with pyobd with the below error messages. Where should I get started to debug the connection?

    Thank you.

    [obd.obd] No OBD-II adapters found [obd.obd] Cannot load commands: No connection to car [obd.obd] No OBD-II adapters found [obd.obd] Cannot load commands: No connection to car [obd.obd] No OBD-II adapters found [obd.obd] Cannot load commands: No connection to car [obd.obd] No OBD-II adapters found [obd.obd] Cannot load commands: No connection to car [obd.obd] No OBD-II adapters found [obd.obd] Cannot load commands: No connection to car

    opened by laurentbacall 9
  • check if connecting to the car works with practically any ELM327 adapter

    check if connecting to the car works with practically any ELM327 adapter

    I need to check if connecting to the car works with practically any ELM327 adapter and possibly fix it if some don't work. If someone has issues, feel free to comment and I will try to fix them also.

    It probably works on all USB ELM327 adapters(especially original ones, not copies).

    So far these have been confirmed to work: -OBDPro USB Scantool (http://www.obdpros.com/product_info.php?products_id=133) -OBDLink SX (https://www.obdlink.com/products/obdlink-sx/) -Chinese USB ELM OBD2 (1.5a) ...

    opened by barracuda-fsh 9
  • Changing One Setting in Configure Overwrites All Settings in .pyobdrc

    Changing One Setting in Configure Overwrites All Settings in .pyobdrc

    Regarding menu OBDII > Configure

    If you change one setting in configure, all settings in .pyobdrc are overwritten.

    This was problematic for me because neither AUTO in baud rate or in comport worked. The configure UI has no option to manually enter a comport. I manually edited .pyobrc to set comport=/dev/cuaU0. Later I edited baudrate in the configure dialog and did not realize that the value of comport was overwritten to the hardcoded value of AUTO.

    If one does not ever use the configure dialog, then one avoids their configuration being overwritten.

    opened by jcw73 2
  • Some UI Elements Seem to Have No Effect

    Some UI Elements Seem to Have No Effect

    Regarding menu OBDII > Disconnect and menu File > Exit

    Neither of these UI elements seems to have any effect. The only way to exit pybobd is to use CTRL-C in the terminal where I started pyobd.

    opened by jcw73 1
  • Pkg mac support

    Pkg mac support

    Hello, This application is interesting, but you need an easy way to deploy this application if you want to attract simple users without describing them how to install Python. My decision is not the best one but at least it will give users a simple way to run application. I suggest to use pyInstall and github action for auto deploy.

    opened by shizacat 0
  • option to record & save the data

    option to record & save the data

    #FeatureRequest

    First of all I'm so happy i found this new version that rely works...

    It would be super nice if it was possible to record some graphs to be able to analyze it later and to keep it as documentation of my car.

    opened by datamaskinen 3
  • AUR build

    AUR build

    Thank you for supporting this valuable app!

    Are there any plans to provide an Arch User Repository "package" (the PKGBUILD script)?

    There is already an original package with no maintainer. If you're serious with the development the package could be repurposed.

    opened by drws 6
  • Flatpak support

    Flatpak support

    Currently there are only limited amount of linux support that may cause issues on some popular distributions.

    Please introduce a modern Flatpak package and publish it on FlatHub.

    Having this project in a Flatpak package, would enable your project to work on basically all distributions.

    See some of the reasons to use Flatpak.

    opened by aha999 1
Releases(v1.12)
Activate Numpad inside the touchpad with top right corner switch or F8 key

This is a python service which enables switching between numpad and touchpad for the Asus UX433. It may work for other models.

Mohamed Badaoui 230 Jan 08, 2023
OctoPrint is the snappy web interface for your 3D printer!

OctoPrint OctoPrint provides a snappy web interface for controlling consumer 3D printers. It is Free Software and released under the GNU Affero Genera

OctoPrint 7.1k Jan 03, 2023
Port of Uxn to digital hardware in the Logisim simulator

Uxn-Logisim Implements the Uxn instruction set in digital hardware. Very WIP. Contents cpu.circ - The Logisim file microcode.mc - Microcode source fil

DeltaF1 11 Mar 27, 2022
Cascade Drone Swarm Physical Demonstration Project

Cascade Drone Swarm Physical Demonstration Project Table of Contents About The Project Built With Getting Started Prerequisites Installation About The

3 Aug 24, 2022
A refreshed Python toolbox for building complex digital hardware

A refreshed Python toolbox for building complex digital hardware

nMigen 1k Jan 05, 2023
This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC

About This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC, issue #56 and f

Philippe Teuwen 28 Nov 21, 2022
Robo Arm :: Rigging is a rigging addon for Blender that helps animating industrial robotic arms.

Robo Arm :: Rigging Robo Arm :: Rigging is a rigging addon for Blender that helps animating industrial robotic arms. It construct serial links(a kind

2 Nov 18, 2021
A Python program that makes it easy to manage modules on a CircuitPython device!

CircuitPython-Bundle-Manager-v2 A Python program that makes it easy to manage modules on a CircuitPython device! The CircuitPython Bundle Manager v2 i

Ckyiu 1 Dec 18, 2021
A python script for macOS to enable scrolling with the 3M ergonomic mouse EM500GPS in any application.

A python script for macOS to enable scrolling with the 3M ergonomic mouse EM500GPS in any application.

3 Feb 19, 2022
gdsfactory is an EDA (electronics design automation) tool to Layout Integrated Circuits.

gdsfactory 3.5.5 gdsfactory is an EDA (electronics design automation) tool to Layout Integrated Circuits. It is build on top of phidl gdspy and klayou

147 Jan 04, 2023
A versatile program that uses the raspberry pi camera and provides it as a service

PiCameleon Is a daemon program meant to provide the RaspberryPi Camera as a service while running according to a configuration.

André Esser 52 Oct 16, 2022
For use with an 8-bit parallel TFT touchscreen using micropython

ILI9341-parallel-TFT-driver-for-micropython For use with an 8-bit parallel TFT touchscreen using micropython. Many thanks to prenticedavid and his MCU

3 Aug 02, 2022
ModbusTCP2MQTT - Sungrow & SMA Solar Inverter addon for Home Assistant

ModbusTCP2MQTT Sungrow & SMA Solar Inverter addon for Home Assistant This addon will connect directly to your Inverter using Modbus TCP. Support model

Teny Smart 40 Dec 21, 2022
Projet d'integration SRI 3A ROS

projet-integration-sri-2021-2022 Projet d'intégration ROS SRI 2021 2022 Organization: Planification de tâches Perception Saisie: Cédérick Mouliets Sim

AIP Primeca Occitanie 3 Jan 07, 2022
Setup DevTerm to be a cool non-GUI device

DevTerm hobby project I bought this amazing device: DevTerm A-0604. It has a beefy ARM processor, runs a custom version of Armbian, embraces Open Sour

Alex Shteinikov 9 Nov 17, 2022
2D waypoints will be predefined in ROS based robots to navigate to the destination avoiding obstacles.

A number of 2D waypoints will be predefined in ROS based robots to navigate to the destination avoiding obstacles.

Arghya Chatterjee 5 Nov 05, 2022
Turns a compatible Raspberry Pi device into a smart USB drive for PS4/PS5.

PSBerry A WIP project for Raspberry Pi, which turns a compatible RPI device into a smart USB drive for PS4/PS5. Allows for save management of PS4 game

Filip Tomaszewski 2 Jan 15, 2022
Add filters (background blur, etc) to your webcam on Linux.

webcam-filters Add filters (background blur, etc) to your webcam on Linux. Video conferencing applications tend to either lack video effects altogethe

Jashandeep Sohi 480 Dec 14, 2022
Red Light Green Light Robot

Red Light Green Light Robot The primary problem addressed by our project is robotic follower behavior i.e. maintaining distance from a moving target.

Will Romano 2 Nov 20, 2021
DIY split-flap display

The goal is to make a low-cost display that's easy to fabricate at home in small/single quantities (e.g. custom materials can be ordered from Ponoko or similar, and other hardware is generally availa

Scott Bezek 2.5k Jan 05, 2023