********************************************************************************
SMCIPMITool v2.1.1
Copyright(c) 2012 by Super Micro Computer, Inc.           http://supermicro.com/
********************************************************************************

========
1.Readme
========

SMCIPMITool is a command line interface utility for the Supermicro SuperBlade
and IPMI devices. 

=====================
2.Setup and Execution
=====================

This utility needs Sun JRE 1.5.x or above. Please install Sun Java in your 
platform in advance. To download, please go to following link:
http://java.sun.com/javase/downloads/index.jsp

There are 2 executable files in the SMCIPMITool utility.
 1.SMCIPMITool.jar   : A jar file only. 
 2.SMCIPMITool.exe   : A windows executable wrapper for SMCIPMITool.jar
 
User can choose the jar or a native executable file. For Linux environment, 
It needs an extra setting to the environment, as shown below.

Add jre to your PATH line in .bashrc file
  PATH=/usr/java/jre1.5.0_12/bin:$PATH
The "jre1.5.0_12" folder may change depending on your version of java.


===================
3.Usage and Command
===================

In the console mode, please run the following command to start. There will be 
on-line help included.

Usage:
      1.Command mode: Send one command to a managed system
        java -jar SMCIPMITool.jar <IP> <username> <password> [commands ... ]
	  
      2.Shell mode: Interactive with a managed system. Multiple managed is supported
        java -jar SMCIPMITool.jar <IP> <username> <password> shell
	  
      
Following are all commands for SMCIPMITool. 

Command: Main available commands
system                           SuperBlade system status overview
failure                          SuperBlade system failure report
blade                            SuperBlade blade management (2)
gigabit                          SuperBlade gigabit switch management (2)
power                            SuperBlade power supply management (2)
ib                               SuperBlade infiniband management (2)
cmm                              SuperBlade CMM management (2)
listtemp                         SuperBlade system temperatures
allsel <filename>                SuperBlade all Blade SEL to CSV (OEM)
ipmi                             IPMI device management (16)
sel                              IPMI system event log (4)
user                             IPMI user management (5)
nm                               Node Management V1.5 (16)
nm20                             Node Management V2.0 (X9 MBs) (35)
dcmi                             DCMI Management (2)
bios                             BIOS update for X9 motherboards (3)
pminfo [<busId> <SlaAddr>]       Power supply PMBus health
psfruinfo [<busId> <SlaAddr>]    Power supply FRU health
ver                              SMCIPMITool version
ch                               Change managed device in shell mode
list [keyword]                   List all or find available commands
exec <filename> [loop] [delay]   Execute commands from file
find [<Start> <End> <netMask>]   Find IPMI device from local or IP range
found [clear]                    List or clear found IPMI devices
host                             Host management (6)
hostrun <host|group> <command>   Run a command on host or group
trap                             IPMI SNMP Trap receiver management (7)
sc                               Execute DOS/Linux shell command
deploy                           Deployment Utility (5)
ukvm                             KVM launcher (CMM,SIM,SIM(W),SIM(WA),SIM(X9))
kvmwa                            SIM(WA) KVM console (graphic mode)
kvmwx9                           SIM(X9) KVM console (graphic mode)
vm                               SIM virtual Media management (4)
vmwa                             SIM(WA) Virutal Media
debug [0|1|2|3]                  Display raw data between you and BMC
prompt <type> <on|off>           Config information displayed on prompt
tagLoc                           Tag for Location (14)
dr                               Drive redirection
kvm                              Open KVM console (graphic mode)
kvmw                             SIM(W) KVM console (graphic mode)
vmw                              SIM(W) Virtual Media
sol                              SOL Commands
				
===========
4.Examples
===========

D:\>SMCIPMITool 192.168.1.112 ADMIN ADMIN system
Blade Module (10/10)
--------------------
 Blade    | Power  | KVM      | UID | Error | BMC | Watt
 -----    | -----  | ---      | --- | ----- | --- | ----
 Blade 1  | On     |          |     |       | Yes | 300W
 Blade 2  | On     |          |     |       |     | 300W
 Blade 3  | On     |          |     |       | Yes | 300W
 Blade 4  | On     |          |     |       | Yes | 375W
 Blade 5  | On     |          |     |       | Yes | 300W
 Blade 6  | On     |          |     |       |     | 300W
 Blade 7  | On     | Selected |     |       | Yes | 300W
 Blade 8  | On     |          |     |       | Yes | 300W
 Blade 9  | On     |          |     |       | Yes | 300W
 Blade 10 | On     |          |     |       | Yes | 300W

Gigabit SW Module (1/2)
------------------------
 GBSW   | Power | Error | Init |   Switch |   2.5V |  1.25V
 ----   | ----- | ----- | ---- |   ------ |   ---- |  -----
 GBSW 1 | On    |       | OK   |  37C/99F | 2.512V |   1.2V

Power Supply Module (4/4)
--------------------------
 PS   | Power | Fan 1 | Fan 2 | Temp.    | Watts |     DC |     AC | F/W | FRU
 --   | ----- | ----- | ----- | -----    | ----- |     -- |     -- | --- | ---
 PS 1 | On    |  6183 |  6068 | 38C/100F |  2000 |    N/A |    N/A | 2.6 |  01
 PS 2 | On    |  6183 |  6183 | 38C/100F |  2000 |    N/A |    N/A | 2.6 |  01
 PS 3 | On    |  6068 |  6068 | 39C/102F |  2000 |    N/A |    N/A | 2.6 |  01
 PS 4 | On    |  6068 |  6068 | 41C/106F |  2000 |    N/A |    N/A | 2.6 |  01

Infiniband Module (1/2)
------------------------
 IB   | Power | Init |  VVDD | 3.3V Aux |  1.2V |  1.8V |  3.3V |   Temp.
 --   | ----- | ---- |  ---- | -------- |  ---- |  ---- |  ---- |   -----
 IB 1 | On    | OK   | 1.52V |    3.31V | 1.19V | 1.74V | 3.31V | 34C/93F

CMM Module(1/2)
----------------
 CMM   | M/S    | Status
 ---   | ---    | ------
 CMM 1 | Master | OK


D:\>SMCIPMITool 192.168.1.238 ADMIN ADMIN blade 1 sensors
  Status | Sensor               |      Reading | Low Limit | High Limit |
  ------ | ------               |      ------- | --------- | ---------- |
  OK     | CPU1 Temp.           |     50C/122F |       N/A |   80C/176F |
  OK     | CPU2 Temp.           |     43C/109F |       N/A |   80C/176F |
  OK     | CPU3 Temp.           |     47C/117F |       N/A |   80C/176F |
  OK     | CPU4 Temp.           |     46C/115F |       N/A |   80C/176F |
  OK     | System Temp.         |     43C/109F |       N/A |   75C/167F |
  OK     | CPU1 Voltage         |       1.34 V |    0.92 V |      1.5 V |
  OK     | CPU2 Voltage         |       1.32 V |    0.92 V |      1.5 V |
  OK     | CPU3 Voltage         |       1.23 V |    0.92 V |      1.5 V |
  OK     | CPU4 Voltage         |       1.29 V |    0.92 V |      1.5 V |
  OK     | 1.2V                 |       1.19 V |    1.08 V |     1.32 V |
  OK     | 3.3V                 |       3.18 V |    2.96 V |     3.63 V |
  OK     | 12V                  |      11.42 V |   10.75 V |    13.25 V |
  OK     | 5V                   |       4.92 V |    4.49 V |      5.5 V |
  OK     | 5VSB                 |       4.82 V |    4.49 V |      5.5 V |
  OK     | Battery              |       3.05 V |    2.96 V |     3.63 V |


Shell mode example
D:\>SMCIPMITool 192.168.1.238 ADMIN ADMIN shell
Press Ctrl+D or "exit" to exit
Press "?" or "help" for help
Press TAB for command completion
Press UP and DOWN key for command history

CMM>blade status
Blade Module (5/10)
--------------------
 Blade    | Power  | KVM      | UID | Error | BMC | Watt
 -----    | -----  | ---      | --- | ----- | --- | ----
 Blade 1  | On     |          |     |       | Yes | 500W
 Blade 4  | On     |          |     |       | Yes | 475W
 Blade 6  | On     |          |     |       | Yes | 200W
 Blade 8  | On     |          |     |       | Yes | 175W
 Blade 10 | On     | Selected |     |       | Yes | 475W

CMM>vm iso 1 192.168.10.43 iso cd1.iso
done
CMM>vm status

Drive 1
Device Status = CD-ROM image on Windows share set
Image Size = 522766336 (bytes)
Access Mode = Read-Only
Image source = //192.168.10.43/iso/cd1.iso


Drive 2
Device Status = CD-ROM image on Windows share set
Image Size = 522766336 (byte)
Access Mode = Read-Only
Image source = //192.168.10.43/iso/cd1.iso

CMM>sel info
Total Entries:          256
SEL Version:            1.5
Free Space:             4096 bytes
Recent Entry Added:     Pre-Init 00:00:00
Recent Entry Erased:    Pre-Init 00:00:00


=======================================
5.New features
=======================================


5.1 New feature since SMCIPMITool v2.1.0

 SMCIPIMTool 2.1.0 provides X9 BIOS update command and enhanced group managing commands.

 ----------------------
 X9 BIOS update command (It needs update latest BMC firmware for enabling this function)
 ----------------------

 Command:bios
   Command(s):
   ver                              Check BIOS version
   image <filename>                 Check BIOS image file
   update <filename> [options]      Update BIOS

 Example: BIOS ver
   192.168.23.57 X9DRW-6F (S5/G2,55w) 11:00 SIM(X9)>bios ver
   Versioin  = 1.00
   Date      = 02/16/2012
   Raw       = 0636 BIOS Date:02/16/2012 Rev:1.00
 
 Example: BIOS image
   192.168.23.57 X9DRW-6F (S5/G2) 11:00 SIM(X9)>bios image c:\x91.bin
   Version  = 1.00
   Date     = 02/17/2012
   MB Type  = X9DRW
   Size     = 16 MB 

 Example: BIOS update
   192.168.23.57 X9DRW-6F (S5/G2) 11:01 SIM(X9)>bios update C:\x91.bin -N
   Option: NVRAM overwrite 
   ===============
   BIOS Image info
   ===============
   Version  = 1.00
   Date     = 02/17/2012
   MB Type  = X9DRW
   Size     = 16 MB

   =============
   BIOS ROM info
   =============
   Versioin  = 1.00
   Date      = 02/16/2012
   Raw       = 0636 BIOS Date:02/16/2012 Rev:1.00

   ==================
   Start BIOS Upgrade
   ==================
   Reservation ID = 0C 00
   Max Chunk Size = 1024

   ====================
   Uploading BIOS image
   ====================
   Progress:|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 100%
   Upload Time: 2 min 46 sec(s)

   =============
   Updating BIOS
   =============
   Progress:|>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 100%
   Update Time: 3 min 56 sec(s)
   Done
   Total Elapse Time: 6 min 48 sec(s)

 
 ---------------------
 Improved "ch" command
 ---------------------

 The managed servers will be automatically recorded in the ch command. When you "ch"
 to a managed system by "ch 192.168.10.10" in shell mode. It will be recorded.
 When next time you start SMCIPMITool in shell mode, the managed servers will be
 reload. you can see the managed server by ch command as following example:

   SIM>ch
   ...
   Current managed system(s):
   Index | IP
   ----- | ----------------------
       1 | ADMIN@192.168.23.92
       2 | ADMIN@192.168.23.93
       3 | ADMIN@192.168.23.95

 You can quickly switch these managed servers by nagivating '<' or '>'. This
 vesion also fix some bugs in ch command. When you ch to a non-exist server, it
 will back to your original managed server. it prevent annoying wait for timeout.

 ---------------------------------
 Enhannced group command "hostrun"
 ---------------------------------

 hostrun is a group command that can apply a IPMI command to a group. It has
 2 specical keyword for group management. It is helpful for your group management.

 "hostrun found <IPMI command>":
    Exceute a command to all the servers found by "find" command
 "hostrun curr <IPMI command>":
    Execute a command to all the servers which you managed by a "ch" command



5.2 New feature since SMCIPMITool v2.0.0

 -----------------------------
 Enhanced prompt (Since 2.0.0)
 ------------------------------
 It displays the current status of managed system in prompt. The prompt config
 will be permanently stored into file and restore at next start.

            Usage: prompt <type> <on|off>
              username <on|off> : show/hide username
              ip <on|off>       : show/hide IP address
              mb <on|off>       : show/hide Motherboard product Model
              acpi <on|off>     : show/hide ACPI status
              power <on|off>    : show/hide power watts
              fwver <on|off>    : show/hide BMC firmware ver
              time <on|off>     : show/hide time
              all <on|off>      : show/hide all information
              * The change will be stored to config file

 Enter to shell mode then you will see the default prompt as following.
 
   ADMIN@192.168.23.92 X9DRW-6F (S0/G0,76w,v00.10) 14:13 SIM(X9)>
    (A)       (B)        (C)     (D)  (E)   (F)     (G)   (H)

   (A) Username
   (B) IP address
   (C) Motherboard product Model
   (D) ACPI status
   (E) Power consumption
   (F) IPMI firmware version
   (G) Current time
   (H) IPMI firmware type

    * If the information is not shown even set the item on,
      That means SMCIPMITool cannot get correct data.

	  
 ---------------------------------------------	  
 Easily switching managed system (Since 2.0.0)
 ---------------------------------------------
 
 Enhanced ch command. It added your managed system into managed history. you can
 quickly switch managed system by pressing '<'(shift+, prev) or '>'(shift+. next).

            Example:
             1.Switch the managed system from 192.168.23.92 to 192.168.23.93
              ADMIN@192.168.23.92 X9DRW-6F (S0/G0,78w,v00.10) 10:48 SIM(X9)>ch .23.93
              Old IP       : 192.168.23.92
              New IP       : 192.168.23.93
              ADMIN@192.168.23.93 X8DTN+-F (S0/G0,78w,v02.13) 10:48 SIM(WA)>

             2.Press '<' (shift+, prev) to return previous managed system
              ADMIN@192.168.23.93 X8DTN+-F (S0/G0,78w,v02.13) 10:48 SIM(WA)> (shift+,)
              ADMIN@192.168.23.92 X9DRW-6F (S0/G0,77w,v00.10) 10:49 SIM(X9)>

             3.It is circle switching by pressing '<'(shift+, prev) or '>'(shift+. next).
             So that you can easily switch between your managed system.
              ADMIN@192.168.23.93 X8DTN+-F (S0/G0,78w,v02.13) 10:51 SIM(WA)> (shift+,)
              ADMIN@192.168.23.77 B7DBE (S0/G0,v01.51) 10:51 SIMBL> (shift+,)
              ADMIN@192.168.23.92 X9DRW-6F (S0/G0,78w,v00.10) 10:51 SIM(X9)> (shift+,)

             4.To see what's managed system in your buffer list. Use ch command or
			 help(?). you will see how many managed system you are switched. 
			 You can easily switch by '<' or '>'
              
			  SIM(X9)>ch (enter)
			  ...
              Mangaged system(s):
              1:ADMIN@192.168.23.92
              2:ADMIN@192.168.23.93
              3:ADMIN@192.168.23.77
              Use "ch" command to change(or add) managed system (IP)
              Use "ch -<#>" remove host. # is index form Managed system
              Press "<" or ">" to switch managed system on shell prompt 


 -----------------------------
 Search function (Since 2.0.0)
 -----------------------------
 Built-in search funcion into all commands. You can use search function for
 all commands. The format is as following.

         SIM(X9)> <Command> | <Key for search>

         Example:
         1.Search "FAN" from sensor list
         SIM(X9)>ipmi sr | FAN
               | (6) FAN1                 |          N/A |   600 RPM |  12550 RPM |
          OK   | (7) FAN2                 |     1550 RPM |   600 RPM |  12550 RPM |
               | (8) FAN3                 |          N/A |   600 RPM |  12550 RPM |
               | (9) FAN4                 |          N/A |   600 RPM |  12550 RPM |
               | (10) FANA                |          N/A |   600 RPM |  12550 RPM |
               | (11) FANB                |          N/A |   600 RPM |  12550 RPM |


         2.Search all "X9" boards from the current found IPMI devices. The commands are 
		 as following
           a.command "find" : find all device in current LAN
           b.command "hostrun found ipmi ver | X9" :list all ipmi ver from found IPMI device
		   and list only with name "X9"

          Example:
          SIM(X9)>find
          Finding IPMI Devices ...
          192.168.23.74          IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.75          IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.76          IPMI 2.0 SIM IPMI+KVM
          192.168.23.77          IPMI 2.0 SIMBL
          192.168.23.78          IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.80          IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.85          IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.92          IPMI 2.0 SIM(X9) IPMI+KVM
          192.168.23.93          IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.95          IPMI 2.0 SIM(W) IPMI+KVM
          192.168.23.100         IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.102         IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.105         IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.108         IPMI 2.0 SIM(WA) IPMI+KVM
          192.168.23.109         IPMI 2.0 SIM(WA) IPMI+KVM
          15 IPMI device(s) found. Use "found" to list found devices

          SIM(X9)>hostrun found ipmi ver | X9
          [ADMIN@192.168.23.74 X9SCD (S5/G2,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.75 X9SCD (S0/G0,24w,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.78 X9DR6/i-F (S0/G0,41w,v01.35) 11:00 SIM(WA)]
          [ADMIN@192.168.23.85 X9SCD (S0/G0,13w,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.92 X9DRW-6F (S0/G0,78w,v00.10) 11:00 SIM(X9)]
          [ADMIN@192.168.23.100 X9SCD (S0/G0,16w,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.102 X9SCD (S5/G2,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.105 X9SCD (S5/G2,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.108 X9SCD (S5/G2,v01.39) 11:00 SIM(WA)]
          [ADMIN@192.168.23.109 X9SCD (S5/G2,v01.39) 11:00 SIM(WA)]
          SIM(X9)>


==============
6.Release note
==============

 -------------------------------------------------------------------------------
  Version 2.1.1 build 120308
 -------------------------------------------------------------------------------

 1.Added B9DRE and B9DRG blades
 2.Added Fan Speed commands
 3.Added new board IDs in MB Table
 4.Updated Commmand list
 5.Updated format for firmware version (ipmi ver command)
 6.Updated "<", ">" shortcuts. Return to original managed BMC when change host("ch")
   an non-exist BMC address
 7.Fixed bug in calculating blade memory size
 
    
 -------------------------------------------------------------------------------
  Version 2.1.0 build 120224
 -------------------------------------------------------------------------------

  1.Added X9 BIOS update functions
  2.Updated the reading = -1 of P state and t state as "value is unavailable".
  3.Updated "ch" command. Return to original managed BMC when change host("ch") to a non-exist BMC address
  4.Added automatically persistent managed devices in shell mode (encryption for username/password)
    the managed BMC devices will be load after restart shell mode.
  5.Updated "nm20 cpumemtemp" by Tjmax recalulating and memory alias.
  6.Updated NMSDR checking method for more precisely
  7.Added 'curr' for hostrun command. 'curr' means the devices managed in the 'ch' command
  8.Updated nm20 listImageInfo command . Removed firmware version to prevent conflict with meInfo.exe
  9.Updated SOL window to support 100*31 resolution (UEFI BIOS screen)
  10.Fixed SOL screen scroll fresh issue
  11.Updated format of ME version. Follow the way of Intel MeInfo.exe and AMI BIOS for consistency
  12.Updated PMBus information for reduntant charaters

 -------------------------------------------------------------------------------
  Version 2.0.0 build 111214
 -------------------------------------------------------------------------------
  1.SMCIPMITool 2.0.0 added 3 helpful features for more easily manage system
   a.Enhanced prompt
   b.Easily switching managed system
   c.Built-in Search function
  More detail at Chap 5.New feature (SMCIPMITool v2.0.0)
  
  2.Updated iKVM 1.69 r13

 -------------------------------------------------------------------------------
  Version 1.11.4 build 111125
 -------------------------------------------------------------------------------
 
 1. Added "Host CPU Data" and "CPU and Memory temperature" sub commands in nm20
 
    cpuMemTemp                       Get CPU/Memory temperature
    hostCpuData                      Get host CPU data 
            
            Example:
            SIM(WA)>nm20 cpuMemTemp
            CPU#0 = 57(c)
            CPU#1 = 58(c)
            [CPU#0]CHANNEL#0, DIMM#0 = 28(c)
            [CPU#0]CHANNEL#1, DIMM#0 = 27(c)
            [CPU#0]CHANNEL#2, DIMM#0 = 26(c)
            [CPU#0]CHANNEL#3, DIMM#0 = 26(c)
            [CPU#1]CHANNEL#0, DIMM#0 = 26(c)
            [CPU#1]CHANNEL#1, DIMM#0 = 26(c)
            [CPU#1]CHANNEL#2, DIMM#0 = 26(c)
            [CPU#1]CHANNEL#3, DIMM#0 = 26(c)            
 
            SIM(WA)>nm20 hostCpuData
            Host CPU data:
            End of POST notification was received
            Host CPU discovery data is valid
            Number of P-States = 10
            Number of T-States = 15
            Number of installed CPUs/socket = 2
            Processor Discovery Data-1 = 19 19 18 18 17 17 17 17
            Processor Discovery Data-2 = 00 14 01 6C 00 0C 00 00 

 -------------------------------------------------------------------------------
  Version 1.11.3 build 111121
 -------------------------------------------------------------------------------
 1. Added number of sub commands in the help list
 2. Fixed a wrong parameter for "nm20 oemGetTemp" command
 3. Updated unit for nm20 statistics command
 4. Added Debug command (Display raw data between you and BMC)
    
    Usage: debug [0|1|2|3]
      level 0 : No raw displayed
      level 1 : Human read raw data.
                IPMI Reqeuest (NetFn, Cmd, Data ...)
                BMC  Response (Completion, Data ...)
      level 2 : IPMI Message raw format
      level 3 : IPMI Message raw format with detailed field list

      The setting will be stored into SMCIPMITool.properties once the level has been changed. 
      The debug level applies both to command mode and shell mode.

      Example: [ipmi ver] command with different debug level
      
      SIM(X9)>debug 0
      debug level = 0
      level 0 : No raw displayed
      
      SIM(X9)>ipmi ver
      Firmware Revision  = 00.10
      IPMI Version       = 2.0
      Manufacturer ID    = 7C 2A 00
      product ID         = BB AA 00
      
      SIM(X9)>debug 1
      debug level = 1
      level 1 : Human read raw data.
                IPMI Reqeuest (NetFn, Cmd, Data ...)
                BMC  Response (Completion, Data ...)
      
      SIM(X9)>ipmi ver
      [ YOU -> BMC : 06 01 ]
      [ YOU <- BMC : 00 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00 00 ]
      Firmware Revision  = 00.10
      IPMI Version       = 2.0
      Manufacturer ID    = 7C 2A 00
      product ID         = BB AA 00
      
      SIM(X9)>debug 2
      debug level = 2
      level 2 : IPMI Message raw format
      
      SIM(X9)>ipmi ver
      [ YOU -> BMC : 20 18 C8 41 00 01 BE ]
      [ YOU <- BMC : 41 1C A3 20 00 01 00 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00 00
       D5 ]
      Firmware Revision  = 00.10
      IPMI Version       = 2.0
      Manufacturer ID    = 7C 2A 00
      product ID         = BB AA 00
      
      SIM(X9)>debug 3
      debug level = 3
      level 3 : IPMI Message raw format with Field listed
      
      SIM(X9)>ipmi ver
      ===================
      Direction = Request
      rsSA      = 20
      netFnLun  = 18
      checkSum1 = C8
      rqSA      = 41
      rqSeqLun  = 00
      cmd       = 01
      data      =
      checkSum2 = BE
      Msg Size  = 7(int)
      To Array  = 20 18 C8 41 00 01 BE
      ===================
      
      ====================
      Direction = Response
      rqSA           = 41
      netFnLun       = 1C
      checkSum1      = A3
      rsSA           = 20
      rqSeqLun       = 00
      cmd            = 01
      completionCode = 00
      data           = 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00 00
      checkSum2      = D5
      Msg Size       = 23(int)
      To Array       = 41 1C A3 20 00 01 00 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00
      00 D5
      ===================

      Firmware Revision  = 00.10
      IPMI Version       = 2.0
      Manufacturer ID    = 7C 2A 00
      product ID         = BB AA 00

      SIM(X9)>



-------------------------------------------------------------------------------
  Version 1.11.2 build 111110
 -------------------------------------------------------------------------------
 1. Updated L3 Switch initial flag issue
 2. Added 4*Gigabit Switches for ZTE SuperBlade customization

 
 
 -------------------------------------------------------------------------------
  Version 1.11.1 build 111027
 -------------------------------------------------------------------------------
 1. Fixed X9 AMI Virtual Media "cdrom service disabled" issue 
    (For "kvmwx9" or "ukvm" commands)
 
 
 -------------------------------------------------------------------------------
  Version 1.11.0 build 111025
 -------------------------------------------------------------------------------
 
 1.Added PS FRU infomration command
   command: psfruinfo [<busId> <SlaveAddr>]
 2.Updated pmInfo command 
   
 -------------------------------------------------------------------------------
  Version 1.10.1 build 111003
 -------------------------------------------------------------------------------
 1. Added Get/Set DNS server commands
 2. Update "N/A" checking for Voltage & Fan when reading = 0

 -------------------------------------------------------------------------------
  Version 1.10.0 build 110805
 -------------------------------------------------------------------------------
 
 1. Added X9 SH7757 Support 
 2. Added AMI X9 KVM console. Command is "kvmwx9" or "ukvm" for auto detection
 3. Updated PMBus STATUS_BYTE

 -------------------------------------------------------------------------------
  Version 1.9.0 build 110624
 -------------------------------------------------------------------------------
 1. Added ME Node Manager v2.0 commands for X9 MB(nm20 series commands)
    Refer chapter 8
 
   Command:nm20
   Command(s):
   nmSDR                            Display NM SDR
   selTime                          Get SEL time
   deviceID                         Get ME Device ID
   reset                            Reboots ME
   reset2Default                    Force ME reset to Default
   updateMode                       Force ME to Update Mode
   powerOff                         Set ME power state off
   selfTest                         Get Self Test Results
   mode                             Get ME running Mode
   listImagesInfo                   List ME Images information
   oemGetPower                      OEM Power command for ME
   oemGetTemp                       OEM Temp. command for ME
   globalEnable                     Global Enable NM policy control
   globalDisable                    Global Disable NM policy control
   domainEnable <domain ID>         per Domain Enable NM policies
   domainDisable <domain ID>        per Domain Disable NM policies
   policyEnable <domain ID> <policy ID>     per Policy Enable NM policy
   policyDisable <domain ID> <policy ID>    per Policy Disable NM policy
   addPowerPolicy <pID> <limit> <t> <p>     Add Power Policy
   getPolicy <domain ID> <policy ID>        Get Policy
   delPolicy <domain ID> <policy ID>        Delete Policy
   scanPolicy                       Scan all presented Policies
   addPolicy <dID> <pID> <ptt> <agg> <a> <l> <t> <tl> <p>   Add Policy
   statistics <mode> <domainID> <policy ID>         NM statistics
   resetStatistics <mode> <domain ID> <policy ID>   Reset NM statistics
   cap <domain ID> <Trigger Type>   NM Capabilities
   ver                              NM Version
   alert [dest]                     NM Alert
   pstate [value]                   Get/Set Max allowed CPU P-State
   tstate [value]                   Get/Set Max allowed CPU T-State
   ptstate                          Show CPU P-State and T-State
   cpuCore [cores]                  Get/Set max allowed CPU cores
   totalPower <domainID> [watts]    Get/Set Total Power Budget 
 

 2. Updated "nm cap" wrong information for Limiting based
 3. Fixed FRU size overflow

 -------------------------------------------------------------------------------
  Version 1.8.5 build 110613
 -------------------------------------------------------------------------------
 1. Fixed bug that out of range error for setting NM P-State and T-State command
 2. Updated "nm ver" command to support display NM 2.0 version 
    (Current NM commands are designed for NM v1.5)
  
 -------------------------------------------------------------------------------
  Version 1.8.4 build 110531
 -------------------------------------------------------------------------------
 1. Added iKVM v1.69 r6 (work for ATEN KVM firmware v2.29 or above)

 -------------------------------------------------------------------------------
  Version 1.8.2 build 110527
 -------------------------------------------------------------------------------
 1. Updated NMSDR slave address (fixed "nm" commands for X9 ME testing)
 2. Added X9 GUID supported
 3. Added sessioninfo sub command under ipmi command

 -------------------------------------------------------------------------------
  Version 1.8.1 build 110412
 -------------------------------------------------------------------------------

 1. Updated B8DTG
 2. Added BHDGT
 3. Update blade hw info for supporting 128G memory size

 -------------------------------------------------------------------------------
  Version 1.8.0 build 110125
 -------------------------------------------------------------------------------

 1. Added B8DTG, BHQG6 for blade system
 2. Updated PMBus Module Number for PMInfo command
 3. Updated iKVM v1.68 r1
 4. Added new SMCIPMITool User Guide  
 
 -------------------------------------------------------------------------------
  Version 1.7.9 build 101124
 -------------------------------------------------------------------------------

 1. Improved IPMB command stability for CMM

 -------------------------------------------------------------------------------
  Version 1.7.8 build 101115
 -------------------------------------------------------------------------------

 1. Added "deploy check" command for SuperBlade
 2. Added Attach & Boot opt command for deploy abstract Task
 3. Added boundary check for deploy all command. (invalid IP)

 -------------------------------------------------------------------------------
  Version 1.7.7 build 101102
 -------------------------------------------------------------------------------

 1. Added DCMI find(discover) command
    Command(s):
	find [<Start> <End> <netMask>]   Find DCMI device from local or IP range
	cap                              List DCMI Capabilities Info

 2. Added Gigabit Switch new commands
    ipmode []  IP Mode.1->static IP, 2->DHCP
    boot []    Boot Image.1->main image, 2->fallback image
    restart    soft restart
    fd         Reset to factory default	
	
 2. Fixed NullPointer exception of "deploy one" command
 3. Bug fixed for wrong display message of "deploy all" command
 
 4. iKVM update
    a.Support 256 local HDs for Virutal Stroage
    b.Remove WEB ISO and image upload in virtual Stroage v1.66


 -------------------------------------------------------------------------------
  Version 1.7.6 build 101011
 -------------------------------------------------------------------------------

 1. Fixed ATEN KVM cannot start in Linux env
 2. Added ATEN KVM start parameter for virutal Media (port 623)
 3. Fixed the native method loading issue. A problem when loading ATEN Virtual 
    Media in Linux env
 4. Fixed bug for "vmwa dev1list" command. a dummy drv didn't removed

 -------------------------------------------------------------------------------
  Version 1.7.5 build 101006
 -------------------------------------------------------------------------------

 1. Added ATEN virutal media commands
   Available commands:
   dev1list             List available devices for virtual device 1
   dev1drv <index>      Mount drive for virtual device 1
   dev1stop             Stop virtual device 1
   dev2list             List available devices for virtual device 2
   dev2cd  <index>      Mount CD/DVD for virtual device 2
   dev2iso <filename>   Mount ISO file for virtual device 2
   dev2stop             Stop virtual device 2
   allstatus            Show all VMWA status
   status               Show status
   log                  Show log


   Note:
   * Support 2 virtual devices (device 1 & device 2)
     Device 1 will be Hard Disk,USB or Floppy
     Device 2 will be CD,DVD or ISO file
   * List available devices before mount virtual media when plug in
    Removable device

 
 -------------------------------------------------------------------------------
  Version 1.7.1 build 100917
 -------------------------------------------------------------------------------

 1. Fixed cannot read pmInfo in 1K41P Power supply

 -------------------------------------------------------------------------------
  Version 1.7.0 build 100913
 -------------------------------------------------------------------------------

 1. Added Deploymenet Utilities command

  Command:deploy
    Command(s):
    one <ISO file>                   Deploy BIOS/FW for general Server
    all <ISO file>                   Deploy BIOS/FW for SuperBlade
    status                           Display current status of deployment process
    clear                            clear and remove all Virtual Media session

 2. Added 10G Switch support
 3. Updated sensor type name to be "OEM" of 0xC0 sensor type. (HDD S.M.A.R.T and CPU Overheat) 
 4. Updated iKVM v1.63 r1
 5. Added 20x 1GbE pass thru

 -------------------------------------------------------------------------------
  Version 1.6.3(beta) build 100903
 -------------------------------------------------------------------------------
  
 1.Internal released

 -------------------------------------------------------------------------------
  Version 1.6.2 build 100720
 -------------------------------------------------------------------------------

 1. Added command "kvmwa" for SIM(WA) KVM in graphics mode
 2. Added command "ukvm" for launch CMM,SIMBL,SIM,SIM(W) and SIM(WA) automatically
 3. Added "allsel <filename>" command for convert all blade sel to csv file
 4. Added "sel csv" command for save SEL as csv file
 5. Added FRU File ID field in board and Product info
 6. Fixed X8DTG SDR missing issue(X8DTG-DF Rev 1.3/2.00 ,AMI firmware)

 -------------------------------------------------------------------------------
  Version 1.6.1 build 100510
 -------------------------------------------------------------------------------

 1. Updated FRU display function
    (Ability to show Internal use area, MultiRecord area, OEM custom field)
 2. Added B8DTP, B8DT6_OEM, B8DTT_OEM for blade system
 3. Updated SMART failure SEL (DISK 0 failure cannot be displayed)
 4. Updated conversion formula for PMBus information.
 5. Updated high&low limit refer to non-critical value in the sensor command 
 6. Fixed overflow of low limit of temperature
 7. Added CPU overheat SEL for ATEN FW
 8. Fxied bug of event log for memory ECC error
 9. Remove SMCIPMITool-linux due to unhandled problem. 
    Use java -jar SMCIPMITool.jar instead

 -------------------------------------------------------------------------------
  Version 1.6.0 build 100223
 -------------------------------------------------------------------------------
 1.Support Node Manager commands. (Commands to ME)
   
 Available command(s):
 detect                           detect if ME presented
 ver                              Node Manager version
 cap                              Node Manager capabilities
 status [enable|disable]          Enable/Disable Node Manager
 stat [id]                        Get power statistics(or by PolicyId)
 resetStat [id]                   Reset power statistics(or by PolicyId)
 pstate [value]                   Get/Set P-State
 tstate [value]                   Get/Set T-State
 ptstate                          Show P-State and T-State
 alert [dest]                     Get/Set alert destination (See LAN Config)
 scanPolicy [end]                 Scan Policy
 addPolicy <id> <limit> <t> <p>   Add Policy
 delPolicy <id>                   Delete Policy
 getPolicy <id>                   Get Policy
 enablePolicy <id>                Enable Policy
 disablePolicy <id>               Disable Policy 

   
 Examples:
 
 1.Detect if Node Manager supported  
  
  Example:  
  SIM(WA)>nm detect
  This device supports Node Manager

 2.Node Manager version
  
  Example:      
  SIM(WA)>nm ver
  Node Manager Version = 1.5
  Firmware Version     = 1.05
 
 3.Node Manager capabilities
  
  Example:  
  SIM(WA)>nm cap
  Max concurrent settings         = 10
  Max Power limit value           = 32767 w
  Min Power limit value           = 0 w
  Max Correction Time settable    = 600000 ms
  Min Correction Time settable    = 6000 ms
  Max Statistics Reporting period = 3600 s
  Min Statistics Reporting period = 1 s
  Limiting type                   = CPU power limiting
  Limiting based on               = Wall input power. PSU input power
 
 4.Node Manager status
  
  Example:
  SIM(WA)>nm status
  Node Manager is enabled

 5.Node Manager statistic
  
  Example:  
  SIM(WA)>nm stat
  Gloabal Power statistic
  Current = 209 w
  Minimum = 128 w
  Maximum = 255 w
  Average = 166 w
  Time    = 02/23/2010 11:11:27 TUE
  Reporting Period = 1 sec
  Node Manager is enabled
  Measurements in progress  

 6.Node Manager statistic with Policy ID
  
  Example:  
  SIM(WA)>nm stat 11
  Policy Id = 11
  Current = 209 w
  Minimum = 209 w
  Maximum = 210 w
  Average = 209 w
  Time    = 02/23/2010 11:12:19 PG
  Reporting Period = 60 sec
  Policy is not enabled
  Measurements in progress

 7.Show P-State & T-State
  
  Example:   
  SIM(WA)>nm ptstate
  P-State : High |#______________| Low    [0/15] (Current/Number of State)
  T-State : High |#_______| Low   [0/8] (Current/Number of State) 

 8.Add Policy  ( addPolicy <id> <limit> <correction time(ms)> <report period(s)> )

  This command create a policy with following parameters.
  Policy id = 15
  power limit = 150w	
  correction time = 60000 ms
  report period = 10 s

  Example:  
  SIM(WA)>nm addPolicy 15 150 60000 10
  Done

 9.Get Policy
  
  Example:  
  SIM(WA)>nm getPolicy 15
  Power Limit = 150 w
  Correction Time limit       = 60000 ms
  Statistics Reporting Period = 10 s
  Policy state:
      Policy enabled
      Per Domain Node Manager policy control enabled
      Global Node Manager policy control enabled
  Policy Exception action state:
      Send alert

 10.Alert setting
   Check "ipmi lan snmp" command to determine which lan destination to send Node Manager alert. The alert will
   be sent by Node Manager 
  Example:
  SIM(WA)>ipmi lan snmp
  Seq                   IP                  MAC
  ---                   --                  ---
    1              0.0.0.0    00:00:00:00:00:00
    2       192.168.12.150    00:00:00:00:00:00
    3              0.0.0.0    00:00:00:00:00:00
    4              0.0.0.0    00:00:00:00:00:00
    5              0.0.0.0    00:00:00:00:00:00
    6              0.0.0.0    00:00:00:00:00:00
    7              0.0.0.0    00:00:00:00:00:00
    8              0.0.0.0    00:00:00:00:00:00
    9              0.0.0.0    00:00:00:00:00:00
   10              0.0.0.0    00:00:00:00:00:00
   11              0.0.0.0    00:00:00:00:00:00
   12              0.0.0.0    00:00:00:00:00:00
   13              0.0.0.0    00:00:00:00:00:00
   14              0.0.0.0    00:00:00:00:00:00
   15              0.0.0.0    00:00:00:00:00:00
  SIM(WA)>nm alert 2
  Done
  SIM(WA)>nm alert
  Destionation selector = 2
 
 11.Node Manager alert sent from ME
  
  Example:
  SIM(WA) [!Trap(1)]>trap list
  -------------------------------------------------------------------------
  Trap (1)
  Sender      = 192.168.12.161
  Community   = public
  Sensor      = Node Manager Alert Threshold Exceeded Sensor
  Local Time Stamp = 2010/02/23 11:15:53 PG
  Description :
  Event Dir : Assertion
  Event Type : 72h
  Policy event : Threshold exceeded
  Threshold Index : 0
  Policy ID = 15
 
 12.Check Power Supply status
  
  Example:  
  SIM(WA)>pminfo
   [SlaveAddress = 78h]
   Item                           |                Value
   ----                           |                -----
   Status                         |
   AC Input Voltage               |              101.0 V
   AC Input Current               |               1.17 A
   DC 12V Output Voltage          |              12.08 V
   DC 12V Output Current          |               8.12 A
   Temperature 1                  |              17C/63F
   Temperature 2                  |              33C/91F
   Fan 1                          |             9389 RPM
   DC 12V Output Power            |                 98 W
   AC Input Power                 |                111 W
   PMBus Revision                 |               0x0001
   PWS Serial Number              |      0000DH109100009
   PWS Module Number              |          PWS-721P-1R
   PWS Revision                   |               REV1.0
  
 
 -------------------------------------------------------------------------------
  Version 1.5.9 build 100212
 -------------------------------------------------------------------------------

 1. Updated formula for pmInfo command
 2. Fixed delsdr command cannot delete if SDR ID more then 3 chars

 -------------------------------------------------------------------------------
  Version 1.5.8 build 100104
 -------------------------------------------------------------------------------
 
 1. Added TwinBlade supported
 2. Added B8DTT supported
 
 -------------------------------------------------------------------------------
  Version 1.5.7 build 091009
 -------------------------------------------------------------------------------

 1. Added IBQDR
 2. Updated BHQIE sensors' formula

 -------------------------------------------------------------------------------
  Version 1.5.6 build 090810
 -------------------------------------------------------------------------------
 
 1.Rebuild from 1.5.5. Fixed the missed files.

 -------------------------------------------------------------------------------
  Version 1.5.5 build 090804
 -------------------------------------------------------------------------------

 1. Added assertion and deassertion type in trap receiver
 2. Updated pmInfo command for supporting {0xb0,0x78,0x7a,0x7c,0x7e} slave address
 3. Updated pmInfo command (fomula of power watts)
 4. Added B8DTL-E and B8DTL-L
 5. Updated PEF table for ATEN's fw
 6. Fixed a bug that cannot receive trap which send by ATEN's fw
 7. Added delete sdr command
    Command: delsdr <SDR record ID>           Delete SDR
    ex:delsdr 10
 8. Added BHQIE sensor's table    

 -------------------------------------------------------------------------------
  Version 1.5.4 build 090601
 -------------------------------------------------------------------------------
 1. Added PMBus command for getting power supply health info
            pminfo [<busId> <SlaveAddr>]     PMBus health
 Example:          
 SIMBL>pminfo
  Item                           |                Value
  ----                           |                -----
  Status                         |          [Status OK]
  AC Input Voltage               |               97.5 V
  AC Input Current               |               1.43 A
  DC 12V Output Voltage          |              12.09 V
  DC 12V Output Current          |                9.5 A
  Temperature 1                  |              33C/91F
  Temperature 2                  |             38C/100F
  Fan 1                          |             9847 RPM
  DC 12V Output Power            |                114 W
  AC Input Power                 |                133 W
  PMBus Revision                 |               0x0001
  PWS Serial Number              |      P7211C914IT0835
  PWS Module Number              |          PWS-721P-1R
  PWS Revision                   |               REV1.0 
                        
 2. Updated memory ecc SEL for X8 series board

 -------------------------------------------------------------------------------
  Version 1.5.3 build 090420
 -------------------------------------------------------------------------------
 1. Updated Blade HW configuration
 2. Updated B8DT6/E sensor's table
 3. Added SEL event for CPU temp overheat
 4. Added B8DT6/E sensor's table
 5. Updated SNMP setting for AMI's new FW update
 6. Added IPMB raw command for KIRA and Winbond

 -------------------------------------------------------------------------------
  Version 1.5.2 build 090302
 -------------------------------------------------------------------------------
 1. Updated SNMP setting for AMI's new FW update
 2. Added IPMB raw command for KIRA and Winbond
 3. Added UID function for AMI
 4. Added sensor number in IPMI sensor command

 -------------------------------------------------------------------------------
  Version 1.5.1 build 090204
 -------------------------------------------------------------------------------

 1. Added more info for ECC and PCI error SEL event
 2. Added DHCP command into CMM cmd category

 -------------------------------------------------------------------------------
  Version 1.5.0 build 081231
 -------------------------------------------------------------------------------

 1. Added KVM,Virtul Media and Flash command for Hermon (SIMSOW)
    a.PlugIn Command: "kvmw" for KVM Window mode
    b.PlugIn Command: "vmw" for virtual Media
          vmw floppy <image file>          Floppy image as virtual media
          vmw usbkey <drive letter>        USB key as virutal media
          vmw iso    <ISO file>            ISO file as virtual media
          vmw cd     <drive letter>        CD/DVD drive as virutal media
          vmw stopFloppy                   Stop connected floppy
          vmw stopUsbkey                   Stop connected USBKey
          vmw stopISO                      Stop connected ISO
          vmw stopCD                       Stop connected CD/DVD
          vmw status(st)                   Virtual Media status
    c."ipmi flashw" command for Hermon fw flashing

 2. Updated SNMP pef table for AMI in "ipmi lan snmp" command
 3. Added SIMBL(W) guid
 4. Updated SNMP Destination count
 5. Added AMD CPU in the blade info (motherboard configuration)
    Command list:
      bl <blade Index> config
 6. Fixed user ID cannot be deleted in AMI's fw
 7. Fixed CPU not installed display error in AMI's fw
 8. Renamed SuperBladeTool to SMCIPMITool. Since it supports both SuperBlade and IPMI products
 9. Added B7DCL sensor table

 -------------------------------------------------------------------------------
  Version 1.04.13 build 080908
 -------------------------------------------------------------------------------

 1. Added 10G pass Thru management status in sys command

 -------------------------------------------------------------------------------
  Version 1.04.12 build 080812
 -------------------------------------------------------------------------------

 1. Updated winbond GUIDs. Includes both on-board and add-on types.
 2. Updated the blade sensors threshold reading. The blade CPU and system threshold
    temperature are read from BIOS setting.
 3. Added new CPU text temperature status (low, medium, high and overheat status)
 4. Added pulse diagnostic interrupt command
    Command:
    CMM>ipmi power diag

 -------------------------------------------------------------------------------
  Version 1.04.11 build 080718
 -------------------------------------------------------------------------------
 
 1. Added B7DC3-IB supported
 2. Added motherboard configuration command
           Command list:
           bl <blade Index> config
           CMM>bl 7 config
             MB ID           = B1
             Pwr Consumption = 300W
             CPUs            = 1
             CPU Type        = Dempsey B1
             CPU Speed       = 3.00Ghz
             DIMMs           = 1
             Memory Size     = 1024MB
             Memory Speed    = 667Mhz
             LANs            = 2
             LAN 1 MAC       = 01:00:02:00:00:00
             LAN 2 MAC       = 01:00:02:00:00:01

 -------------------------------------------------------------------------------
  Version 1.04.10 build 080623
 -------------------------------------------------------------------------------

 1. Changed display of power supply watts (1400 -> 1400/1200) when power is off
 2. SIMSO-W+ added

 -------------------------------------------------------------------------------
  Version 1.04.09 build 080613
 -------------------------------------------------------------------------------

 1. Changed display of power supply watts (1400 -> 1400/1200)
 2. Added Office blade and Enterprise blade mode

 -------------------------------------------------------------------------------
  Version 1.04.07 build 080515
 -------------------------------------------------------------------------------

 1. Added retry mechanism for IPMB call. Make IPMB call more stable

 -------------------------------------------------------------------------------
  Version 1.04.06 build 080508
 -------------------------------------------------------------------------------

 1.Changed 1.8V to Memory Voltage and changed low limit to 1.34v.
 2.Fixed a false alarm of cpu 2 core A temp and cpu2 core B temp.
   It shows "CPU2 Core A Temp:Reading out of range" on fail command
   when you install 2 CPUs with PECI feature.

 -------------------------------------------------------------------------------
  Version 1.04.05 build 080430
 -------------------------------------------------------------------------------

 1.Added function for setting SIMBL VLAN and DHCP function via IPMB from CMM
 2.Added function for sending IPMI raw command via IPMB from CMM

    Command:bl <blade_index> bmc
    Available command(s):
      ip [IP]                          Get/set BMC IP
      dhcp [enable|disable]            Enable/Disable DHCP
      vlan [<enable|disable> <tag>]    Display/Enable/Disable VLAN
      ipmb <netFn> <cmd> [data]        Send IPMI raw command. netFn<<2 is needed

 3.Added DOS/Linux shell command supported.
    Examples:
      CMM>sc dir (execute dir command in Windows OS)
      CMM>sc ls (execute ls command in Linux OS)
      CMM>sc ping 192.168.10.123 (execute ping command)

 -------------------------------------------------------------------------------
  Version 1.04.04 build 080418
 -------------------------------------------------------------------------------
 1.Added Display/Enable/Disable VLAN command
   ipmi lan vlan [<enable|disable> <VLAN tag>]
 2.Added Get/Set SNMP community string command
   ipmi lan snmpcomm [community string]
 3.Added support for BHDME MB

 -------------------------------------------------------------------------------
  Version 1.04.03 build 080331
 -------------------------------------------------------------------------------
 1.Updated virtual media function for i2c lan type
  
 -------------------------------------------------------------------------------
  Version 1.04.02 build 080329
 -------------------------------------------------------------------------------
 1.Added configuration backup/restore/sync functions
   Command list:
      ipmi oem backup
      ipmi oem restore
      cmm 1(or 2) syncfg
 2.Added "delay" command in the shell mode
 3.Added a workround for B7DC3/B7DCE shows SIMBL is installed while it first 
   pluged into middle plane and powered off.
 4.Updated B7DCE,H8DMT,B7DC3,X7SBT,X7SBU in "IPMI OEM ID" command
 5.Updated power supply current. Dividing dc output current by 2.
 6.Added checker for firmware which doesn't support virutal media
 7.Fixed a minor bug in ch command. (Some variables are not cleared)
 8.Set chunk size to 80 byte if lan type is share lan1 and lan driver is i2c for
   firmware upload.
 9.Changed the sensor name 1.2V to CPU VTT (Low/hight limit, 0.99/1.32) in Intel
   blade sensor table.
10.Fixed GBSW dispaly power on while the power supply is turned off
 
 -------------------------------------------------------------------------------
  Version 1.04.01 build 080125
 -------------------------------------------------------------------------------

 1.Added tab-completion function like bsh or windows command pormpt
 2.Added function that persistence command history. Command History
  will restore when re-enter shell mode. (Use the Jline)

  Set history in the SMCIPMITool.properties
  history = on|off
  if history = on, the all the command history will be save to file and
  restore when next shell mode.

 3.Added firmware flash command for SIMXX IPMI
 4.Define command return code in Command class.
   sub Commands can define their own command return code.
   Script program knows the command result form the command return code.
 5.Updated CMM NTP time set function
 6.Updated ch command to accpet ".192" type. Not only accept "*.192".
 
 -------------------------------------------------------------------------------
  Version 1.03.04 build 080118
 -------------------------------------------------------------------------------

 1.Add Command History available in Linux terminal. Pressing up or down key to
   go through command history. This is completed by adding Jline open source project
   
 Note: For SOL function work properly, SOL PlugIn(sol related functions) should 
       use this version.

 -------------------------------------------------------------------------------
  Version 1.03.03 build 080109
 -------------------------------------------------------------------------------

 1.Added a checker to check the SEL and SDR mismatch problem
 2.Added 14 blades Supported
 3.Added 'help' command in the exec mode. (help observe the run time information)
 4.Fixed some trap function bugs. (File close, parameter validation)
 5.Update trap reciever for blade snmp

 -------------------------------------------------------------------------------
  Version 1.03.02 build 071128
 -------------------------------------------------------------------------------

 1.Added PlugIn mechanism.
 2.Updated the gb pass thru initialized display error
 3.Added Virtual Media supported for general SIM IPMI

 -------------------------------------------------------------------------------
  Version 1.03.01 build 071126
 -------------------------------------------------------------------------------
 1.Added cmm NTP fucntion. 
           command:ntp <UTC offset> <NTP1> [NTP2]  Sync time with NTP servers
 2.Added Trap receive function in shell mode. 
          Command:trap
          Available command(s):
          start                            Strat Trap receiver
          stop                             Stop Trap receiver
          status(st)                       Trap receiver status
          list                             List the received Traps
          clear                            Clear the received Traps
          save                             Save the received Traps to file
          savepet                          Save as the IPMIView TrapReceiver PET format
           
		  *Set trap receive in the SuperBladeTool.properties
          trap = on|off
          if trap = on, then trap receive will be started when enter to shell mode

 3.Added reading and threshold in SEL
 4.Fixed the sensor name display error in the SEL list
 5.Added keyword function in list command
 6.Added record function. set "reocrd" field in the SuperBladeTool.properties.
   *Set record in the SuperBladeTool.properties
   record = on|off
   if record = on, the  all the content of shell mode will be record to file
 8.Fixed a bug that GB Switch initilized field display error on SuperBladeTool

 -------------------------------------------------------------------------------
  Version 1.02.01 build 071105
 -------------------------------------------------------------------------------

 1.Added exec command for executing commands from a file  
   (Command: exec <filename> [loop] [delay])
 2.Added all("*") and comma separater for multiple execution on blade, gigabit, 
   power, ib commands. (see example 2)
 3.Added host and group data management. A host.properties file will be created.
 4.Added hostrun command. for running a command on a host or a group (see example 1)
 5.Imporved command list information.
 6.Fixed a bug that no prompt when connect to OSA IPMI  
   
   Examples:
   1.host and hostrun command:
           CMM>host list
           Host:
                   Host                 IP
                   ----                 --
                   1.112                (192.168.1.112)
                   1.119                (192.168.1.119)
                   bl1                  (192.168.10.243)
                   bl2                  (192.168.10.244)
 
           Host Group:  
                   Group Name           Host
                   ----------           ----
                   1                    1.112
                                        1.119
                   bl                   bl1
                                        bl2
 
           CMM>hostrun bl ipmi power up
           [bl1:192.168.10.243]
           Done
 
           [bl2:192.168.10.244]
           Done

         
   2."*" and comma separater support for blade commands:
           CMM>bl 3,7,10 uid on
           [ 3]:
           Done
           [ 7]:
           Done
           [10]:
           Done

           CMM>bl * power on
           [ 1]:
           Blade 1 is not present
           [ 2]:
           Blade 2 is not present
           [ 3]:
           Done
           [ 4]:
           Blade 4 is not present
           [ 5]:
           Blade 5 is not present
           [ 6]:
           Blade 6 is not present
           [ 7]:
           Done
           [ 8]:
           Blade 8 is not present
           [ 9]:
           Blade 9 is not present
           [10]:
           Done



 -------------------------------------------------------------------------------
  Version 1.01.02 build 071022
 -------------------------------------------------------------------------------
 1.Added FOUND [clear] sub command and information of last update.
 2.Added IPMI oem command
     2.1 Added clear chassis intrusion command (command: ipmi oem clrint)
     2.2 Added id command for showing MB ID (command: ipmi oem id)
     2.3 Added id name command for showing MB name (Command: ipmi oem id name)
 3.Fixed a bug that impi raw command cannot accpet the prameter which the msb=1  
 4.Added listtemp command for showing all the blade system temp
         example:
         CMM>lst
         Status | Module     | Sensor               |    Reading | High Limit |
         ------ | ------     | ------               |    ------- | ---------- |
         OK     | Blade 1    | CPU1                 |   29C/ 84F |   80C/176F |
         OK     | Blade 1    | CPU2                 |   29C/ 84F |   80C/176F |
         OK     | Blade 1    | System Temp.         |   33C/ 91F |   75C/167F |
         OK     | Blade 2    | CPU1                 |   28C/ 82F |   80C/176F |
         OK     | Blade 2    | CPU2                 |   28C/ 82F |   80C/176F |
         OK     | Blade 2    | System Temp.         |   33C/ 91F |   75C/167F |
         OK     | Blade 7    | CPU1 Core A Temp.    |   49C/120F |   80C/176F |
         OK     | Blade 7    | CPU1 Core B Temp.    |   46C/115F |   80C/176F |
                | Blade 7    | CPU2 Core A Temp.    |        n/a |   80C/176F |
                | Blade 7    | CPU2 Core B Temp.    |        n/a |   80C/176F |
         OK     | Power 1    | Temp.                |   40C/104F |   85C/185F |
         OK     | Power 2    | Temp.                |   40C/104F |   85C/185F |
         OK     | Power 3    | Temp.                |   39C/102F |   85C/185F |
         OK     | Power 4    | Temp.                |   40C/104F |   85C/185F |
         OK     | GBSW 1     | Switch               |   41C/106F |   80C/176F |

 -------------------------------------------------------------------------------
  Version 1.01.01 build 071016
 -------------------------------------------------------------------------------
 
 1.Add FIND command for disocver IPMI device
 2.Add FOUND command for list the found IPMI device
 3.update history command execution. use \<#>
 4.add IPMI command group
      sensor(sr)                       Sensor status
      power                            Power control
      acpi                             ACPI status
      lan                              LAN configruation
      fru                              FRU information
      reset                            reset BMC
      ver                              IPMI device version
      raw <netFn> <cmd> [data]         Send IPMI raw command. netFn needs shift 2 bit
 
      Sub Command for lan
        ip [ip]                          get/set IP. Format:###.###.###.###
        mac [mac]                        get/set MAC. Format:##:##:##:##:##:##
        gateway [gateway_IP]             get/set gateway. Format:###.###.###.###
        netmask [netmask]                get/set netmask. Format:###.###.###.###
        snmp [<seq> <ip> [mac]]          get/set SNMP destination
        arp [on|off]                     on/off Gratuitous ARP
        dhcp [enable|disable]            enable/disable DHCP
 
 5.fixed "No enough power" message failed.
 6.fixed if out put DC power over 130A shows wrong value. It's overflow
 7.added short string command instead of long characters typing.
 8.added CMM IP address info in the "cmm status" command
 9.reduced the number of concurrent connections during the command execution. 

-------------------------------------------------------------------------------
 Version 1.00.06 build 071005
-------------------------------------------------------------------------------
 
1.add slave CMM check. Only cmm,sel and user functions are available for slave CMM
2.minor information display changed.

-------------------------------------------------------------------------------
 Version 1.00.05 build 070918
-------------------------------------------------------------------------------
1.Added command history function. press "\" and "/" for executing and displaying
  command history.
2.Added "list" command. Print all available commands
3.Added get/set mac address command in cmm.
4.Updated SEL list message.
5.Added more information in help command (press "?" or "help" in shell mode).
6.Added blade power status in the blade power command. 
7.Added cmm connected info for "cmm status" or "cmm # status" command.
8.Added wild card for ch command. Made it easier to change managed cmm ip. 
  ex:
  case 1, 192.168.100.118 change to 192.168.100.9
    CMM>ch *.9
  case 2, 192.168.100,1 change to 192.168.1.10
    CMM>ch *.1.10 

-------------------------------------------------------------------------------
 Version 1.00.04 build 070908
-------------------------------------------------------------------------------
 1.Fixed a DC current negative bug.
 2.Updated Fan control command as 1,2,3,4 and auto. auto is automatic fan control.
 3.Added ch command in shell mode used for changing IP [username] [password].
 4.Changed prompt from "=>" to "CMM>"

-------------------------------------------------------------------------------
 Version 1.00.03 build 070831
-------------------------------------------------------------------------------
 1.Fixed a parsing bug in shell mode:
   when giving the "blade" then "ver" command, it still shows blade available command.
   It should execute "ver" command.

-------------------------------------------------------------------------------
 Version 1.00.02 build 070830
-------------------------------------------------------------------------------
1.Fixed a problem of taking a long time when running under Linux OS.
  The root cause was the secure random algorithm taking a long time.
  This issue doesn't happen in Windows OS.
  Verified in the following Java Linux versions:
  a.jre 1.5.0_11 (FC4)
  b.jre 1.6.0_02 (FC6)

jre1.*.* should match your jre version.

-------------------------------------------------------------------------------
 Version 1.00.01 build 070823
-------------------------------------------------------------------------------
1.Fixed a bug that created a parse command error in shell mode.
2.Fixed a bug that prevented cmm date/time being set in shell mode.
3.Added ver command.
4.Add runtime info for help command in shell mode.
5.Some minor updates.

-------------------------------------------------------------------------------
 Version 1.0 build 070822
-------------------------------------------------------------------------------
1.First Release	


==============
7.JLine
==============

SMCIPMITool use jline for command history and tab-completion.

JLine is a Java library for handling console input. It is similar in functionality
to BSD editline and GNU readline. People familiar with the readline/editline 
capabilities for modern shells (such as bash and tcsh) will find most of the command
editing features of JLine to be familiar.

For more information, please contact http://jline.sourceforge.net/index.html

===========================
8. Return code for CLI Mode
===========================

Following return code can be used in batch or script file.

STATUS_UNDEFINED                           =  144 
STATUS_DONE                                =    0 
STATUS_CONNECT_FAILED                      =  145 
STATUS_LOGIN_FAILED                        =  146 
STATUS_EXECUTE_PARAMETER_VALIDATE_FAILED   =  147 
STATUS_EXECUTE_EXCEPTION_OCCURRED          =  148
STATUS_EXECUTE_FAILED                      =  149
STATUS_EXECUTE_ON_SLAVE_CMM_OR_UNAVAILABLE =  150
STATUS_EXECUTE_MODULE_NOT_PRESENT          =  151
STATUS_EXECUTE_ONLY_FOR_CMM_CONNECTED      =  152
STATUS_EXECUTE_NOT_SUPPORTED_DEVICE        =  153
STATUS_COMMAND_NOT_FOUND                   =  180 
STATUS_COMMAND_IP_FORMAT_ERROR             =  181 
STATUS_COMMAND_PARAMETER_LENGTH_INVALID    =  182 
STATUS_RESULT_NOT_ENOUGH_POWER             =  215 

==============================
9. NM20 command Notes and Q&A
==============================
 Here is a note for nm20 commands in SMCIPMITool. nm20 commands are 
 Node Manager V2.0 IPMI Commands refers to Intel Dynamic Power Node 
 Manager V2.0 and Created for X9 series MB testing(ME with Node Manager 2.0).
 
 These commands are Not for X8 ME Boards. If you don't know how to 
 set parameters for commands, please run the command without giving 
 parameters then it will has a short help shows up.
 
 These nm20 commands are not fully implement Node Manager v2.0 spec 
 but it covers most useful commands.

 Please note, these commands and debug Q&A are based on Node Manager V2.0 
 and tested in developing stage of X9 boards. Somehow we are still checking
 & verifying X9 ME functions. It may not work well since X9 boards are still
 in developing state by HW, BIOS and BMC. If it doesn't work properly please
 let us know.

 Jim Chiu
 jimc@supermicro.com
 
 ------------------------
 nm20 Command description
 ------------------------
 1.nm20 nmSDR
   Check if BMC firmware support ME

 2.nm20 selTime
   Check ME's SEL time

 3.nm20 deviceID
   Check ME's Device ID, Platform, firmware version and state (normal or update mode)

 4.nm20 reset
   reset ME

 5.nm20 reset2Default
   reset ME to factory default

 6.nm20 updateMode
   set ME to updateMode for ME firmware update by BIOS update tool

 7.nm20 powerOff
   power Off ME

 8.nm20 seltTest
   self test ME. it will report test result. When ME's function is not well you can try this command

 9.nm20 mode
   check if ME in Normal or Update mode

 10.nm20 listImagesInfo
   list all ME's firmware image includes Recovery Imgae, operational images.

 11.nm20 oemGetPower
   "30 E2" OEM command from BMC for getting power

 12.nm20 oemGetTemp
   "30 E2" OEM command from BMC for getting temp

 13.nm20 globalEnable
   global enable node manager policy control

 14.nm20 globalEisable
   global disable node manager policy control

 15.nm20 domainEnable <domain ID>
   per domain enable node manager policies

 16.nm20 domainDisable <domain ID>
   poer domain disable node manager policies

 17.nm20 policyEnable <domain ID> <policy ID>
   per Policy enable NM policy

 18.nm20 policyDisable <domain ID> <policy ID>
   per Policy disable NM policy

 18.nm20 addPowerPolicy <pID> <limit> <t> <p>
   This is a quick way for adding Power Policy at domain 0

 19.nm20 getPolicy <domain ID> <policy ID>
   Get the policy detail by domain ID and policy ID

 20.nm20 delPolicy <domain ID> <policy ID>
   Delete Policy by domain ID and policy ID

 21.nm20 scanPolicy
   Scan all presented Policies

 22.nm20 addPolicy <dID> <pID> <ptt> <agg> <a> <l> <t> <tl> <p>
   A complete way to add Policy. for more detail please refer to node manager 2.0 spec

 23.nm20 statistics <mode> <domainID> <policy ID>
   show node manager statistics for a given policies (or by global)

 24.nm20 resetStatistics <mode> <domain ID> <policy ID>
   Reset node manager statistics

 25.nm20 cap <domain ID> <Trigger Type>
   show the node manager capabilities by domain ID and trigger Type

 26.nm20 ver
   show node manager version

 27.nm20 alert [dest]
   set node manager alert destination and refer to BMC alert destination setting

 28.nm20 pstate [value]
   Get/Set Max allowed CPU P-State

 29.nm20 tstate [value]
   Get/Set Max allowed CPU T-State

 30.nm20 ptstate
   Show CPU P-State and T-State at same time

 31.nm20 cpuCore [cores]
   Get/Set max allowed CPU cores 

 32.nm20 totalPower <domainID> [watts]
   Get/Set Total Power Budget 


 ------------
 ME Debug Q&A
 ------------

 1.How to make sure if BMC supports to communicate with ME ?
  Check "nm20 nmsdr" command. if you get nmsdr then BMC supports communicate to ME

 2.How to make sure ME is running?
  Check "nm20 deviceID" command. if you get device ID information that means ME is running.

 3.What the status of ME ?
  Check "nm20 mode". It will show you ME is in NORMAL or UPDATE mode.

 4.If ME is in UPDATE mode, how to reset to NORMAL ?
  Check "nm20 reset" or "nm20 reset2Default"

 5."nm20 selfTest" command shows "PSU Monitoring service error  ( 80 03 )"
  You system don't have PMBus enabled power supply

 6.Some nm20 commands shows Invalid command ?
  a. check ME status if it is in Recovery(update) mode. "nm20 deviceID"
  b. if so, send command "nm20 reset" or "nm20 reset2Default"

 7.Some nm20 commands don't get any response message?
  ME may not started or not ME firmware is running on system

 8.How do I know how many policies in ME ?
  Use "nm20 scanPolicy"

 9.How do I know the current power consumption from the system ?
  There are several ways to get this value
  1."pminfo" command
  2."nm20 oemGetPower" command
  3."nm20 statistics" command

 9.How do I know the power statistic by a policy ?
  Use "nm20 statistics 17 0 <policyID>". refer "nm20 scanPolicy" get check how many policies exist.

 10.How do I know the global power statistic ?
  Use "nm20 statistics 1 0 0"

 11."nm20 scanPolicy" shows nothing ?
  Your ME don't have any policy setting before. Try to add a power by "nm20 addPowerPolicy"
  here is an example:
  SIM(WA)>nm20 addPowerPolicy 1 150 6000 10
  Done

 12."nm20 statistic 1 0 0" shows all power value are 0
  1.check "pminfo" if there is PMBus information. if none displayed, you need a PMBus power supply.
  1.check if "nm20 oemGetPower" return 0, the BMC firmware may not implement OEM command for ME.

 13."nm20 oemGetTemp" return 0 ?
  Current X9 didn't support inlet temperature yet.

 14.How can I set CPU P-state manually ?
  Node manager control policy should be disabled before setting CPU P-state
  "nm20 globalDisable"
  "nm20 pstate"          //list current CPU pstate
  "nm20 pstate [value]"  //set CPU P-state

  After running the commands, the CPU frequency should be changed by the pstate value.

 15.How can I set CPU T-state manually ?
 The node manager control policy should be disabled before setting CPU T-state
 "nm20 globalDisable"
 "nm20 tstate"         //list current CPU T-state
 "nm20 tstate [value]" //set CPU T-state

 16.I got following message when I try to set "nm20 pstate 4" ?

  Cannot execute command. Command, or request parameter(s), not supported in present state.
  (Node Manager should be disabled for setting P-State)

  Please try to global disable node manager ("nm20 globalDisable") and try again.
  If you have set total power ("nm20 totalPower") please clear to 0 by "nm20 totoalPower 0 0"


 17.How to control node manager policy control status?
  You can enable or disable node manager by global, domain and policy by following commands

  globalEnable                     Global Enable NM policy control
  globalDisable                    Global Disable NM policy control
  domainEnable <domain ID>         per Domain Enable NM policies
  domainDisable <domain ID>        per Domain Disable NM policies
  policyEnable <domain ID> <policy ID>     per Policy Enable NM policy
  policyDisable <domain ID> <policy ID>    per Policy Disable NM policy

 18.How do I know the current node manager policy control status?
  You need at least one policy exist for checking the status. try to add 1 policy into node manager by below command
  ex: nm20 addPowerPolicy  1 100 6000 10

  Then you can use "nm20 getPolicy" or "nm20 scanPolicy" to list policy and get node manager control status
  Here is an example:
  SIM(WA)>nm20 getPolicy  0 1
  Values:
  Power Limit                 = 40 w
  Correction Time limit       = 6000 ms
  Statistics Reporting Period = 10 s
  Policy Trigger Limit        = 40
  Domain ID:
      Entire platform
  Policy state:
      Policy(Enabled)  Domain(Enabled)  Global(Enabled)   <--- This is the node manager policy control state
  Policy Trigger Type:
      No Policy Trigger
  Aggressive CPU Power correction:
      Backward compatible with NMV1.5
  Policy Exception action state:
      Send alert
  raw = 57 01 00 70 10 01 28 00 70 17 00 00 28 00 0A 00

 19.How can I receive ME's alert directly ?
 Check below commands.
 SIM(WA) [!Trap(4)]>ipmi lan snmp
 Seq                   IP                  MAC
 ---                   --                  ---
   1        192.168.12.37    00:00:00:00:00:00
   2              0.0.0.0    00:00:00:00:00:00
   3        192.168.23.71    00:00:00:00:00:00 <- this is my destination
   4        192.168.12.37    00:00:00:00:00:00
   5              0.0.0.0    00:00:00:00:00:00
   6              0.0.0.0    00:00:00:00:00:00
   7              0.0.0.0    00:00:00:00:00:00
   8              0.0.0.0    00:00:00:00:00:00
   9              0.0.0.0    00:00:00:00:00:00
  10              0.0.0.0    00:00:00:00:00:00
  11              0.0.0.0    00:00:00:00:00:00
  12              0.0.0.0    00:00:00:00:00:00
  13              0.0.0.0    00:00:00:00:00:00
  14              0.0.0.0    00:00:00:00:00:00
  15              0.0.0.0    00:00:00:00:00:00

 SIM(WA) [!Trap(4)]>nm20 alert 3
 Done

 SIM(WA) [!Trap(4)]>nm20 alert
 Destionation selector = 3

 After the setting, ME will send alert to 192.16823.71

 SIM(WA) [!Trap(5)]>trap list
 -------------------------------------------------------------------------
 Trap (1)
 Sender      = 192.168.23.68
 Community   = public
 Sensor      = Node Manager Operational Capabilities Sensor
 Local Time Stamp = 1998/01/01 00:00:00 P|
 Description :
 Event Dir : Assertion
 Event Type : 74h
 Policy interface capability : Available
 Monitoring capability : Available
 Power limiting capability : Not Available
 -------------------------------------------------------------------------
 Trap (2)
 Sender      = 192.168.23.68
 Community   = public
 Sensor      = Node Manager Operational Capabilities Sensor
 Local Time Stamp = 1998/01/01 00:00:00
 Description :
 Event Dir : Assertion
 Event Type : 74h
 Policy interface capability : Available
 Monitoring capability : Available
 Power limiting capability : Available
 -------------------------------------------------------------------------
 Trap (3)
 Sender      = 192.168.23.68
 Community   = public
 Sensor      = Node Manager Alert Threshold Exceeded Sensor
 Local Time Stamp = 2011/06/24 14:08:19
 Description :
 Event Dir : Assertion
 Event Type : 72h
 Policy event : Threshold exceeded
 Threshold Index : 0
 Policy ID = 5

==============================
9. Raw data for Debug
==============================

There are two ways to display raw command for debugging

1.SMCIPMITool.Propertis file.
debug_level = 0

0:No raw displayed
1:Human read raw data. 
  Reqeuest (NetFn, Cmd, Data ...)
  Response (Completion, Data ...)
2:IPMI Message format
3:IPMI Message format with Field listed

It help for debugging on command mode.

2."debug" command in shell mode

Usage:
debug [0|1|2|3] : Display raw data between you and BMC
level 0 : No raw displayed
level 1 : Human read raw data.
          IPMI Reqeuest (NetFn, Cmd, Data ...)
          BMC  Response (Completion, Data ...)
level 2 : IPMI Message raw format
level 3 : IPMI Message raw format with detailed field list

Once you change debug level by debug command, it will be stored into SMCIPMITool.properties

Example: ipmi ver command with different debug level

SIM(X9)>debug 0
debug level = 0
level 0 : No raw displayed

SIM(X9)>ipmi ver
Firmware Revision  = 00.10
IPMI Version       = 2.0
Manufacturer ID    = 7C 2A 00
product ID         = BB AA 00

SIM(X9)>debug 1
debug level = 1
level 1 : Human read raw data.
          IPMI Reqeuest (NetFn, Cmd, Data ...)
          BMC  Response (Completion, Data ...)

SIM(X9)>ipmi ver
[ YOU -> BMC : 06 01 ]
[ YOU <- BMC : 00 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00 00 ]
Firmware Revision  = 00.10
IPMI Version       = 2.0
Manufacturer ID    = 7C 2A 00
product ID         = BB AA 00

SIM(X9)>debug 2
debug level = 2
level 2 : IPMI Message raw format

SIM(X9)>ipmi ver
[ YOU -> BMC : 20 18 C8 41 00 01 BE ]
[ YOU <- BMC : 41 1C A3 20 00 01 00 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00 00
 D5 ]
Firmware Revision  = 00.10
IPMI Version       = 2.0
Manufacturer ID    = 7C 2A 00
product ID         = BB AA 00

SIM(X9)>debug 3
debug level = 3
level 3 : IPMI Message raw format with Field listed

SIM(X9)>ipmi ver
===================
Direction = Request
rsSA      = 20
netFnLun  = 18
checkSum1 = C8
rqSA      = 41
rqSeqLun  = 00
cmd       = 01
data      =
checkSum2 = BE
Msg Size  = 7(int)
To Array  = 20 18 C8 41 00 01 BE
===================

====================
Direction = Response
rqSA           = 41
netFnLun       = 1C
checkSum1      = A3
rsSA           = 20
rqSeqLun       = 00
cmd            = 01
completionCode = 00
data           = 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00 00
checkSum2      = D5
Msg Size       = 23(int)
To Array       = 41 1C A3 20 00 01 00 20 01 00 10 02 BF 7C 2A 00 BB AA 0D 00 00
00 D5
===================







