to the ELM329 were received correctly. The default is
E1 (or echo on).
FC SD [1-8 bytes] [ Flow Control Set Data to… ]
The data bytes that are sent in a CAN Flow
Control message may be defined with this command.
One to eight data bytes may be specified, with the
remainder of the bytes in the message being
automatically set to the default CAN filler byte, if more
bytes are required by the protocol. Note that no
formatting bytes (PCI, etc.) are added by this
command - the data is used exactly as provided,
except for the filler bytes. AT FC SD is used with Flow
Control modes 1 and 2.
FC SH xyz [ Flow Control Set Header to… ]
The header (or more properly ‘CAN ID’) bytes
used for CAN Flow Control messages can be set using
this command. Only the right-most 11 bits of those
provided will be used - the most significant bit is
always ignored. This command only affects Flow
Control mode 1.
FC SH wwxxyyzz [ Flow Control Set Header to… ]
This command is used to set the header (or ‘CAN
ID’) bits for Flow Control responses with 29 bit CAN ID
systems. Since the 8 nibbles define 32 bits, only the
right-most 29 bits of those provided will be used - the
most significant three bits are always ignored. This
command only affects Flow Control mode 1.
FC SM h [ Flow Control Set Mode to h ]
This command sets how the ELM329 responds to
First Frame messages when automatic Flow Control
responses are enabled. The single digit provided can
either be ‘0’ (the default) for fully automatic responses,
‘1’ for completely user defined responses, or ‘2’ for
user defined data bytes in the response. Note that FC
modes 1 and 2 can only be enabled if you have
defined the needed data and possibly ID bytes. If you
have not, you will get an error message. More
complete details and examples can be found in the
Altering Flow Control Messages section (page 56).
H0 and H1 [ Headers off or on ]
These commands control whether or not the
header (ID and possibly DLC) bytes of information are
shown in the responses from the vehicle. These are
not normally shown by the ELM329, but may be of
interest (especially if you receive multiple responses
and wish to determine what modules they were from).
Turning the headers on (with AT H1) actually
shows more than just the header bytes – you will see
the complete message as transmitted, including the
PCI bytes, and the CAN data length code (DLC) if it
has been enabled. The current version of this IC does
not display the CAN CRC code.
I [ Identify yourself ]
Issuing this command causes the chip to identify
itself, by printing the startup product ID string (currently
‘ELM329 v2.1’). Software can use this to determine
exactly which integrated circuit it is talking to, without
having to reset the IC.
IGN [ read the IgnMon input level ]
This command reads the signal level at pin 15. It
assumes that the logic level is related to the ignition
voltage, so if the input is at a high level, the response
will be ‘ON’, and a low level will report ‘OFF’. This
feature is most useful if you wish to perform the power
control functions using your own software. If you
disable the automatic response to a low input on this
pin (by setting bit 2 of PP 0E to 0), then pin 15 will
function as the RTS input. A low level on the input will
not turn the power off, but it will interrupt any OBD
activity that is in progress. All you need to do is detect
the ‘STOPPED’ message that is sent when the
ELM329 is interrupted, and then check the level at pin
15 using AT IGN. If it is found to be OFF, you can
perform an orderly shutdown yourself.
IN1 [ read the level at INput 1 ]
This command causes the ELM329 to read the
logic level at pin 12. If it is at a low level, ‘0’ will be
reported, while a high level results in a ‘1’. The level
shown is subject to the hysteresis effects of the
Schmitt trigger wave shaping of the input circuitry.
IN2 [ read the level at INput 2 ]
This command causes the ELM329 to read the
logic level at pin 13. If it is at a low level, ‘0’ will be
reported, while a high level results in a ‘1’. The level
shown is subject to the hysteresis effects of the
Schmitt trigger wave shaping of the input circuitry.
17 of 83
ELM329DSC Elm Electronics – Circuits for the Hobbyist
www.elmelectronics.com
AT Command Descriptions (continued)