Comments (14)
I don't know what your code is doing or what your car is responding with, so I can't help much.
from elmduino.
Same here. I dont know what its doing either. LOL! I get a value that looks out of range. I'll run it in debug and see what it displays.
from elmduino.
Data below..first is PID 119 which is CACT
Service: 1
PID: 119
Normal length query detected
Query string: 01771
Clearing input serial buffer
Sending the following command/query: 01771
Received char: 4
Received char: 1
Received char: 7
Received char: 7
Received char: 0
Received char: 3
Received char: 4
Received char: F
Received char: 4
Received char: F
Received char: 0
Received char: 0
Received char: 0
Received char: 0
Received char: \r
Received char: \r
Received char: >
Delimiter found.
All chars received: 4177034F4F0000
Expected response header: 4177
Single response detected
64-bit response:
responseByte_0: 3
responseByte_1: 0
responseByte_2: 79
responseByte_3: 79
responseByte_4: 0
responseByte_5: 0
responseByte_6: 0
responseByte_7: 0
and also 15 (default in elmduino). I switched to 119 because I got a no data and assumed CACT was the correct PID.
Service: 1
PID: 15
Normal length query detected
Query string: 010F1
Clearing input serial buffer
Sending the following command/query: 010F1
Received char: N
Received char: O
Received char: _
Received char: D
Received char: A
Received char: T
Received char: A
Received char: \r
Received char: \r
Received char: >
Delimiter found.
All chars received: NODATA
ELM responded with errror "NO DATA"
Service: 1
PID: 11
Normal length query detected
Query string: 010B1
Clearing input serial buffer
Sending the following command/query: 010B1
Received char: N
Received char: O
Received char: _
Received char: D
Received char: A
Received char: T
Received char: A
Received char: \r
Received char: \r
Received char: >
Delimiter found.
All chars received: NODATA
ELM responded with errror "NO DATA"
from elmduino.
Why are you using 119 for intake air temp? Intake air temp is a standard PID and it's 15. If it returns "NO DATA", that means your car's diagnostics computer doesn't support the PID.
from elmduino.
from elmduino.
PID 119 isn't natively supported by this lib. You might be able to use some combination of responseByte_0
through responseByte_7
to reconstruct the desired output.
I think you might be having the same issue as those in #141. I tried to do an update to fix that issue, but never tagged that version out due to lack of testing. The main branch has the updates that might help you. Try cloning main to your libraries folder and see if that fixes things. If not, you can mess with the responseBytes to get the right output if you want.
from elmduino.
So you're saying I can force it to try 119 using main and changing INTAKE_AIR_TEMP to 119 to see if it works?
from elmduino.
I wouldn't do it that way, but maybe it would work
from elmduino.
No it didnt work. I copied over whats in src from main and it still didnt read 119 CACT. I did make the change that was suggested by others that fixed their problem from the link you posted.
Data looked a tiny bit different.. instead of seeing 79 79 I get 79 89. Is there something other than the wiki for OBD2 that gives more of a description of what 119 should return that way I can either write something myself or fix your code?
Service: 1
PID: 119
Normal length query detected
Query string: 01771
Clearing input serial buffer
Sending the following command/query: 01771
Received char: 4
Received char: 1
Received char: 7
Received char: 7
Received char: 0
Received char: 3
Received char: 5
Received char: 9
Received char: 4
Received char: F
Received char: 0
Received char: 0
Received char: 0
Received char: 0
Received char: \r
Received char: \r
Received char: >
Delimiter found.
All chars received: 417703594F0000
Expected response header: 4177
Single response detected
64-bit response:
responseByte_0: 3
responseByte_1: 0
responseByte_2: 79
responseByte_3: 89
responseByte_4: 0
responseByte_5: 0
responseByte_6: 0
responseByte_7: 0
from elmduino.
There are apparently two sensors where the formula for each sensor is value - 40 = temp
in degrees (celcius?). The value for the first sensor is the value of responseByte_2
and the value of the other is the value of responseByte_3
. Source
from elmduino.
Hmm.. so 79 to decimal is 121 - 40 = 81. 89 to decimal is 97. I'll go see that torque pro reads on that.
from elmduino.
The 79 is decimal, not hex
from elmduino.
Am I just missing it?
Sensor 1: t1 = B - 40 = 79 - 40 = 39°C
Sensor 2: t2 = C - 40 = 89 - 40 = 49°C
Torque Pro says 54*C
from elmduino.
Maybe your car is different and has a different temperature formula. I don't know what formula to use if it's not standardized. At this point you'll need to talk to someone in an automotive forum - I can't be of much more help
from elmduino.
Related Issues (20)
- BLE functionality ESP32-C3/S3 HOT 1
- Vgate iCar Pro BLE 4.0 not getting data HOT 7
- Repeating pid request ( stopped car just turn on, esp32, elm327) HOT 11
- Wrong RPM HOT 16
- How to use PIDs for EV HOT 2
- Issue with getting data from .rpm() or .throttle() HOT 12
- ELM327 Bluetooth don't connection HOT 14
- Arduino obd monitoring Opel Insignia HOT 8
- Connection with OBDII adapter not possible HOT 2
- connection to Ircama/ELM327-emulator or PowerBroker2/ELM_Simulator HOT 3
- Checking Parking Brake Status HOT 3
- Elm327 hc05 connected show HOT 2
- queryPID never returns HOT 8
- Use own pid HOT 4
- Setting up OBD for a MG ZS Electric Vehicle
- batteryVoltage() returns zero HOT 2
- Adapter version HOT 3
- Help with Volkswagen MEB (ID.3, Skoda Enyaq etc.) needed HOT 8
- Reading more values HOT 11
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 elmduino.