Provided by: obdgpslogger_0.16-1.3build1_amd64 bug


       obdsim - Simulate an ELM327 device


       obdsim [ options ]


       obdsim simulates an ELM327 device connected to one or more ECUs


       -g|--generator <generator-name>
              Choose  a  generator.  A list of valid ones is output by --help. See section titled
              MULTIPLE ECUS below for more information.

       -s|--seed <seed>
              Generator-specific  seed.  See  section  titled  PLUGIN  SEEDS   below   for   more
              information. The -s option must immediately follow the generator

       -d|--customdelay <delay-in-ms>
              Generator-specific  delay.  This is effectively a processing time for the ECU it is
              being added for. The -d option must immediately follow the generator

              Print a terse list of compiled in generators

              Print a list of all protocols

       -p|--protocol <OBDII protocol>
              Launch as this protocol. Protocol is of form [A]{digit}, where optional "A"  prefix
              means automatic and the digit is from --list-protocols

       -n|--benchmark <time>
              Change  time to print samplerate to stdout. 'samples' are successful value returns,
              not AT commands or NO DATA/? responses. 'queries' are any and all  client  queries.
              Argument is in seconds, zero to disable.

       -q|--logfile <logfile>
              Write all serial comms to this logfile

              Takes  an  [admittedly  weak  and  hard-coded]  attempt  at  launching obdgpslogger
              attached to the simulator in question. POSIX only.

              Takes an [admittedly weak and hard-coded] attempt at launching screen  attached  to
              the simulator in question. To close that screen window, use ctrl-a, k. POSIX only.

              Instead of opening a pty, try to open this entry in /dev instead. POSIX only.

       -w|--com-port <comport>
              Specify virtual com port to be used on windows [eg "COM1"]. Windows only.

       -e|--genhelp <generator-name>
              Print out help for the specified generator, and exit.

       -V|--elm-version <version string>
              Pretend to be this when someone resets with ATZ or similar

       -D|--elm-device <device string>
              Pretend to be this when someone calls AT@1

              Listen on bluetooth. See section titled BLUETOOTH below

              Print out version number and exit.

              Print out help and exit.


       Each plugin takes a seed. Here's what those seeds are:

       Random [Optional] It's a random seed

       Cycle  [Optional] [cycle time in seconds[,number of gears]]

       Logger [Obligatory] Filename of an obdgpslogger logfile

       dlopen [Obligatory] Filename of a dynamically linked library
              [Optional] ",subseed" optional seed to pass to dlopen'd generator.

       Socket [Obligatory] ip-or-hostname:port

       DBus   [Obligatory] Filename of a configuration file for the plugin

              [Irrelevant] Ignores the passed seed

       Error  [Irrelevant] Ignores the passed seed


       OBDSim supports multiple simulated engine control units (ECUs).

       For  each  generator  you  specify  on  the  command-line, it creates an ECU. To seed each
       generator, the seed must immediately follow that generator on the command-line.

       For example, this creates a sim with three ecus. The first ecu is  simulating  the  passed
       logfile,  the  second is generating random numbers with the seed 42, and the gui generator
       isn't using a seed.

       obdsim -g Logger -s ces2010.db -g Random -s 42 -g gui_fltk


       OBDSim does not yet support the full set of ELM327 commands. The ELM327  datasheet  covers
       all  these  in  detail,  but a short description of each AT command currently supported by
       obdsim is here:

              Adaptive timing off/on/vigorous

       D{0,1} Display DLC [data bytes] on/off

       L{0,1} Linefeed on/off [always passes a CR]

       H{0,1} Headers on/off

       S{0,1} Space separators on/off

       E{0,1} Command echo on/off

              Set protocol. Optional 'A' prefix on number means "automatic"

              Try protocol. Same behaviour as SP[a]{0-9,A-C}.  Always  succeeds  if  protocol  is

       ST{n}  Set timeout. Hex value is multiplied by 4, and measured in ms

       @1     Request the elm device description

       @2     Request the elm device identifier

       @3     Set the elm device identifier

       CVdddd Calibrate the current battery voltage to dd.dd

       RV     Request the current battery voltage

       D      Reset to defaults

       DP     Describe protocol

       DPN    Describe protocol by number

       I      Request the device version id

       Z      Reset the device

       WS     Reset the device, warm start

       EXIT   Not  really  an  AT  command;  sending  this tells obdsim to exit. Mostly useful in
              conjunction with --launch-screen


       At time of writing, bluetooth is only supported on Linux. In order to make bluetooth work,
       you  may  need  to  set  your  bluetooth  device  to  advertise  that  it's capable of the
       appropriate serial protocols.

       On my system here, I use the following two commands to set it temporarily [you'll want  to
       substitute your own hardware address]:

              sudo rfcomm bind 0 00:02:72:14:41:C4 1
              sudo sdptool add SP


       The  default  sim ELM version and device both claim to be OBDGPSLogger.  Some software may
       not like this. You may find examples of popular hardware to be useful:

              obdsim -V ELM327\ v1.3\ compatible -D OBDPros\ LLC\ v3

              obdsim -V ELM327\ v1.3a -D SCANTOOL.NET\ LLC


       obdgpslogger(1), obd2kml(1), obd2csv(1), obd2gpx(1), obdgui(1),  obdlogrepair(1),  obdsim-


       Gary "Chunky Ks" Briggs <>