amptool.1.html 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. <?xml version='1.0' encoding='iso-8859-1'?>
  2. <!doctype html public '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
  3. <html xmlns='http://www.w3c.org/1999/xhtml' lang='en-us'>
  4. <head>
  5. <title>
  6. amptool.1
  7. </title>
  8. <meta http-equiv='content-type' content='text/html;iso-8859-1'/>
  9. <meta name='generator' content='motley-tools 1.9.4 13:40:33 Feb 18 2015'/>
  10. <meta name='author' content='cmaier@cmassoc.net'/>
  11. <meta name='robots' content='noindex,nofollow'/>
  12. <link href='toolkit.css' rel='stylesheet' type='text/css'/>
  13. </head>
  14. <body>
  15. <div class='headerlink'>
  16. [<a href='amptone.1.html' title=' amptone.1 '>PREV</a>]
  17. [<a href='toolkit.html' title=' Index '>HOME</a>]
  18. [<a href='ampwait.1.html' title=' ampwait.1 '>NEXT</a>]
  19. </div>
  20. <pre>
  21. amptool(1) Qualcomm Atheros Open Powerline Toolkit amptool(1)
  22. NAME
  23. amptool - Qualcomm Atheros AR7x00 Powerline Device Manager
  24. SYNOPSIS
  25. amptool [options] [device] [device] [...]
  26. DESCRIPTION
  27. This version of the Qualcomm Atheros Device Manager for Linux performs basic operations on Atheros AR7400 devices using
  28. the raw Ethernet protocol described in the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual. It can be
  29. used to interrogate and control devices or upgrade firmware if on-board NVRAM is present.
  30. This program is part of the Qualcomm Atheros Powerline Toolkit. It supports chipset AR7400 and QCA7450. See plctool to
  31. support QCA6410, QCA7000 and QCA7420 devices. See the plc man page for an overview and installation instructions.
  32. COMMENTS
  33. This program version is identical to legacy program int6k except for option -m which uses version 1 of the Qualcomm
  34. Atheros VS_NW_INFO vendor-specific message. Older firmware versions may not recognize this message version.
  35. OPTIONS
  36. -a Read device attributes using VS_OP_ATTRIBUTES. Attributes are short strings and integers that describe device
  37. hardware and firmware. They are concatenated to form the output that is similar to option -r but derived differ‐
  38. ently.
  39. -B action
  40. Press the simple connect pushbutton using VS_PB_ENC. The action can be specified by number 1, 2, 3 or 4 or by
  41. symbol &quot;join&quot;, &quot;leave&quot;, &quot;status&quot; or &quot;reset&quot;, respectively. Use 1 on both devices that are expected to join. Use
  42. 2 only on the device that is expected to leave the network.
  43. -C module
  44. Commit (flash) downloaded modules to NVRAM using VS_MOD_NVM. The module can be spedified by number 1, 2 or 3 or
  45. by symbol &quot;nvm&quot;, &quot;pib&quot; or &quot;all&quot;, repectively. Module 3 is equivalent to option -F which writes the NVM and PIB
  46. together. You cannot force flash NVRAM using this option. Use option -FF to force flash.
  47. -d filename
  48. Read Watchdog Report from the device and write it to the named file in binary format using VS_WD_RPT. The report
  49. file can be sent to Qualcomm Atheros for technical analysis. No assumptions are made based on filename and no
  50. filename convetions are enforced; however, you should use a .log file extension to indicate binary format.
  51. -D xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
  52. Define the 16 octet Device Access Key (DAK) in hex format. The DAK is used by option -J. It may also be set to
  53. &quot;key1&quot; or &quot;key2&quot; as explained in the KEYS section.
  54. -e Redirects stderr messages to stdout. By convention status and error messages are printed on stderr while primary
  55. program output is printed on stdout. This option prints all output on stdout in cases where this is desired.
  56. -f Read flash memory parameters using VS_GET_NVM. An error will be reported if no flash memory is present.
  57. -F[F] Write previously downloaded MAC and PIB to NVRAM using VS_MOD_NVM. Adding a second F here or another -F anywhere
  58. on the command line will force-flash a blank or corrupted NVRAM. Firmware loaded from NVRAM will treat force-
  59. flash as an error. This option can be used to create factory settings but cannot be used to change them once cre‐
  60. ated. Subsequent use creates and updates operational settings that can be erased using a factory reset. This
  61. option is executed after all others on the command line, except for the -R option.
  62. -g Read multicast group information discovered while IGMP snooping using VS_MULTICAST_INFO.
  63. -i interface
  64. Select the host Ethernet interface. All requests are sent via this host interface and only reponses received via
  65. this host interface are recognized. The default interface is eth1 because most people use eth0 as their principle
  66. network connection; however, if environment string &quot;PLC&quot; is defined then it takes precedence over the default
  67. interface. This option then takes precedence over either default.
  68. -I Read the device PIB header using VS_RD_MOD and print the firmware major revision number, PIB minor revision num‐
  69. ber, Device Access Key (DAK), Network Membership Key (NMK), MAC address and other information on stdout. The val‐
  70. ues displayed can be changed using program modpib.
  71. -J xx:xx:xx:xx:xx:xx
  72. Set the Network Membership Key (NMK) on a remote device using VS_SET_KEY. This option is similar to option -K but
  73. requires the remote device MAC and DAK in addition to the NMK and local device MAC address. The NMK value is
  74. defined using option -K unless you want to use the default value. The remote DAK is defined using option -D
  75. unless you want to use the default value. Programming remote device keys is complicated. It is often easier to
  76. connect the device directly to the host and use the -K option.
  77. -K xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
  78. Define the Network Membership Key (NMK) value used by options -M or -J. The symbolic names &quot;key1&quot; and &quot;key2&quot; are
  79. recognized as described in the KEY section.
  80. -l count
  81. Define the number of times that the command will be repeated for each device specified. Normally, you will repeat
  82. operations on one device only.
  83. -m Read network membership information using VS_NW_INFO. This can be used to determine network configuration.
  84. -M Set the Network Membership Key (NMK) on the local device using VS_SET_KEY. The NMK value is specified using the
  85. -K option unless you want to use the default value.
  86. -n filename
  87. Read firmware from the device SDRAM and write it to the named .nvm file using multiple VS_RD_MOD messages. No
  88. assumptions are made based on filename and no filename conventions are enforced. This option is performed before
  89. option -N when both are specified.
  90. -N filename
  91. Read the named .nvm file and write it to the device using multiple VS_WR_MOD messages. No assumptions are made
  92. based on filename and no filename conventions are enforced; however, files having invalid .nvm format will be
  93. rejected. This option is executed after -n when both are specified.
  94. -p filename
  95. Read parameters from the device SDRAM and write them to the named .pib file using multiple VS_RD_MOD messages. No
  96. assumptions are made based on filename and no filename convetions are enforced. This option is executed before
  97. option BP when both are specified.
  98. -P filename
  99. Read the named .pib file and write it to the device using multiple VS_WR_MOD messages. No assumptions are made
  100. based on filename and no filename conventions are enforced; however, files having invalid .pib format will be
  101. rejected. This option is executed after -p when both are specified.
  102. -q Suppresses status messages on stderr.
  103. -Q Quick flash. The program will not wait for a device to reset or the firmware to restart after writing flash mem‐
  104. ory. This option is desirable with newer firmware that writes flash memory in the background. It has no effect
  105. unless used with option -F or -C.
  106. -r Read device firmware and hardware revision using VS_SW_VER. Output is similar to option -a but is derived differ‐
  107. ently.
  108. -R Reset the device using VS_RS_DEV. This option is executed after all others on the same command line.
  109. -s Read device SDRAM configuration using VS_RD_CBLOCK.
  110. -t milliseconds
  111. Read timeout in milliseconds. Values range from 0 through UINT_MAX. This is the maximum time allowed for a
  112. response. The default is shown in brackets on the program menu.
  113. -T Restore factory defaults. This permanently erases all PIB changes made since the device was last programmed with
  114. factory default settings. The device will automatically reset and reboot.
  115. -v Print additional information on stdout. In particular, this option dumps incoming and outgoing packets which can
  116. be saved as text files for reference.
  117. -w seconds
  118. Defines the number of seconds to wait before repeating command line options. This option has no effect unless
  119. option -l is also specified with a non-zero value.
  120. -x Cause the program to exit on the first error instead of continuing with remaining iterations, operations or
  121. devices. Normally, the program reports errors and moves on to the next operation, iteration or device depending
  122. on the command line.
  123. -?,--help
  124. Print program help summary on stdout. This option takes precedence over other options on the command line.
  125. -?,--version
  126. Print program version information on stdout. This option takes precedence over other options on the command line.
  127. Use this option when sending screen dumps to Atheros Technical Support so that they know exactly which version of
  128. the Linux Toolkit you are using.
  129. ARGUMENTS
  130. device The Ethernet hardware address of some powerline device. More than one address may be specified on the command
  131. line. If more than one address is specified then operations are performed on each device in turn. The default
  132. address is local. as explained in the DEVICES section.
  133. KEYS
  134. Passwords are variable length character strings that end-users can remember. Keys are fixed length binary values created
  135. by encrypting passwords. There are two encryption algorithms for HomePlugAV. One for DAKs and the other for NMKs. This
  136. means that a given password will produce different keys depending on use. This program only deals with keys because that
  137. is what powerline devices recognize. The passwords that generated the keys are irrelevant here.
  138. Encryption keys are tedious to type and prone to error. For convenience, symbolic names have been assigned to common
  139. encryption keys and are recognized by options -D and -K.
  140. key1 Key for encrypted password &quot;HomePlugAV&quot;. This is &quot;689F074B8B0275A2710B0B5779AD1630&quot; for option -D and
  141. &quot;50D3E4933F855B7040784DF815AA8DB7&quot; for option -K.
  142. key2 Key for encrypted password &quot;HomePlugAV0123&quot;. This is &quot;F084B4E8F6069FF1300C9BDB812367FF&quot; for option -D and
  143. &quot;B59319D7E8157BA001B018669CCEE30D&quot; for option -K.
  144. none Always &quot;00000000000000000000000000000000&quot;.
  145. DEVICES
  146. Powerline devices use Ethernet hardware, or Media Access Control (MAC), addresses. Device addresses are 12 hexadecimal
  147. digits (0123456789ABCDEFabcdef) in upper, lower or mixed case. Individual octets may be separated by colons, for clar‐
  148. ity, but not all octets need to be seperated. For example, &quot;00b052000001&quot;, &quot;00:b0:52:00:00:01&quot; and &quot;00b052:000001&quot; are
  149. valid and equivalent.
  150. These symbolic addresses are recognized by this program and may be used instead of the actual address value.
  151. all Equivalent to &quot;broadcast&quot;, described next.
  152. broadcast
  153. A synonym for the standard Ethernet broadcast address, FF:FF:FF:FF:FF:FF. All devices, whether local, remote or
  154. foreign will respond to this address.
  155. local A synonym for the Qualcomm Atheros vendor specific Local Management Address (LMA), 00:B0:52:00:00:01. All local
  156. Atheros devices will recognize this address but remote and foreign devices will not. A remote device is any
  157. device at the far end of a powerline connection. A foreign device is any device not manufactured by Atheros.
  158. REFERENCES
  159. See the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual for more information.
  160. DISCLAIMER
  161. Atheros HomePlug AV Vendor Specific Management Message structure and content is proprietary to Qualcomm Atheros, Ocala FL
  162. USA. Consequently, public information may not be available. Qualcomm Atheros reserves the right to modify message
  163. structure or content in future firmware releases without any obligation to notify or compensate users of this program.
  164. EXAMPLES
  165. # amptool -n old.nvm -p old.pib -N new.nvm -P new.pib -F 01:23:45:67:89:AB
  166. Performs 5 operations on one device. Uploads the firmware and PIB from the device and writes them to files old.nvm and
  167. old.pib, respectively. Reads files new.nvm and new.pib and downloads them as new firmware and PIB, respectively. Com‐
  168. mits the downloaded firmware and PIB to NVRAM. Operations are executed in the order just described regardless of the
  169. order specified on the command line. If you want reading and writing to occur in a different order then you must use two
  170. or more commands to accomplish tasks in the order you want.
  171. # amptool -N new.nvm 01:23:45:67:89:28
  172. # amptool -P new.pib 01:23:45:67:89:28
  173. # amptool -C 3 01:23:45:67:89:28
  174. It is not neccessary to specify all operations on one command line. The three command lines above do essentially the
  175. same thing as the command line shown in the previou example. Notice that this example uses -C 3, instead of -F, as an
  176. alternate way to write MAC and PIB to NVRAM. Specifying -C 1, instead, would write the .nvm file only. Specifying, -C
  177. 2, instead, would write the .pib file only. The value 3 is the logical OR of 1 and 2.
  178. # amptool -N new.nvm -P new.pib -FF local
  179. Downloads file new.nvm and file new.pib and force flashes the local device. Force flashing only works on running
  180. firmware that has been downloaded and stated by the Qualcomm Atheros Boot Loader. See amptoolf to download, start
  181. firmware and perform a force flash in one operation.
  182. # amptool -MK key1
  183. # amptool -M
  184. These two commands are equivalent. They set the NMK on the local device to key1 as descripted in the KEYS section. The
  185. first command resets the NMK on the local device with -M then specifies the NMK as key1. The second command omits the
  186. key specification since key1 is the program default NMK. One could, of course, type the encryption key.
  187. SEE ALSO
  188. plc(1), ampboot(1), ampboot(1), amphost(1), int6kid(1), amprate(1), amprule(1), ampstat(1), ampwait(1)
  189. CREDITS
  190. Charles Maier &lt;cmaier@qca.qualcomm.com&gt;
  191. Nathaniel Houghton &lt;nhoughto@qca.qualcomm.com&gt;
  192. open-plc-utils-0.0.3 Mar 2014 amptool(1)
  193. </pre>
  194. <div class='footerlink'>
  195. [<a href='amptone.1.html' title=' amptone.1 '>PREV</a>]
  196. [<a href='toolkit.html' title=' Index '>HOME</a>]
  197. [<a href='ampwait.1.html' title=' ampwait.1 '>NEXT</a>]
  198. </div>
  199. </body>
  200. </html>