Comments (4)
One of the design goals of LTSupportAutomotive was to encode the protocol logic completely independent from the transport engine, that's why LTOBD2Adapter
has the signature:
-(nullable instancetype)initWithInputStream:(NSInputStream*)inputStream outputStream:(NSOutputStream*)outputStream NS_DESIGNATED_INITIALIZER;
As far as I know, USB-OBD2 cables mount themselves as serial tty
devices, hence to connect to an USB adapter, all you have to do is open an NSInputStream
and an NSOutputStream
and feed them into the constructor of an LTOBD2Adapter
subclass.
Can you give that a try and please give some feedback?
(In any case, I plan to buy an USB OBD2 adapter over the next months (in preparation to write an OBD2 app for macOS), so if you can wait a couple of weeks, I'll take care of it.)
from ltsupportautomotive.
First: Thank you for your reply :D
I will try it once i find the time and then write my results here. I also tried this python lib (https://github.com/brendan-w/python-OBD) to connect over odb2 and it worked fine. After it worked i got excited about odb2 and i wanted to learn more about it and enlarge the lib with more commands. But idk where to find documentations and information on the topic. Most pages look shady or have just basic information. Maybe you can know where to find some good information? I am just curious and want to see what things you can do on the car. By the way i am mech engineering student and have access to norms at Perinorm. Maybe you can tell me which norms i have to look up? The car of my dad is a opel astra caravan H and i read that it uses CAN_500KBPS. I would be thankful if you can tell me where to find information on the topic :D
from ltsupportautomotive.
OBD2 is quite well standardized. Everything interesting for one who is developing OBD2 software can be found in SAE1979 and SAE1979_DA. If you have these standard documents, you're quite well equipped. The Wikipedia pages are a good source as well, but they contain only excerpts of the official standard documentations and are a bit outdated. Unfortunately SAE charges money for these documents, that's why they're not on the internet. They're not too expensive though (ISO documents are often way more expensive) and worth the money IMO.
from ltsupportautomotive.
I have bought the OBDLINK SX USB/OBD2 adapter. As expected, this mounts as a usbserial
device node:
% ls -l /dev/*usbserial*
crw-rw-rw- 1 root wheel 21, 7 13 Aug 14:08 /dev/cu.usbserial-113010893810
crw-rw-rw- 1 root wheel 21, 6 13 Aug 13:40 /dev/tty.usbserial-113010893810
With a tiny bit of configuration glue (done in ref 81c6453), I could talk with this USB adapter.
from ltsupportautomotive.
Related Issues (20)
- Connection Issue HOT 1
- UDS Support (cancelled) HOT 4
- Transmitting DTCs using Swift HOT 1
- Is it possible to get PID commands return data faster? HOT 15
- Adapter State Initializing HOT 1
- LELink Bluetooth Low Energy - stuck on "OBD2AdapterStateInitializing" state HOT 4
- Crash when adapter state changed HOT 2
- After Disconnect it didnt connect stuck on "Initializing" state.
- How to set IP address to connect OBD ELM327 through Wifi? HOT 2
- Any ideas about simulating DTC functions?
- got "Invalid or short line '83' found"?
- How can I get Trouble Code and Pending Code like android in iOS Swift ?
- Documentation refers to Swift-UDS which cannot be found on GitHub HOT 1
- Bug in LTOBD2ProtocolISO15765_4 HOT 1
- Crash on XCode 14.3, init is unavailable!
- How to read odometer from OBD2? HOT 2
- Bug in LTOBD2PID_DISTANCE_SINCE_DTC_CLEARED_31 HOT 1
- OBDLink MX+ via BT Stuck on initializing, Received Data: Error\r HOT 3
- Expected behavior of BT in background HOT 2
- European car / EOBD Standard -- incorrect / missing readings? HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ltsupportautomotive.