python-OBD
==========
A python module for handling realtime sensor data from OBD-II vehicle
ports. Works with ELM327 OBD-II adapters, and is fit for the Raspberry
Pi.
Installation
------------
```Shell
$ pip install obd
```
Basic Usage
-----------
```Python
import obd
connection = obd.OBD() # auto-connects to USB or RF port
cmd = obd.commands.SPEED # select an OBD command (sensor)
response = connection.query(cmd) # send the command, and parse the response
print(response.value) # returns unit-bearing values thanks to Pint
print(response.value.to("mph")) # user-friendly unit conversions
```
Documentation
-------------
Available at [python-obd.readthedocs.org](http://python-obd.readthedocs.org/en/latest/)
Commands
--------
Here are a handful of the supported commands (sensors). For a full list, see [the docs](http://python-obd.readthedocs.io/en/latest/Command%20Tables/)
*note: support for these commands will vary from car to car*
- Calculated Engine Load
- Engine Coolant Temperature
- Fuel Pressure
- Intake Manifold Pressure
- Engine RPM
- Vehicle Speed
- Timing Advance
- Intake Air Temp
- Air Flow Rate (MAF)
- Throttle Position
- Engine Run Time
- Fuel Level Input
- Number of warm-ups since codes cleared
- Barometric Pressure
- Ambient air temperature
- Commanded throttle actuator
- Time run with MIL on
- Time since trouble codes cleared
- Hybrid battery pack remaining life
- Engine fuel rate
- Vehicle Identification Number (VIN)
Common Issues
-------------
### Bluetooth OBD-II Adapters
There are sometimes connection issues when using a Bluetooth OBD-II adapter with some devices (the Raspberry Pi is a common problem). This can be fixed by setting the following arguments when setting up the connection:
```Python
fast=False, timeout=30
```
License
-------
GNU GPL v2
This library is forked from:
- <https://github.com/peterh/pyobd>
- <https://github.com/Pbartek/pyobd-pi>
Enjoy and drive safe!
Raw data
{
"_id": null,
"home_page": "http://github.com/brendan-w/python-OBD",
"name": "obd",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "obd obdii obd-ii obd2 car serial vehicle diagnostic",
"author": "Brendan Whitfield",
"author_email": "brendanw@windworksdesign.com",
"download_url": "https://files.pythonhosted.org/packages/e7/3a/db9b34fc823d30138529504bc22ad72eab2c9916fa0d32b90687df4792b9/obd-0.7.2.tar.gz",
"platform": null,
"description": "python-OBD\n==========\n\nA python module for handling realtime sensor data from OBD-II vehicle\nports. Works with ELM327 OBD-II adapters, and is fit for the Raspberry\nPi.\n\nInstallation\n------------\n\n```Shell\n$ pip install obd\n```\n\nBasic Usage\n-----------\n\n```Python\nimport obd\n\nconnection = obd.OBD() # auto-connects to USB or RF port\n\ncmd = obd.commands.SPEED # select an OBD command (sensor)\n\nresponse = connection.query(cmd) # send the command, and parse the response\n\nprint(response.value) # returns unit-bearing values thanks to Pint\nprint(response.value.to(\"mph\")) # user-friendly unit conversions\n```\n\nDocumentation\n-------------\n\nAvailable at [python-obd.readthedocs.org](http://python-obd.readthedocs.org/en/latest/)\n\nCommands\n--------\n\nHere are a handful of the supported commands (sensors). For a full list, see [the docs](http://python-obd.readthedocs.io/en/latest/Command%20Tables/)\n\n*note: support for these commands will vary from car to car*\n\n- Calculated Engine Load\n- Engine Coolant Temperature\n- Fuel Pressure\n- Intake Manifold Pressure\n- Engine RPM\n- Vehicle Speed\n- Timing Advance\n- Intake Air Temp\n- Air Flow Rate (MAF)\n- Throttle Position\n- Engine Run Time\n- Fuel Level Input\n- Number of warm-ups since codes cleared\n- Barometric Pressure\n- Ambient air temperature\n- Commanded throttle actuator\n- Time run with MIL on\n- Time since trouble codes cleared\n- Hybrid battery pack remaining life\n- Engine fuel rate\n- Vehicle Identification Number (VIN)\n\nCommon Issues\n-------------\n\n### Bluetooth OBD-II Adapters\n\nThere are sometimes connection issues when using a Bluetooth OBD-II adapter with some devices (the Raspberry Pi is a common problem). This can be fixed by setting the following arguments when setting up the connection:\n\n```Python\nfast=False, timeout=30\n```\n\nLicense\n-------\n\nGNU GPL v2\n\nThis library is forked from:\n\n- <https://github.com/peterh/pyobd>\n- <https://github.com/Pbartek/pyobd-pi>\n\nEnjoy and drive safe!\n",
"bugtrack_url": null,
"license": "GNU GPLv2",
"summary": "Serial module for handling live sensor data from a vehicle's OBD-II port",
"version": "0.7.2",
"project_urls": {
"Homepage": "http://github.com/brendan-w/python-OBD"
},
"split_keywords": [
"obd",
"obdii",
"obd-ii",
"obd2",
"car",
"serial",
"vehicle",
"diagnostic"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e73adb9b34fc823d30138529504bc22ad72eab2c9916fa0d32b90687df4792b9",
"md5": "c7d2b37e0b86c948545a4d97d1de2d58",
"sha256": "20d38c9ded3daad1e8affab3ff367a70788d4f29ac77ab7aacddc6a6d2a43d61"
},
"downloads": -1,
"filename": "obd-0.7.2.tar.gz",
"has_sig": false,
"md5_digest": "c7d2b37e0b86c948545a4d97d1de2d58",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 60572,
"upload_time": "2023-07-10T03:15:31",
"upload_time_iso_8601": "2023-07-10T03:15:31.580307Z",
"url": "https://files.pythonhosted.org/packages/e7/3a/db9b34fc823d30138529504bc22ad72eab2c9916fa0d32b90687df4792b9/obd-0.7.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-10 03:15:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "brendan-w",
"github_project": "python-OBD",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "obd"
}