Using Updater via CLI

BrainStem firmware can be modified using the Updater CLI utility. This method is often very useful in remote installations and large scale automation systems as it is easily invoked with a simple script. Using your computer’s operating systems terminal interface, navigate to the “Bin” folder located in the Brainstem Dev Kit download. Downloads for all of Acroname’s products can be found at Download Center under the Support tab.

Parameters and commands available for the Updater may be found by running the utility without any commands or arguments (When running Updater on a Mac or Linux you will need to use “./”. Windows does not require this).

Note: The following examples will be preformed from a Mac.

$> ./Updater

If you would like additional help information, including examples you can use the -H command.

$> ./Updater -H


Application:Updater
	Version:Version: 1.0 Dec 31 2015 11:00:34
	BrainStem 2.1.5
	Copyright (C) 1994-2015, Acroname Inc.

Updater [options]
  BrainStem Update and Maintenance Application

  Parameters to commands:
     -b <build number>        - Build version of the firmware to transfer.
                                [Default: latest version available].
     -d <device>              - Device serial number of the device to access.
     -t <transport type>      - communications method [USB,TCP,RECOVER].
     -f <bird file>           - Firmware file to be transferred to device.
     -r <router serial#>      - indirect connection through router device
     -s <serial port>         - name of serial port to use for recovery

     -l 'log message'         - message to place in device history log
     -a <mode>                - set log file access mode [A, X].
                                Override the default append mode [A] with
                                overwrite mode [X].
     -k <filename>            - log messages written into given filename
                                Default:[APP.log]
  Commands:
     -B                       - list the Builds available for given device.

     -D                       - Discover devices that are currently connected.

     -G                       - Get build file from the Acroname server and
                                store on local machine for download to device.
                                Must specify a specific device ["-d" option].
                                Default is to obtain the latest build for the
                                given device, override with "-b" option.

     -H or -h                 - Display extended usage information.

     -I                       - View stored device information.
                                Must either use DISCOVER command ["-D"] or
                                specify a specific device ["-d" option].

     -L                       - Log the session output into a log file.
                                Use the "-k" option to override the default
                                filename [APP.log].

     -U                       - Update the firmware on device specified.
                                Must specify a specific device ["-d" option].
                                Default is to download the latest build for the
                                given device, override with "-b" option or
                                specify specific BIRD file using "-f" option.

     -R                       - Send RESET to device
                                Must specify a specific device ["-d" option].

     -V                       - View stored history for device.
                                Must either use DISCOVER command ["-D"] or
                                specify a specific device ["-d" option].

     -X <BIT_MASK>            - Bitmask for Logging
                                DEBUG_Updater       0x00000001
                                DEBUG_History       0x00000002
                                DEBUG_Attributes    0x00000004
                                DEBUG_BirdFile      0x00000008
                                DEBUG_Network       0x00000010
                                DEBUG_ServerComm    0x00000020

                                DEBUG_Network       0x00000100
                                DEBUG_Network_SR    0x00000200
                                DEBUG_Network_FIRM  0x00000400

                                DEBUG_NXPSerial     0x00001000
                                DEBUG_NXPSerial_E   0x00002000
                                DEBUG_NXPSerial_SR  0x00004000

                                DEBUG_APP           0x00010000

     -Y                       - change router address of an network device to
                                given router.  Requires: -d <mod:device> and
                                -r <device> options.

 Sample usage:

-D                             Discover all devices connected by either USB or TCPIP.
                               Records the device information into the settings for
                               that device.

-D -t USB                      Discover all the devices connected by USB. Records the
                               device information into the settings for that device.

-D -t USB -d 0x40F5849A        Discover settings of the specific device (serial number
                               0x40F5849A)

-G -d 0x40F5849A               Get the latest firmware for the given device.
                               Downloads the firmware file into the updater specific
                               device directory.

-U -d 0x40F5849A               Update the firmware on the specific device.
                               Without other options, this command will try to locate
                               the latest firmware version to be used for updating the
                               device.

-G -d 0x40F5849A -b 99528558   Get the specified build’s firmware for the given device.
                               Downloads the firmware file into the updater’s specific
                               device directory with the build number as the filename.

-G -U -d 0x40F5849A            Get the latest firmware for the given device.
                               Downloads the firmware file into the updater specific
                               device directory. After download, update the firmware
                               using the latest release.

-U -d 0x40F5849A -X 0x0010     Update the firmware as described above, but turns on
                               the display of networking messages used in the transfer.

-U -t RECOVER -s /dev/serial   Update the firmware as described above, but uses the
                               serial interface in communicating with the device to
                               install the latest firmware.

 Sample usage for network discovery and updates:

-D -r 0xD272031D               Discover all devices connected to the I2C BrainStem network
                               of the given routing device 0xD272031D.

-G -U -d 0x2181F0EE -r 0xD272031D
                               Get and Update to the latest firmware for device 0x2181F0EE
                               indirectly through routing device 0xD272031D.

Updater [Version: 1.0 Dec 31 2015 11:00:34] [BrainStem Release:2.1.5] [Copyright (C)
1994-2015, Acroname Inc.]

NO COMMANDS GIVEN

Completed processing: Updater [Version: 1.0 Dec 31 2015 11:00:34] [BrainStem Release:2.1.5]
[Copyright (C) 1994-2015, Acroname Inc.]

As you can see there are a lot of options for customizing the Updater utility to meet your needs; however, there are just a few basic command that will fit the needs of most users.

Next we will look at a few examples of how to use the updater.