ELM320
Resetting Trouble Codes
The ELM320 is quite capable of resetting
diagnostic trouble codes, as this only requires issuing
a mode 04 command. The consequences should
always be considered before sending it, however, as
more than the MIL (or ‘Check Engine’ lamp) will be
reset. In fact, issuing a mode 04 will:
- reset the number of trouble codes
- erase any diagnostic trouble codes
- erase any stored freeze frame data
- erase the DTC that initiated the freeze frame
- erase all oxygen sensor test data
- erase mode 06 and 07 test results
Clearing of all of this information is not unique to
the ELM320, as it occurs whenever a scan tool is used
to reset your codes. Understand that the loss of this
data could cause your car to run poorly for a short time
while the system recalibrates itself.
To avoid inadvertently erasing stored information,
the SAE specifies that scan tools must verify that a
mode 04 is intended (“Are you sure?”) before actually
sending it to the vehicle, as all trouble code
information is immediately lost when the mode is sent.
Recall, though, that the ELM320 does not monitor the
content of messages, so it will not know to ask for
confirmation of the mode request - this would have to
be the duty of a software interface if one is written.
As stated, to actually erase diagnostic trouble
codes, one need only issue a mode 04 command. A
response of 44 from the vehicle indicates that the
mode request has been carried out, the information
erased, and the MIL turned off. Some vehicles may
require a special condition to occur (the ignition on but
the engine not running, etc.) before it will respond to a
mode 04 command.
That is all there is to clearing the codes. Once
again, be very careful not to inadvertently issue an 04!
Error Messages
When hardware or data problems are
encountered, the ELM320 will respond with one of the
following short messages. Here is a brief description of
each…
BUS BUSY
The ELM320 tried to send the mode command or
request for about 0.5 seconds without success.
Messages are all assigned priorities, which allows
one message to take precedence over another.
More important things may have been going on, so
try re-issuing your request.
BUS ERROR
An attempt was made to send a message, and the
data bus voltage did not respond as expected. This
could be because of a circuit short or open, so check
all of your connections and try once more.
<DATA ERROR
The error check result (CRC byte) was not as
expected, indicating a data error in the line pointed
to (the ELM320 still shows you what it received).
There could have been a noise burst which
interfered, or a circuit problem. Try re-sending the
request.
NO DATA
There was no response obtained from the vehicle
before a timeout occurred. The mode requested may
not be supported, so the vehicle ignored you, or the
timeout value was too short, or possibly the ignition
key needs to be turned to ‘on’. Try issuing a 01 00
command to be sure that the vehicle is ready to
receive commands, and if that works, try adjusting
the timeout to a longer value using the Set Timeout
AT command.
DATA ERROR
There was an incomplete message received, and it
was not enough to form a meaningful response. This
may have been caused by the key being turned off,
or a loose connection, for example. Any monitoring
that was in progress will have been aborted.
?
This is the standard response for a misunderstood
command received on the RS232 bus. Usually it is
due to a typing mistake.
ELM320DSC
Elm Electronics – Circuits for the Hobbyist
< http://www.elmelectronics.com/ >
11 of 16