{"id":20504161,"url":"https://github.com/haradama/ofxautomobile","last_synced_at":"2025-10-08T16:03:57.217Z","repository":{"id":152487993,"uuid":"237727441","full_name":"haradama/ofxAutomobile","owner":"haradama","description":"openFrameworks addon for reading vehicle information using OBD2-PID","archived":false,"fork":false,"pushed_at":"2023-04-29T15:04:11.000Z","size":78,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-16T07:37:53.819Z","etag":null,"topics":["addon","automobile","c-plus-plus","car","obd2","openframeworks","vehicle"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/haradama.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-02T06:10:47.000Z","updated_at":"2023-11-10T12:14:07.000Z","dependencies_parsed_at":"2023-06-03T13:30:33.815Z","dependency_job_id":null,"html_url":"https://github.com/haradama/ofxAutomobile","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haradama%2FofxAutomobile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haradama%2FofxAutomobile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haradama%2FofxAutomobile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haradama%2FofxAutomobile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haradama","download_url":"https://codeload.github.com/haradama/ofxAutomobile/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242100931,"owners_count":20071823,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["addon","automobile","c-plus-plus","car","obd2","openframeworks","vehicle"],"created_at":"2024-11-15T19:36:40.864Z","updated_at":"2025-10-08T16:03:52.165Z","avatar_url":"https://github.com/haradama.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ofxAutomobile\n\nofxAutomobile is an openFrameworks add-on for communicating with vehicles using the OBD2 (On-Board Diagnostics) protocol. It provides a simple interface for connecting to OBD2 adapters (such as ELM327) over a serial connection and sending OBD2 commands to query various vehicle parameters, such as engine speed, coolant temperature, and throttle position.\n\n\n## Usage\n\n| Method                                                             | Description                                                                                                                          |\n| ------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |\n| `bool setup(const std::string\u0026 port_name, int baud_rate = 115200)` | Initializes the OBD2 connection with the specified serial port and optional baud rate. Returns `true` on success, `false` otherwise. |\n| `bool query(const std::string\u0026 command, std::string\u0026 response)`    | Sends an OBD2 command and reads the response. Returns `true` on success, `false` otherwise.                                          |\n\n\n## Simulate your application\n\n`tools/obd2_simulator.py` simulates an OBD2 adapter using the ELM327 command set. It listens for OBD2 commands on a specified serial port and sends random responses for a few common OBD2 PIDs.\n\n### Requirements\n\n- Python 3.6 or higher\n- pyserial\n\n### Installation\n\n1. Install the required `pyserial` library:\n\n```sh\n$ pip install pyserial\n```\n\n### Usage\n\nRun the OBD2 simulator by specifying the port and baud rate as command-line arguments:\n\n```sh\n$ python tools/obd2_simulator.py --port /dev/ttyVUSB2 --baudrate 115200\n```\n\n\nReplace `/dev/ttyVUSB2` with the desired virtual serial port and `115200` with the desired baud rate.\n\n### Command-line Arguments\n\n- `-p, --port`: Required. Serial port for the OBD2 simulator.\n- `-b, --baudrate`: Optional. Baud rate for the OBD2 simulator (default: 115200).\n\n### Supported OBD2 Commands\n\nThe simulator currently supports the following OBD2 commands:\n\n- `ATZ`: Reset command\n- `0105`: Engine Coolant Temperature\n- `010C`: Engine RPM\n- `010D`: Vehicle Speed\n- `0111`: Throttle Position\n\nYou can expand the `handle_command` method in the `obd2_simulator.py` script to support more OBD2 commands as needed.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharadama%2Fofxautomobile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharadama%2Fofxautomobile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharadama%2Fofxautomobile/lists"}