ELM327
Using Higher RS232 Baud Rates
The RS232 serial interface has been maintained
throughout the ELM OBD products, largely due to its
versatility. Older computers, microprocessors and
PDAs can use it directly, as can USB, Bluetooth,
ethernet and wifi devices. It is simply one of the most
versatile interfaces available.
Most people will construct their ELM327 circuits
with an RS232 interface, mainly because it is relatively
easy and inexpensive to do. A circuit such as the one
shown in Figure 9 requires very few components and
works extremely well at speeds of up to 57600 bps.
Depending on your interface’s RS232 voltages, your
wiring practices, and your choice of components, it
may also work well at speeds as high as 115200 bps,
but that is the approximate limit of such a circuit, and
any design using this speed should be thoroughly
tested.
essentially zero cost. If you are developing such an
interface, refer to page 70 for more details.
The default configuration for the ELM327 provides
an RS232 data rate of either 9600 baud, or 38400
baud, depending on the voltage level at pin 6 during
power up or reset. While the 9600 baud rate is not
adjustable, the 38400 one is (beginning with v1.2 of
the IC). There are two ways that the rate can be
changed – either permanently with a Programmable
Parameter, or temporarily with an AT command.
Programmable Parameter ‘0C’ is the memory
location that allows you to store a new baud rate which
replaces the 38.4 kbps high speed rate. The value is
stored in ‘non-volatile’ memory (EEPROM) that is not
affected by power cycles or resets (but changing this
value may affect the operation of some software
packages, so be careful how you use it).
Users that would like to operate at speeds in the
range of 115200 bps or higher may wish to look at
some of the single IC solutions that are available.
These include devices such as the ADM232A from
Analog Devices (www.analog.com), or the popular
MAX232 series of ICs from Maxim Integrated Products
(www.maximintegrated.com). These are all excellent
devices that can be used for speeds of up to 115.2
kbps. We do caution that many of these types of
devices are only rated for operation up to 120 kbps,
however, so may not be suitable for higher data rates -
be sure to check the manufacturers data sheet before
committing to a design.
An RS232 interface needs relatively large voltage
swings, which are difficult to maintain at higher rates
with large cable capacitances to contend with. (A
typical interface is often limited to about 230.4 kbps
under ideal conditions.) If you need to operate the
ELM327 at these speeds or higher, it is recommended
that you consider alternatives.
If you store a new value in PP 0C, then enable it,
and if pin 6 is at a high level during the next powerup,
then your stored rate will become the new data rate. (If
it has not been enabled, the rate will revert to the
factory default of 38.4 kbps.) As an example, perhaps
you would like to have the ELM327 use a baud rate of
57.6 kbps, rather than the factory setting of 38.4 kbps.
To do this, determine the required value for PP 0C,
store this value in PP 0C, and then enable the PP.
The value stored in PP 0C is actually an internal
divisor that is used to determine the baud rate (it will
be 4000 kbps divided by the value of PP 0C). To
obtain a setting of 57.6, a baud rate divisor of 69 is
required (4000/69 is approximately 57.6). Since 69 in
decimal is 45 in hexadecimal, you need to tell the
ELM327 to set the value of PP 0C to 45, with this
command:
>AT PP 0C SV 45
then enable the new value for use:
>AT PP 0C ON
One popular alternative is a USB data connection,
which is capable of very high data transfer rates.
Several manufacturers offer special ‘bridge’ circuits
that simplify connecting an RS232 device (such as the
ELM327) directly to the USB bus. Examples are the
CP2102 from Silicon Labs (www.silabs.com) or the
from that point (until PP 0C is turned off), the default
data rate will be 57.6K, and not 38.4K. Note that the
value that you write does not become effective until
the next full reset (a power off/on, AT Z, or MCLR
pulse).
FT232R
from
Future
Technology
Devices
(www.ftdichip.com). If planning to use the higher baud
rates (ie up to 500 kbaud), these interfaces are
essential.
We are often asked if it is possible to use a direct
connection to a microprocessor. That is certainly an
option, and one that allows a full speed connection at
If you are designing your own circuitry, you will
know what your circuit is capable of, and can assign a
value to PP 0C. Software developers will not usually
know what hardware is to be connected, however, so
will not know what the limitations are. For these users,
we have provided the BRD command.
ELM327DSI
Elm Electronics – Circuits for the Hobbyist
www.elmelectronics.com
63 of 82