Login Register

How to read 1996-1997 Volvo 850 mileage with an ELM327

Help, Advice and DIY Tutorials on Volvo's P80 platform cars -- Volvo's 1990s "bread and butter" cars -- powered by the ubiquitous and durable Volvo inline 5-cylinder engine.

1992 - 1997 850, including 850 R, 850 T-5R, 850 T-5, 850 GLT
1997 - 2000 S70, S70 AWD
1997 - 2000 V70, V70 AWD
1997 - 2000 V70-XC
1997 - 2004 C70

This topic is in the MVS Volvo Repair Database » How to Read 850 Mileage with an ELM327: 1996 & 1997 850
Post Reply
esl_97_850_T5
Posts: 271
Joined: 19 June 2012
Year and Model: 1998 S70 GLT
Location: Knoxville, TN
Has thanked: 18 times
Been thanked: 27 times

Re: How to read 1996-1997 Volvo 850 mileage with an ELM327

Post by esl_97_850_T5 »

Ginny & Steve,

Super. Glad to see you've waded thru getting your ELM327 drivers setup, got Realterm installed, retrieved your mileage, and explored some other COMBI items.

As you've discovered, It doesn't matter what order you issue the ECU 51 B9xx00 requests, as long as you've got all those ELM327 AT commands setup beforehand, including the ATSH 84 51 13.

My guess on your original attempt to read the mileage is that you, in the process of getting everything setup, probably re-issued an ATZ after you had the ATH1 setup. Normally, an ELM327 will have its Programmable Parameters setup to default to the equivalent of ATH0, so an ATZ will effectively reset to a headers off state (since that's what most people use to access the OBDII emission diagnostics). Or maybe you unplugged the ELM327, or somehow issued one of the commands which reestablishes the defaults. At least now you can recognize the difference in the output and know how to toggle the headers / checksums output on and off (with ATH1 and ATH0).

How did you do the recent Service Light Reset? Vol-FCR? Draper Reset Tool? Visit to the dealer? Prior owner did it? Or what?

Has your ABS ever stopped delivering the speed signal to the Instrument Panel? If yes, was it longer than one month?

The response to someone from Netherland's B901 is A2 hex = 162 decimal.
The response to my B901 is A4 hex = 164 decimal.
The response to your B901 was 24 hex = 36 decimal.

I'm beginning to think that B901 is not the Country Code, since we're both from the USA and we don't have the same value for B901. But there's not enough examples yet to infer anything useful.

esl_97_850_T5
1998 Volvo S70 GLT - 205.5K miles - S70 & M44 testbed in 2016-2019; traded 2019-07-15 (for spare time)
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09

marshappynation
Posts: 7
Joined: 6 September 2013
Year and Model: 850 1996
Location: Atlanta
Has thanked: 2 times

Post by marshappynation »

Esl, We haven't done a service light reset yet. We only recently bought the car and the light was not on, it just had a broken odometer. Can service light reset be done with the equipment we have if and when we need to turn it off?

Also, as far as we know our ABS has not stopped delivering the speed signal. Like I say, we haven't had the car long, but we picked the old owner's brain and he was pretty detailed about the car's history.

Ginny & Steve

esl_97_850_T5
Posts: 271
Joined: 19 June 2012
Year and Model: 1998 S70 GLT
Location: Knoxville, TN
Has thanked: 18 times
Been thanked: 27 times

Post by esl_97_850_T5 »

Subject: How to read 1996-1997 Volvo 850 mileage with an ELM327
marshappynation wrote:...Can service light reset be done with the equipment we have if and when we need to turn it off?

Also, as far as we know our ABS has not stopped delivering the speed signal...

Ginny & Steve
Ginny & Steve,

Thanks for the feedback. Sorry for the delayed response. I purposefully delayed responding in order to:

a) finish adding updates related to volvo850diag v0.5, and
b) explore getting the Service Light Reset procedure going for us ELM327 users.

volvo850diag v0.5 was released 2013-09-24.

Since you already have Realterm on your system, I strongly suggest you download the latest volvo850diag from volvo850.zip and use it as your mechanism of running Realterm. You'll never again have to use the cumbersome, slow "copy" from the Realterm Terminal pane when needing to cut information for pasting in kwpd3b0_interpreter.html or elsewhere. Instead you copy from the automatically generated, volvo850diag-driven, Realterm logs (created in the RT_ELM327_LOGS_DIR directory) and paste content from those logs into kwpd3b0_interpreter.

To answer your question, I'm 99% confident that your ELM327 could be used to perform the Service Light Reset procedure. However, I don't yet know how to do it, since I don't know what the message exchange is. And, apparently, nobody is willing to make this public, but instead insists upon charging for the feature and/or holding the info on the communication exchange close to their chest.

But I have been able to change the B905, B907, and B909 values -- the ones that I think are the Service Reminder Interval limits (that the counters are compared against). This was done using B805xx, B807xxyy, and B809xxyy requests, respectively. [See B90500, B90700, and B90900 for some details on these limits.]

After first reprogramming one of them to its existing value and getting a positive ack, I then reprogrammed all of them to be double their existing values using the following sequence:
  1. Display volvo850diag.html (v0.5 or higher) with Internet Explorer.
  2. Press Enter or click Start Realterm.
  3. Click ATZ Setup for ECUs 51/58/01/6E/2E/2F.
  4. Press Enter or click ECU 51 Setup button.
  5. Press Enter or click ECU 51 Read DTCs button.
  6. Press ECU 51 Full Scan in order to record the COMBI's present B9xx data.
  7. Click in the Realterm Terminal pane.
  8. In order to reprogram the limits to the highest ones that appear in Brick-Diag v0.0.6.6 Free Beta's
    Instrument Cluster / Service tab's 3 drop-down lists on the right-hand side of that tab.
    • miles? or kilometers? = ~20000 mi or 32000 km
    • time (months) = 24
    • engine operation (hours) = 1000
    Type the following, being very careful to type the B8 requests accurately,
    and including the B9 requests only if you want to immediately check your results.

    >ATSH 84 51 13
    >B80520
    >B90500
    (optional)
    >ATSH 85 51 13
    >B807400B
    >B9070000
    (optional)
    >B809E803
    >B9090000
    (optional)

    If all those commands / requests are issued, the results should look like:

    >ATSH 84 51 13
    OK

    >B80520
    83 13 51 F8 05 E4

    >B90500
    84 13 51 F9 05 20 06

    >ATSH 85 51 13
    OK

    >B807400B
    83 13 51 F8 07 E6

    >B9070000
    85 13 51 F9 07 40 0B 34

    >B809E803
    83 13 51 F8 09 E8

    >B9090000
    85 13 51 F9 09 E8 03 D6
  9. Press ECU 51 Full Scan in order to record the COMBI's reprogrammed B9xx data.
I then reprogrammed all of them to be slightly higher than my existing Service Reminder Interval counters, then reprogrammed them to have very high limits which involved a hex 'F' in the high nibble of the high byte. I was hoping that raising the limits high enough would cause the Service light to go out, but, unfortunately, when the car was restarted my Service light was still lit. Apparently, there is an electronic latch for the Service Light, such that once the light is lit the first time after exhausting one of the Service Reminder Interval limits, it will not go out until the the Service Light Reset procedure is performed properly.

I think I know functionally what has to be done for the Service Light Reset:
  • B906 has to be zeroed.
  • B908 has to be zeroed.
  • Maybe B90A is zeroed, then incorporated into an update to B903 to account for an estimate of "lost" miles when the speed signal was missing.
  • B904 has to be set to the present B903 value.
  • The Service Light has to be extinguished.
Use of B808xx and B808xxyy commands to change the Engine Hours counter (B908) generated "7F B8 12" errors, no matter what values were used. My guess is the counters can not be zeroed with B8xx requests, and/or a PIN or special code is necessary (possibly contained in the request or possibly provided in another type of request), and/or other keyword D3 B0 protocol requests are necessary (eg, maybe B0xx, B1xx, or B2xx). I prefer not to experiment with any of these approaches since I'm totally clueless what to try and have fear of exhausting some sort of retry limit and end up disabling my Instrument Panel.

It would be nice if someone would make public the Service Light Reset message exchange info. It's probably discernable by monitoring, with an OBDII-to-OBDII Y-splitter, one of the tools that perform Service Light Resets. But the legality of the monitoring / publishing should be considered.

esl_97_850_T5
Last edited by esl_97_850_T5 on 13 Oct 2013, 18:46, edited 1 time in total.
1998 Volvo S70 GLT - 205.5K miles - S70 & M44 testbed in 2016-2019; traded 2019-07-15 (for spare time)
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09

esl_97_850_T5
Posts: 271
Joined: 19 June 2012
Year and Model: 1998 S70 GLT
Location: Knoxville, TN
Has thanked: 18 times
Been thanked: 27 times

Post by esl_97_850_T5 »

Congratulations to the user that got their Total Mileage (B903) and Miles at Service Light Reset (B904) interpreted on 2013-10-10 ~23:30 EST.

I see you also tried to read and clear your ABS DTCs, but there were problems.

I think a lot of users will make the same mistake (that you apparently did). I certainly made that mistake often when first experimenting doing Volvo diagnostics via the ELM327. So I'm going to fuse your two attempts to read/clear ABS DTCs into a teaching example here so both you and other users know what to do when they are issuing the ELM327 commands / keyword D3 B0 requests interactively and need to read a response by using an ELM327 ATBD command.

Example: ECU 01 (ABS) Read DTCs / Clear DTCs / Read DTCs where ATBD specified too late to show either the DTCs read or the completion status of the Clear DTCs request.

The following commands were issued accurately, as listed prior in this thread underneath the To read/clear ABS DTCs heading in my 2013-09-08 post:

ATZ
ATL1
ATE1
ATH1
ATAL
ATKW0
ATTA 13
ATIIA 01
ATWM 82 01 13 A1
ATSH 83 01 13
AE01
ATBD
AF01
ATBD
AE01
ATBD
ATSH 82 01 13
A0
ATPC


Your terminal emulator logged:

>ATZ
?

>ATL1
OK

>ATE1
OK

>ATH1
OK

>ATAL
OK

>ATKW0
OK

>ATTA 13
OK

>ATIIA 01
OK

>ATWM 82 01 13 A1
OK

>ATSH 83 01 13
OK

>AE01
NO DATA

>ATBD
05 82 01 13 A1 37 F4 BF 13 A1 85 F4 01

>AF01
NO DATA

>ATBD
05 82 01 13 A1 37 F4 BF 13 A1 85 F4 01

>AE01
NO DATA

>ATBD
05 82 01 13 A1 37 F4 BF 13 A1 85 F4 01

>ATSH 82 01 13
OK

>A0
NO DATA

>ATPC
OK

>

Most ELM327 devices will probably be garbled before the ATZ / ATL1 sequence is completed. On my ELM327, the ATZ response includes "ELM327 v1.5" instead of the "?" like in your case. Other users should be aware of those differences in the ATZ response.

It looks to me like you did a good job issuing the commands / requests, other than the ATBD commands were issued too late.

You did not use an ATSI command between the ATWM and the initial ATSH command, like you did when retrieving the mileages. But since your response was NO DATA instead of UNABLE TO CONNECT, I'm guessing the communication link was successfully established when the AE01 implicitly caused the ELM327 to initiate communication.

The NO DATA response is what you always expect from ECU 01, ECU 6E, and in fact all the KWPD3B0 ECUs when there are less than 6 hex digits that are sent to the ELM327. The ELM327 always adds a total of 4 bytes to whatever you send it when using the ISO9141-2 protocol -- it prepends a 3-byte header and it appends 1-byte checksum. If you specify 6 hex digits, they are translated to 3 bytes, then the ELM327 sends 7 bytes -- 3 header bytes, 3 data bytes (specified with the 6 hex digits), 1 checksum byte. Requests totaling 7 bytes are of the standard ISO9141-2 length, and the ELM327 will display their responses. If you send 8 or more hex digits, it will be translated to 4 or more bytes. Those requests will total >= 8 bytes. The prior issuance of the ATAL command is required to properly handle the responses generated when issuing > 7-byte requests. However, related to this reasoning, when you send a 4-digit hex or 2-digit hex request to the ELM327, it is translated into a request with a total length of 6 bytes or 5 bytes, respectively. The responses to those < 7-byte requests will not be displayed, even though those responses are received by the ELM327. When you issue < 6 hex digits (eg, for AE01 or AF01), the ELM327 ATBD command is subsequently required to see up to 12 bytes of the response that have been saved in the ELM327's 12 byte buffer (that contains the latest request or response). But to see the response to the 4-hex digit Read DTCs (AE01) or Clear DTCs (AF01) requests, the ATBD must be issued before the next KeepAlive (A0) is issued by the ELM327.

In your case, it appears very likely that you waited longer than 3 seconds before issuing the ATBD command, and/or your ELM327 device has been programmed with its ATPP parameters to use a shorter KeepAlive timer than the standard 3 second default. I did this -- waiting too long -- often in the beginning, and still do occasionally when entering things interactively.

The way that you can tell that you were too late is to examine the ATBD buffer. The first byte is the length of meaningful data in the buffer. In your case, it says the 5 following bytes are the message: 82 01 13 A1 37 (and all the remaining bytes in the ATBD buffer are garbage). Knowing that the first 3 bytes of the KWPD3B0 messages are the header and the last byte of a KWPD3B0 message is the checksum, we interpret that 5-byte message as follows:
  1. 82 implies there are 2 bytes in the message after the 3-byte header.
    [You always subtract hex 80 from the first byte of the header to see how many bytes follow the header.
    For example, if the first byte of the header was 8F, then 0x8F - 0x80 = 0x0F = 15 bytes would follow the 3-byte header.]
  2. 01 implies ECU 01 (ie, ABS) [at least it does for my 1997 Volvo 850 T5].
    The 2nd byte of the KWPD3B0 header (and any ISO9141-2 style header) is the destination, ie, intended receiver.
  3. 13 implies the tester id 13 (specified by the ATTA 13 command for ELM327 v1.4 or greater).
    The 3rd byte of the header is the source, ie, sender.
  4. A1 is the keyword D3 B0 protocol's KeepAlive request.
  5. 37 is the checksum.
So we see this "82 01 13 A1 37" message is actually the latest KeepAlive which was sent by the ELM327 before the ATBD command was issued.

You simply need to issue the ATBD command as quickly as you can after getting the ">" prompt from the ELM327, so that the ATBD buffer will display the ECU 01 (ABS) response to the AE01 request, before it is overwritten by the next KeepAlive.

The same thing applied when you issued the AF01 and the subsequent AE01 recheck of the DTCs. You issued the ATBD too late in both those cases -- as judged by the fact that the ATBD buffer contains a KeepAlive request sent from the ELM327 to the ABS.

The bottom line is: You really haven't checked anything! However, I'd bet that you did likely clear the DTCs, at least temporarily. So some of the original DTCs might now be cleared.

The ATSH 82 01 13 / A0 sequence commands ECU 01 to terminate the comm link.
The ATPC commands the ELM327 to terminate the comm link. The ATPC will cause the ELM327 to stop sending the KeepAlive.

Note: The first AE01 and its response may occasionally include the BUS INIT: ...OK phrase as follows:

>AE01
BUS INIT: ...OK
NO DATA

Usually, that does not occur. At least, it rarely does for me. Normally, I only see the BUS INIT: ...OK phrase only after issuing an ATSI.

Lessons to be learned:
  1. When talking with ECU 01 (ABS) and ECU 6E (AW 50-42), issue ATBD after AE01 and AF01 as soon as you can after the > prompt reappears. The ATBD must be issued before the KeepAlive timer expires (default is 3 second) which causes the ELM327 to send another KeepAlive (A1).
  2. Lengthen the KeepAlive timer. For example, the timeout period can be lengthened from 3 seconds to slightly over 4 seconds using the ELM327 command ATSW CC. There's also a way to lengthen it permanently by using the ATPP commands.
  3. Use volvo850diag to issue the commands for you so all the timing is automatically correct.
volvo850diag, a more automated solution

It should be mentioned here that the above problems of not issuing the ATBD fast enough after the AE01 request to ECU 01 or ECU 6E can be eliminated by using a program to issue the commands. Since you're using Windows, I'd suggest downloading/installing the free Realterm terminal emulator, then downloading/extracting the latest, free volvo850diag.zip distribution, then running the "local" version of volvo850diag.html (extracted from volvo850diag.zip v0.5 or higher).

Follow the instructions in the Requirements and First Time Use sections of volvo850diag.html. You should only have to do this step the very first time. Its important that you either define the RT_ELM327_LOGS_DIR environment variable or else be content with using a temporary directory for the automatically generated log files.

To read/clear the ABS DTCs with volvo850diag / Realterm / ELM327, you would basically do:
  1. Use Internet Explorer to display volvo850diag.html.
  2. Allow ActiveX and answer Yes to a couple more questions relating to ActiveX.
  3. Press the Enter key or click Start Realterm.
  4. Move the Realterm and volvo850diag windows so you can see them simultaneously.
  5. Move the Realterm Terminal pane vertical scroll bar to the bottom (so you see the latest communication exchange).
  6. Click ATZ Setup for ECUs 51/58/01/6E/2E/2F.
  7. Click ECU 01 Setup.
  8. Press Enter or click either Read DTCs or ATSI (since ATSI commands have already been seen to work with your ELM327). The Read DTCs is the default, it is quicker, and it obviously accomplishes the first thing that you wanted to do, so that's probably the better choice.
  9. Click Read DTCs (if you had clicked ATSI in the previous step).
  10. Read the messages that appear in the volvo850diag window underneath the row of ECU 01 buttons and respond accordingly.
  11. If the ATBD response (in Realterm's Terminal pane) is "06 83 13 01 EE 01 86...", then there are no ABS DTCs, so you're done checking ABS DTCs.
  12. Otherwise, if the ATBD response is "xx yy 13 01 EE 01...", then # of DTCs = xx (remember its in hex) - 6, yy = 0x83 + # of DTCs, and the DTCs immediately follow the EE 01. Remember, these are raw 2-digit hex DTC codes, not the 3-digit decimal DTC codes that we are all used to in the Volvo literature.
  13. If # of DTCs > 0, then click the ECU 01 Clear DTCs button.
  14. Then click the ECU 01 Read DTCs button (or the ECU 01 Quick Scan or Full Scan buttons).
  15. Check again for "06 83 13 01 EE 01 86..." or "xx yy 13 01 EE 01..." after the ATBD command which follows the AE01 request, as mentioned in steps 10-12, and respond accordingly.
  16. Repeat as deemed necessary depending on the state of your ABS.
  17. In volvo850diag, click Cleanup.
  18. Click Close Realterm.
  19. Optionally, submit the log's contents to kwpd3b0_interpreter.html. It should tell you the # of DTCs, the raw DTC codes, and it may be able to interpret some of the raw DTCs codes into the well known 3-digit Volvo DTC codes.
  20. Follow the remaining Cleanup instructions.
There's some more discussion of ABS DTCs in the Volvo 850 OBDII FAQ under the question Q. How do I use the ELM327 to read DTCs for an ABS module (ECU 01) which has the common problem of flaky solder connections?

Hope this finds its intended recipient that had tried to read/clear their ABS DTCs.

esl_97_850_T5
1998 Volvo S70 GLT - 205.5K miles - S70 & M44 testbed in 2016-2019; traded 2019-07-15 (for spare time)
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09

esl_97_850_T5
Posts: 271
Joined: 19 June 2012
Year and Model: 1998 S70 GLT
Location: Knoxville, TN
Has thanked: 18 times
Been thanked: 27 times

Post by esl_97_850_T5 »

Using volvo850diag (on MS Windows) to simplify reading the '96-'97 Volvo 850 mileage

The first post to this thread (on 2013-05-25) listed what to send to an ELM327 to read the '96-97 Volvo 850 mileage from the instrument cluster (COMBI).

In option 2 of viewtopic.php?f=1&t=59533&p=302934#p302934 are included some instructions to better automate this reading of the mileage using IE, the "local" volvo850diag GUI, and Realterm. The quickest way -- the My Extra Scans button -- is described first. Then some alternatives are listed: Quick Scan All ECUs, Full Scan All ECUs, ECU 51 Quick Scan, ECU 51 Full Scan. Each of those volvo850diag methods are less error prone than doing interactive typing, since they only involve volvo850diag button presses (and a final copy/paste if you want to use kwpd3b0_interpreter to do the interpretation for you). The volvo850diag methods are usually quicker too.

It seemed appropriate to include the link to those "how to use volvo850diag to read 1996-1997 Volvo 850 mileage" instructions in this "How to read 1996-1997 Volvo 850 mileage with an ELM327" thread, so the ELM327 mileage reading is all in one place.

Note: There are 3 different keyword D3 B0 protocol requests that volvo850diag uses to read the current vehicle mileage: ECU 51's B90300, A50701, or A50901. So don't be surprised if your ELM327 log's content interpretations include the mileage listed several different times, once for each of those requests.
1998 Volvo S70 GLT - 205.5K miles - S70 & M44 testbed in 2016-2019; traded 2019-07-15 (for spare time)
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09

mikeri
Posts: 2
Joined: 7 July 2015
Year and Model: 850 T5 2.0 1996
Location: Oslo, Norway

Post by mikeri »

Sorry to bump this old thread, I just want to inform you that I made a little program to read the milage of Motronic 4.3 cars via ELM327. The code is at https://github.com/mikeri/milageread and an compiled version for Windows (runnable exe-file, no extras needed!) is at http://mikeri.net/milageread.zip. Just extract it, CD into the extracted directory in a command prompt and type "milageread COMx" where x is the port number of the ELM327 device.

Also, somewhat interestingly, my car seems to return miles even though it is a European car with metric instruments. Unless the ECU have been changed or reset in the past and by a bizarre coincidence the milage seems to fit very well with what I estimate it to be. Have you done any more research on this? (km vs miles) I'd like feedback from users from metric locations.

robocam
Posts: 51
Joined: 12 April 2009
Year and Model: 850, 1996
Location: Missouri

Post by robocam »

I purchased an ELM327 device that can link with my phone, and I found an iPhone app called EOBD-Facile that allows you to send commands to the ECU, but I have to pay $14.99 for that functionality (I wonder if there is a free app that allows this). Anyway, before I pay, I want to make sure I understand the process.

Basically, I want to read the mileage off a 96 850. If I enter the commands one at a time, what commands do I enter? I noticed that the interpreter web page has been updated recently, so I wasn't sure if the original post is still accurate, so that is why I am asking. If I mess something up, is there a command that resets everything so that I can start over? Does unplugging the ELM327 clear everything I've done? Once I receive responses, do I type them into the interpreter including the commands?

If someone could provide step-by-step instructions (including a list of commands) on how to read the mileage (starting from what commands I should send), I would be very grateful. I want to make sure I'm not just throwing away $15. Thanks in advance.

esl_97_850_T5
Posts: 271
Joined: 19 June 2012
Year and Model: 1998 S70 GLT
Location: Knoxville, TN
Has thanked: 18 times
Been thanked: 27 times

Post by esl_97_850_T5 »

The first, most important, question is: "Can your ELM327 device handle the ELM327 commands which are necessary to setup the KWPD3B0 connections?"

Many cheap ELM327 devices implement enough of the ELM327 command set so they can perform OBDII Emission Diagnostics using the standard ISO 9141-2 connections which were legally mandated for the USA '96 850. However, some -- maybe many -- of those cheap ELM327 devices do not implement some of the ELM327 commands that are even in the very first ELM327 v1.0 version. That's a bummer.

To help determine if your ELM327 is KWPD3B0-capable, provide me a link describing your ELM327 (or pseudo-ELM327) device -- preferably a link to exactly what you bought.

Is it wifi, Bluetooth, USB, or what?

Also, identify how you have already used the ELM327 device to link to your iPhone. The main thing I'm looking for in that request is: What program have you used to connect the ELM327 device to your phone. Did it read the OBDII Emission Diagnostic DTCs (if any), Readiness Monitors, O2 sensors, Coolant Temp, RPM, etc?

While waiting for your response, I'll research a) EOBD-Facile, and b) if there's a free iPhone app that is roughly equivalent to one of these 3 free Android apps that can issue ELM327 commands and KWPD3B0 requests:

* Elm Basic by Drively.
- Very easy and intuitive.
- But does *not* have logging capability
- Probably best one to try initially.
- https://play.google.com/store/apps/deta ... lmterminal

* Elm327 OBD Terminal by Qbek (from Poland).
- Has logging capability.
- https://play.google.com/store/apps/deta ... inal&hl=en

* Elm 327 Terminal by OBD Scantech.
- Has the admob inconvenience. Was the original one that I knew about.
- Has logging capability.
- https://play.google.com/store/apps/deta ... h.Terminal

The ultimate first goal is to determine how your ELM327 device responds to the following six commands -- most especially the last two. That's the quickest way to rule out most of the cheap "purported"-ELM327 devices.

ATZ
ATL1
ATE1
ATI

ATAL
ATIIA 51

You can make this test on any platform -- Apple, Android, Windows, Linux, etc.

When you report back the results, make sure you include both the commands and their responses, exactly like they appear in your terminal emulator (or other computer program's log file).

There's very little reason to pay for the $14.99 EOBD-Facile facility if your ELM327 device can *not* issue the proper commands to connect and converse using the Volvo special protocol (that I call KWPD3B0).

So first let's determine if the ELM327 is KWPD3B0-capable.

We'll go from there...

esl_97_850_T5
1998 Volvo S70 GLT - 205.5K miles - S70 & M44 testbed in 2016-2019; traded 2019-07-15 (for spare time)
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09

robocam
Posts: 51
Joined: 12 April 2009
Year and Model: 850, 1996
Location: Missouri

Post by robocam »

Thanks so much for your reply. Here is the unit I purchased.

http://smile.amazon.com/gp/product/B00M ... ge_o02_s01

I will try the commands to see what happens. I found a free iPhone app that might work. It's called ELM327 WiFi Terminal OBD. Can I test those commands using any car? I won't see the Volvo until later this week.

I have used that iPhone app that I mentioned, and it was able to report at least engine RPM and coolant temperature. I think another app reported that it was ready for emissions testing. They also reported no trouble codes. The trial software on the included CD that ran on a PC could report how much fuel was being used per hour. Using the phone or PC, I was connecting using WiFi. Some of them reported battery voltage, but it was not correct. I measured over 13V at the battery but the app reported 12.3V (while the engine was running).
esl_97_850_T5 wrote:The first, most important, question is: "Can your ELM327 device handle the ELM327 commands which are necessary to setup the KWPD3B0 connections?"

Many cheap ELM327 devices implement enough of the ELM327 command set so they can perform OBDII Emission Diagnostics using the standard ISO 9141-2 connections which were legally mandated for the USA '96 850. However, some -- maybe many -- of those cheap ELM327 devices do not implement some of the ELM327 commands that are even in the very first ELM327 v1.0 version. That's a bummer.

To help determine if your ELM327 is KWPD3B0-capable, provide me a link describing your ELM327 (or pseudo-ELM327) device -- preferably a link to exactly what you bought.

Is it wifi, Bluetooth, USB, or what?

Also, identify how you have already used the ELM327 device to link to your iPhone. The main thing I'm looking for in that request is: What program have you used to connect the ELM327 device to your phone. Did it read the OBDII Emission Diagnostic DTCs (if any), Readiness Monitors, O2 sensors, Coolant Temp, RPM, etc?

While waiting for your response, I'll research a) EOBD-Facile, and b) if there's a free iPhone app that is roughly equivalent to one of these 3 free Android apps that can issue ELM327 commands and KWPD3B0 requests:

* Elm Basic by Drively.
- Very easy and intuitive.
- But does *not* have logging capability
- Probably best one to try initially.
- https://play.google.com/store/apps/deta ... lmterminal

* Elm327 OBD Terminal by Qbek (from Poland).
- Has logging capability.
- https://play.google.com/store/apps/deta ... inal&hl=en

* Elm 327 Terminal by OBD Scantech.
- Has the admob inconvenience. Was the original one that I knew about.
- Has logging capability.
- https://play.google.com/store/apps/deta ... h.Terminal

The ultimate first goal is to determine how your ELM327 device responds to the following six commands -- most especially the last two. That's the quickest way to rule out most of the cheap "purported"-ELM327 devices.

ATZ
ATL1
ATE1
ATI

ATAL
ATIIA 51

You can make this test on any platform -- Apple, Android, Windows, Linux, etc.

When you report back the results, make sure you include both the commands and their responses, exactly like they appear in your terminal emulator (or other computer program's log file).

There's very little reason to pay for the $14.99 EOBD-Facile facility if your ELM327 device can *not* issue the proper commands to connect and converse using the Volvo special protocol (that I call KWPD3B0).

So first let's determine if the ELM327 is KWPD3B0-capable.

We'll go from there...

esl_97_850_T5

PeteB
Posts: 880
Joined: 27 May 2014
Year and Model: 1996 Volvo 850 Wagon
Location: Connecticut, USA
Has thanked: 57 times
Been thanked: 11 times

Post by PeteB »

Just to be sure that I understand this, the ELM327 device connects to the computer
thought USB and the terminal emulator makes it look like a COM port to the user?
Because most newer laptops do not have COM ports.

I also see that there are mostly clones out there of the complete ELM327 and that
the manufacturer only sells the chip not complete boxes. Suggestions on where to
buy a real one?

Post Reply
  • Similar Topics
    Replies
    Views
    Last post