CanCmd Command line tool

:!: This is old documentation cancmd is replaced by vscpcmd

WIN32 and Linux

This is a simple yet very capable console based application that can be very useful. With it you can send and receive both CAN and VSCP messages (Level I and Level II). The following is a brief description of cancmd

First of all you can get help with /h

If you type

cancmd /h on Windows
cancmd -h on Linux

you get the help screen.

Usage: cancmd [/i <num>] [/d <str>] [/p <num>] [/c <num>] [/t <num>] [/n <nu
  [/l <num>] [/g <str>] [/m <str>] [/h] [/v] [/e] [/r] [/z]
  /i, --id=<num>        CAN id (required for CAN package).
  /d, --data=<str>      Comma separated CAN or VSCP data enclosed in quotes
                      (Required for CAN and VSCP packages).
  /p, --priority=<num>  CAN or VSCP priority (defaults to 0).
  /c, --class=<num>     VSCP Level I and Level II class
  /t, --type=<num>      VSCP Level I and Level II type
  /n, --count=<num>     # of messages to receive send
  /l, --level=<num>     Selects protocol level (1 or 2)
  /g, --guid=<str>      Comma separated VSCP GUID address.
  /m, --value=<str>     Enter VSCP value as data.
  /h, --help            Shows this message
  /v, --verbose         Vebose mode
  /e, --extended        Marks a package with an extended id.
  /r, --receive         Receive mode.
  /z, --test            Interface test mode (for canald developers only).

Note that this is under windows. On Unix “-” is used instead on “/” while the long form of the switch/option is the same on both platforms. In the rest of this text we use the long form.

The default for cancmd is to send a message so

cancmd –id=234

Will send a CAN message with no data and id = 234 and no data through the daemon interface.


A message with a standard id was sent. If we want an extended id we use:

cancmd –id=234 --extended

If we also want to send data we can use:

cancmd –id=234 –extended –data=”1,2,3,4,5,6,7,8”

If we want to burst this data out ten times just add –count:

cancmd –id=234 –extended –data=”1,2,3,4,5,6,7,8” --count=10

You can add –verbose if you want more informative text.

–test is a simple developers test for the daemon software that probably does not have any practical usage other then for developers.

To receive data use:

cancmd –receive

Data will now be received until aborted with ctrl+c

The output is something like this:


You can also here add –count=n to just receive n messages.

The rest of the command switches are for VSCP usage. FIXME

m switch ===

The m switch let you enter VSCP data values is a simple way. It has the following format


  x - Data Encoding. (see VSCP specification)
  t - Format ( 0 = default, typically Kelvin, Celsius etc. ).
  v - value ( ex. 2.45 )
tools/cancmd_documentation.txt · Last modified: 2018/02/08 17:47 (external edit)
[unknown button type]
Except where otherwise noted, content on this wiki is licensed under the following license: Public Domain
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki