Are you stealing my lines Misha?
1998 v70 Service Light Reset 'Tool' ?
-
precopster
- Posts: 7543
- Joined: 21 Aug 2010, 00:20
- Year and Model: Lots
- Location: Melbourne Australia
- Has thanked: 8 times
- Been thanked: 128 times
I just got the oddest sensation of deja vu.
Are you stealing my lines Misha?

Are you stealing my lines Misha?
Current cars VW Transporter 2.5TDI, 2010 XC90 D5 R Design
- MrAl
- Posts: 1700
- Joined: 08 Apr 2015, 16:45
- Year and Model: v70, 1998
- Location: New Jersey
- Has thanked: 83 times
- Been thanked: 73 times
Hi,
Question:
How about disconnecting the battery for about 2 minutes or so?
Also, i forgot to mention that mine turns on when the engine is started, but then goes OFF after about 2 to 5 minutes after the engine starts. Is this normal?
Question:
How about disconnecting the battery for about 2 minutes or so?
Also, i forgot to mention that mine turns on when the engine is started, but then goes OFF after about 2 to 5 minutes after the engine starts. Is this normal?
I’ve been driving a Volvo long before anyone ever paid me to drive one.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
- misha
- Posts: 5437
- Joined: 07 Dec 2008, 16:09
- Year and Model: 2010 Volvo S80 D5
- Location: Serbia
- Has thanked: 155 times
- Been thanked: 432 times
Completelly normal.It can't be reset with disconnecting battery.Special scan tool is required,like volvo fault code reader(vol-fcr).
2010 S80 D5 / restyling / fully equipped / Twin turbo / Savile Gray Metallic (492)
History of Volvos in the family:
'71 144 S
'73 144 De Luxe
'78 244 DL
'78 244 DL
'79 244 GLE
'85 340 GLS
'97 850 2.5 20v / fully equipped / Motronic 4.4 from the factory / upgraded with S,V,C,XC70 instrument cluster / polar white wagon
History of Volvos in the family:
'71 144 S
'73 144 De Luxe
'78 244 DL
'78 244 DL
'79 244 GLE
'85 340 GLS
'97 850 2.5 20v / fully equipped / Motronic 4.4 from the factory / upgraded with S,V,C,XC70 instrument cluster / polar white wagon
- MrAl
- Posts: 1700
- Joined: 08 Apr 2015, 16:45
- Year and Model: v70, 1998
- Location: New Jersey
- Has thanked: 83 times
- Been thanked: 73 times
Hi,
Ok thanks misha, then i wont bother playing with the battery, which brings up another question i'll ask in another thread.
Ok thanks misha, then i wont bother playing with the battery, which brings up another question i'll ask in another thread.
I’ve been driving a Volvo long before anyone ever paid me to drive one.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
-
esl_97_850_T5
- Posts: 271
- Joined: 19 Jun 2012, 10:53
- Year and Model: 1998 S70 GLT
- Location: Knoxville, TN
- Has thanked: 18 times
- Been thanked: 27 times
MrAI,MrAl wrote:...can anyone get information on the protocol that Volvo uses for communicating with the device (such as the computer) that resets the service light? If so, i will gladly design a reset tool...
I would need the complete protocol, such as any handshaking, etc...
I would also be willing to hand the finished, tested design to others if they wanted to build one too, or even get someone to build a bunch of them and sell them for $10 USD or something like that to anyone here who wants one...
If you are still interested in developing a cheap, handheld, microcontroller-based device to reset the SERVICE light, and need protocol details, read on...
1. If your microcontroller is interfaced to an ELM327 device, then item 2 in https://www.matthewsvolvosite.com/forums ... 28#p332575
includes a complete list of the ELM327 commands and KWPD3B0 requests needed to reset the SERVICE light. You might need to use ATE0 instead of ATE1 with your microcontroller. If you need an example of seeing how this has been scripted with Javascript, you can download volvo850diag.zip, extract the files, search the included .js file for "B230" and "ATZ-based Reset SRI". Using the ELM327 approach, it is very important to first setup the ELM327 with all the special ELM327 commands listed in item 2 section of the p332575 post. The advantage of the ELM327 approach is that it will do all the 5-baud, 10400-baud Slow Init, ISO 9141-2 style, KWPD3B0 connection for you. And that's extremely convenient.
2. If instead your microcontroller will be serially interfaced in a more simpler fashion, you'll need to complete a 5-baud, 10400-baud KWPD3B0 Slow Init connection first. It is similar to an ISO 9141-2 style connection as far as timing constraints go, but most of the bytes that are exchanged are different.
I'll leave it to you to do your research on how a standard ISO 9141-2 init works, including understanding the important timing constraints.
As far as the bytes that are different in the KWPD3B0 init...
For the SERVICE Light Reset, you'll be talking to the COMBI (ECU 51). So the 5-baud, 10400-baud initialization will involve the following bytes (represented here in hex):
51 55 D3 B0 4F AE
^^ vv vv vv ^^ vv
The ^^ bytes are sent by your microcontroller.
The vv bytes are sent by the COMBI.
The 1st byte is sent at 5-baud.
All remaining bytes and all subsequent communication is at 10400-baud.
After receiving the 6th byte of the KWPD3B0 Slow Init sequence -- eg, the AE inverse (possibly adapted for odd parity) of the 51 address, in our case -- I'd suggest a delay of 0.5 to 1.0 seconds before proceeding.
Then you'll send the ECU 51 B030 and B230 requests (to accomplish the clearing of the SERVICE Reminder Interval counters and consequent resetting of the SERVICE light). In volvo850diag, I delay 618 ms from the end of sending B030 till the beginning of sending B230, and I delay 2019 ms after sending B230 before sending anything else. Those delays seem to work fine.
On some cars there is a positive F030 response to the B030 request, but no response to the B230 request. That situation is documented (at least for ELM327 devices) in item 2 of the post I referred to earlier.
But on other cars there is a positive F230 response to the B230 request, but a negative response (7F B0 12) to the B030 request.
What I'll now show is what your microcontroller might see in those situations. I'll include both the requests sent by the microcontroller and the responses received by the microcontroller (from ECU 51).
Case #1 -- the one I've seen most frequently in kwpd3b0_interpreter:
83 51 13 B0 30 C7
^^ ^^ ^^ ^^ ^^ ^^
83 13 51 F0 30 07
vv vv vv vv vv vv
83 51 13 B2 30 C9
^^ ^^ ^^ ^^ ^^ ^^
Then no response during the 2 second delay after sending the ECU 51 B230 request.
Case #2a:
83 51 13 B0 30 C7
^^ ^^ ^^ ^^ ^^ ^^
84 13 51 7F B0 12 29
vv vv vv vv vv vv vv
83 51 13 B2 30 C9
^^ ^^ ^^ ^^ ^^ ^^
83 13 51 F2 30 09
vv vv vv vv vv vv
Case #2b:
83 51 13 B0 30 C7
^^ ^^ ^^ ^^ ^^ ^^
84 13 51 7F B0 12 29
vv vv vv vv vv vv vv
83 51 13 B2 30 C9
^^ ^^ ^^ ^^ ^^ ^^
84 13 51 7E B2 23 3B (this is a "7E B2 23" temporary response which means "I'm not finished yet")
vv vv vv vv vv vv
83 13 51 F2 30 09
vv vv vv vv vv vv
I suspect that the case 2a and 2b cases could be simplified by not sending the B030 request, but you would have to know what cars are behaving that way. The more all-inclusive way to handle it is just to handle all 3 of the cases just listed.
For the purposes of your microcontroller based SERVICE Light Reset function, you can probably forget about having to send a KWPD3B0 Keepalive before any period of 5 seconds of inactivity, since you'll probably complete the SERVICE Light Reset function within 5 seconds of having finished the Slow Init sequence. So we'll forget about adding the complexity of sending the KWPD3B0 Keepalive requests:
82 51 13 A1 87
Hope this helps.
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
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09
- MrAl
- Posts: 1700
- Joined: 08 Apr 2015, 16:45
- Year and Model: v70, 1998
- Location: New Jersey
- Has thanked: 83 times
- Been thanked: 73 times
Hello there,
Thanks for the info, this is all very interesting, but all completely new to me, so i have a few little questions i'd like to ask...
Are you saying that the ELM327 is a device that you buy and then send commands to it (commands similar to the old Hayes AT commands) with another programmable device (PC, Tablet, other micro controller) ?
If so, can i get an ELM327 device that can connect to another device with wires similar to a wired RS232 port?
I ask because i saw something on Amazon that might be what you were talking about, but it was Bluetooth, which i would not want at all. That's all if i understand this even a little bit so far
If this is possible i am pretty sure i can emulate AT commands on a low end uC chip.
Thanks for the info, this is all very interesting, but all completely new to me, so i have a few little questions i'd like to ask...
Are you saying that the ELM327 is a device that you buy and then send commands to it (commands similar to the old Hayes AT commands) with another programmable device (PC, Tablet, other micro controller) ?
If so, can i get an ELM327 device that can connect to another device with wires similar to a wired RS232 port?
I ask because i saw something on Amazon that might be what you were talking about, but it was Bluetooth, which i would not want at all. That's all if i understand this even a little bit so far
If this is possible i am pretty sure i can emulate AT commands on a low end uC chip.
I’ve been driving a Volvo long before anyone ever paid me to drive one.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
-
esl_97_850_T5
- Posts: 271
- Joined: 19 Jun 2012, 10:53
- Year and Model: 1998 S70 GLT
- Location: Knoxville, TN
- Has thanked: 18 times
- Been thanked: 27 times
Yes. ELM327 chip commands begin with AT, but they are not Hayes AT modem commands, but instead are Elm Electronics ELM327 AT commands. The AT prefix is the ELM327's convention to differentiate the ELM327 commands from requests that are sent directly to the car (after converting the requests' hexadecimal digits to binary bytes).MrAl wrote:...Are you saying that the ELM327 is a device that you buy and then send commands to it (commands similar to the old Hayes AT commands) with another programmable device (PC, Tablet, other micro controller) ?
If so, can i get an ELM327 device that can connect to another device with wires similar to a wired RS232 port?
I ask because i saw something on Amazon that might be what you were talking about, but it was Bluetooth, which i would not want at all. That's all if i understand this even a little bit so far
If this is possible i am pretty sure i can emulate AT commands on a low end uC chip.
You will not be emulating AT commands. You will simply be sending regular 8-bit bytes on a serial line, ending each line with a Carriage Return byte. Some of the lines will start with AT commands in order to control the ELM327 chip. Some of the lines that you send to the ELM327 will be composed strictly of an even number of the 16 ASCII hexadecimal digits characters (with optional intervening space characters).
Clicking here you'll find several links to explore the actual ELM327 chip, followed by links to a picture of an ELM327 USB cable that I use, followed by links to various drivers.
Since you don't want to go the popular Bluetooth route, you could try the USB route or the RS232 route. To look at ELM327 DB9 RS232 cables, search Amazon (or eBay) for "ELM327 OBD2 DB9 RS232". To look at ELM327 USB cables, search Amazon (or eBay) for "elm327 usb" (get v1.4 or higher) or "OBDLink SX" (focus on the red cable from ScanTool.net).
Explore the pages feeding from http://jonesrh.info/volvo850/ for more details on using the OBDII port on the '96-'97 Volvo 850 and '98 Volvo S70/V70/etc.
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
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09
- MrAl
- Posts: 1700
- Joined: 08 Apr 2015, 16:45
- Year and Model: v70, 1998
- Location: New Jersey
- Has thanked: 83 times
- Been thanked: 73 times
Hi,
Yes, what i mean to say was that i would emulating a terminal
This sounds much easier than i thought, and i already thought it would be pretty easy. I'll just have to read up on the timing and all and the proper bytes to send etc.
Originally though i just wanted to go with a single micro controller solution, but it sounds like that might be harder to do. I am wondering what the ELM327 is doing for us exactly.
I have to wonder now what kind of processor they use in these cars. Is it a run of the mill microcontroller or CPU or a highly specialized single board computer made from more discrete logic?
Thanks for all the info. That will help a lot.
Also, i am seeing a lot of DB9 to RS232 cables but havent found one with ELM built in yet. They say you use an ELM scanner with those cables.
Yes, what i mean to say was that i would emulating a terminal
This sounds much easier than i thought, and i already thought it would be pretty easy. I'll just have to read up on the timing and all and the proper bytes to send etc.
Originally though i just wanted to go with a single micro controller solution, but it sounds like that might be harder to do. I am wondering what the ELM327 is doing for us exactly.
I have to wonder now what kind of processor they use in these cars. Is it a run of the mill microcontroller or CPU or a highly specialized single board computer made from more discrete logic?
Thanks for all the info. That will help a lot.
Also, i am seeing a lot of DB9 to RS232 cables but havent found one with ELM built in yet. They say you use an ELM scanner with those cables.
I’ve been driving a Volvo long before anyone ever paid me to drive one.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
That's probably because I've been driving one since 2015 and nobody has offered to pay me yet.
1998 v70, non turbo, FWD, base model, on the road from April 2nd, 2015 to July 26, 2023.
-
esl_97_850_T5
- Posts: 271
- Joined: 19 Jun 2012, 10:53
- Year and Model: 1998 S70 GLT
- Location: Knoxville, TN
- Has thanked: 18 times
- Been thanked: 27 times
MrAl,
1. The ELM327 does a lot. Follow the links and begin familiarizing yourself with the ELM327 v1.4 (or later) data sheet. I say v1.4 (even though the latest ELM327 version is v2.1), since most of the Chinese ELM327 clones -- those that usually say "ELM327 v1.5" -- are functionally like an ELM327 v1.4.
The biggie items to me are:
a. The ELM327 allows you to send and receive ASCII text, so you don't have to deal with binary bytes, and you can consequently begin communicating very quickly with an ELM327 (and hence the car) by using a simple terminal emulator to talk with the ELM327.
b. SUPER BIGGIE!!!! -- The ELM327 performs the 5-baud, 10400-baud ISO 9141-2 initialization for you. You don't have to worry about how to perform a 5-baud init with hardware that has no built-in ability to program a 5-baud rate, consequently, having to resort to fiddling a couple of lines every 200 ms to simulate the bits. And you don't have to research the bulk of the init-related timing issues. The ELM327 performs all that dirty work for you!!! You just wait for the ELM327 to respond:
BUS INIT: ...OK
if you've setup your protocol as ATSP 3 (and you've issued all the proper pre-init ELM327 commands). Or you could just wait for the ELM327 to silently connect when the first data is sent if you setup your protocol as ATSP 3A or ATSP A3 (and you've issued all the proper pre-init ELM327 commands).
No other protocols should be attempted with the '96-'98 850/S70/V70/etc if you want your microcontroller-based diagnostic device to behave reliably.
c. SUPER BIGGIE!!! The ELM327 can communicate with a whole slew of protocols. If you have a CAN based car, an ISO 9141-2 based car, and some other car which uses yet another protocol, you can use the ELM327 with all 3 of those cars.
2. Do you not have the capability with however you plan on engineering your microcontroller-based platform to output to either a DB9 port or a USB port? The searches I gave you presumed one of those two situations.
If you do the Amazon and eBay searches exactly like I specified, you will see ELM327 OBD2 DB9 RS232 cables that have an OBDII connector on one end, usually have the ELM327 imbedded in that piece of rubber or plastic that composes the OBDII connector, and has a DB9 connector on the other end.
Or you would see ELM327 OBD2 USB cables that have the same makeup, except that in addition to the ELM327 being imbedded in the connector, there is an additional USB-to-serial chip in there also (eg, CP210x, FTDI, or some other one), and of course the USB cable will have a USB male connector on the other end instead of a DB9 connector.
esl_97_850_T5
1. The ELM327 does a lot. Follow the links and begin familiarizing yourself with the ELM327 v1.4 (or later) data sheet. I say v1.4 (even though the latest ELM327 version is v2.1), since most of the Chinese ELM327 clones -- those that usually say "ELM327 v1.5" -- are functionally like an ELM327 v1.4.
The biggie items to me are:
a. The ELM327 allows you to send and receive ASCII text, so you don't have to deal with binary bytes, and you can consequently begin communicating very quickly with an ELM327 (and hence the car) by using a simple terminal emulator to talk with the ELM327.
b. SUPER BIGGIE!!!! -- The ELM327 performs the 5-baud, 10400-baud ISO 9141-2 initialization for you. You don't have to worry about how to perform a 5-baud init with hardware that has no built-in ability to program a 5-baud rate, consequently, having to resort to fiddling a couple of lines every 200 ms to simulate the bits. And you don't have to research the bulk of the init-related timing issues. The ELM327 performs all that dirty work for you!!! You just wait for the ELM327 to respond:
BUS INIT: ...OK
if you've setup your protocol as ATSP 3 (and you've issued all the proper pre-init ELM327 commands). Or you could just wait for the ELM327 to silently connect when the first data is sent if you setup your protocol as ATSP 3A or ATSP A3 (and you've issued all the proper pre-init ELM327 commands).
No other protocols should be attempted with the '96-'98 850/S70/V70/etc if you want your microcontroller-based diagnostic device to behave reliably.
c. SUPER BIGGIE!!! The ELM327 can communicate with a whole slew of protocols. If you have a CAN based car, an ISO 9141-2 based car, and some other car which uses yet another protocol, you can use the ELM327 with all 3 of those cars.
2. Do you not have the capability with however you plan on engineering your microcontroller-based platform to output to either a DB9 port or a USB port? The searches I gave you presumed one of those two situations.
If you do the Amazon and eBay searches exactly like I specified, you will see ELM327 OBD2 DB9 RS232 cables that have an OBDII connector on one end, usually have the ELM327 imbedded in that piece of rubber or plastic that composes the OBDII connector, and has a DB9 connector on the other end.
Or you would see ELM327 OBD2 USB cables that have the same makeup, except that in addition to the ELM327 being imbedded in the connector, there is an additional USB-to-serial chip in there also (eg, CP210x, FTDI, or some other one), and of course the USB cable will have a USB male connector on the other end instead of a DB9 connector.
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
1997 Volvo 854 T5 - 147K miles - 850 testbed in 2012-2017; junked 2017-09
-
- Similar Topics
- Replies
- Views
- Last post
-
- 4 Replies
- 3950 Views
-
Last post by charleskennedy23
-
- 13 Replies
- 6233 Views
-
Last post by esl_97_850_T5
-
- 7 Replies
- 2016 Views
-
Last post by precopster
-
- 1 Replies
- 3422 Views
-
Last post by MadeInJapan
-
- 2 Replies
- 1407 Views
-
Last post by E Showell






