plcset(1) Qualcomm Atheros Open Powerline Toolkit plcset(1)
NAME
plcset - Qualcomm Atheros PLC Set Property
SYNOPSIS
plcset [options] [type data] [type data] [device] [device] [...]
DESCRIPTION
Set a specific property value on an Qualcomm Atheros powerline device using the VS_SET_PROPERTY message. Properties are
specified using their numeric property identifier. Property names are not supported. Property values are entered using
type and data pairs. Users familiar with program setpib should already understand this method of entering data values.
Only selected properties can be set using this message type. See the Qualcomm Atheros Firmware Technical Reference Man‐
ual for supported property identifiers, versions, values and data formats.
This program is part of the Qualcomm Atheros Powerline Toolkit.
OPTIONS
-e Redirects stderr messages to stdout. By convention status and error messages are printed on stderr while primary
program output is printed on stdout. This option prints all output on stdout in cases where this is desired.
-n number
The property identifier or peoperty version. Property identifiers and versions are entered as 32-bit decimal
integers. Property names are not supported. The default is 0. This option may appear more than once on the com‐
mand line. The first occurance specifies the property identifier. The second occurances specifies the property
version. See the Firmware Technical Reference Manual for an list of valid property identifiers and versions.
-i interface
Select the host Ethernet interface. All requests are sent via this interface and only reponses received via this
interface are recognized. The default interface is eth1 because most people use eth0 as their principle network
connection; however, if environment string "PLC" is defined then it takes precedence over the default interface.
This option then takes precedence over either default.
-o option
The update option (or method) expressed as an 8-bit hexadecimal integer. The prefix "0x" is optional. Option
values are constructed from the logical OR of 0x01=ApplyNow, 0x02=Persist and 0x04=Reset. The only legal option
values are 0x01, 0x02, 0x03 and 0x06.
-q Suppresses status messages on stderr.
-v Prints additional information on stdout. In particular, this option dumps outgoing Ethernet packets on stdout.
-?,--help
Displays program help information on stderr. This option takes precedence over all other options on the command
line except version information.
-!,--version
Displays program version information on stderr. This option takes precedence over all other options on the com‐
mand line except help information. Use this option when sending screen dumps to Atheros technical staff.
ARGUMENTS
device The MAC address of some powerline device. More than one address may be specified. If more than one address is
specified then operations are performed on each device in turn. The default address is local. See DEVICES for
information about symbolic device addresses.
FORMATS
Each property is assigned one or more values. Each value may have a different type and size. The expected type, size
and order of property values is described in the Firmware Technical Reference Manual under the VS_SET_PROPERTY message
description. Expected data types and values must be entered on the command line in the order specified in the manual and
must appear on the command line before any device addresses appear.
byte integer
An unsigned integer stored as 8 bits or 1 byte. The value is expressed in decimal by default. A binary value may
be expressed with a 0b prefix. A hexadecimal value may be expressed using a 0x prefix. The offset increments by
1 prior to the next insertion.
word integer
An unsigned integer stored as 16 bits or 2 bytes. The value is expressed in decimal by default. A binary value
may be expressed with a 0b prefix. A hexadecimal value may be expressed using a 0x prefix. The result will be
sent in little endian byte order. The offset increments by 2 prior to the next insertion.
long integer
An unsigned integer stored as 32 bits or 4 bytes. The value is expressed in decimal by default. A binary value
may be expressed with a 0b prefix. A hexadecimal value may be expressed using a 0x prefix. The result will be
sent in little endian byte order. The offset increments by 4 prior to the next insertions.
huge integer
An unsigned integer stored as 64 bits or 8 bytes. The value is expressed in decimal by default. A binary value
may be expressed with a 0b prefix. A hexadecimal value may be expressed using a 0x prefix. The offset increments
by 8 prior to the next insertion. The result will be sent in little endian byte order. This type is only avail‐
able on hosts that support 64 bit data values.
data hex
A sequence of hexadecimal octets. Octets may be separated by a colon for clarity. The number of octets deter‐
mines the number of bytes written. The result is sent in the byte order specified on the command line. The off‐
set increments by the number of bytes written. This is similar to "key" and "mac" below but accepts variable
length input.
key hex
A sequence of hexadecimal octets. Octets may be separated by a colon for clarity. The number of octets must con‐
vert to 16 bytes or an error will occur. The result is sent in the byte order specified on the command line. The
offset increments by 16 prior to the next insertion. This is similar "data" above but accepts ony fixed length
input. This option may be used to set the DAK, NMK or NVAK values.
mac hex
A sequence of hexadecimal octets. Octets may be separated by a colon for clarity. The number of octets must con‐
vert to 6 bytes or an error will occur. The result is sent in the byte order specified on the command line. The
offset increments by 6 prior to the next insertion. This is similar "data" above but accepts only fixed length
input. This option may be used to set the DAK, NMK or NVAK values.
hfid string
An ASCII character string. The string is always stored as 64 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 64 prior to the next insertion. This option may be used to enter user, network and manufacturer identi‐
fication strings.
zero count
An unsigned integer representing the number of consecutive bytes to fill with 0x00. The offset increments by the
number of bytes written. This option may be used to erase regions of the PIB.
fill count
An unsigned integer representing the number of consecutive bytes to fill with 0xFF. The offset increments by the
number of bytes written. This option may be used to erase regions of the PIB.
skip count
An unsigned integer indicating the number of bytes to skip over before staring another change. Intervening data
data locations are unchanged.
TR69 DATA TYPES
These data types are not currently recognized by the runtime firmware and so errors will certainly result if they are
used.
accesspassword string
An ASCII character string. The string is always stored as 257 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 257 prior to the next insertion.
accessusername string
An ASCII character string. The string is always stored as 33 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 33 prior to the next insertion.
adminpassword string
An ASCII character string. The string is always stored as 33 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 33 prior to the next insertion.
adminusername string
An ASCII character string. The string is always stored as 33 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 33 prior to the next insertion.
password string
An ASCII character string. The string is always stored as 257 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 257 prior to the next insertion.
url string
An ASCII character string. The string is always stored as 257 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 257 prior to the next insertion.
username string
An ASCII character string. The string is always stored as 257 bytes. Short strings are padded on the right with
NUL characters. Long strings are truncated on the right and the last byte is forced to NUL. The offset incre‐
ments by 257 prior to the next insertion.
DEVICES
Powerline devices use Ethernet Media Access Control (MAC) addresses. A MAC address is a 48-bit value entered as 12 hexa‐
decimal digits in upper, lower or mixed character case. Octets may be separated with colons for clarity. For example,
"00b052000001", "00:b0:52:00:00:01" and "00b052:000001" are valid and equivalent.
The following MAC addresses are special and may be entered by name instead of number.
all Same as "broadcast".
broadcast
A synonym for the Ethernet broadcast address, FF:FF:FF:FF:FF:FF. All devices, whether local, remote or foreign
recognize messages sent to this address. A remote device is any device at the far end of a powerline connection.
A foreign device is any device not manufactured by Atheros.
local A synonym for the Qualcomm Atheros vendor specific Local Management Address (LMA), 00:B0:52:00:00:01. All local
Atheros devices recognize this address but remote and foreign devices do not. A remote device is any device at
the far end of a powerline connection. A foreign device is any device not manufactured by Atheros.
REFERENCES
See the Qualcomm Atheros HomePlug AV Firmware Technical Reference Manual for the latest information on available proper‐
ties.
DISCLAIMER
Atheros HomePlug AV Vendor Specific Management Message structure and content is proprietary to Qualcomm Atheros, Ocala FL
USA. Consequently, public information may not be available. Qualcomm Atheros reserves the right to modify message
structure and content in future firmware releases without any obligation to notify or compensate users of this program.
EXAMPLES
The following example sets the "time-to-live" property for each channel access priority type: CAP0, CAP1, CAP2, CAP3 and
MME. The property identifier is 101. It needs five 32-bit decimal integer values in microseconds. Data type long spec‐
ifies a 32-bit decimal value that will be converted to little endian format on output.
# plcset -n 101 long 100 long 200 long 250 long 300 long 100
The next example set the User HFID. The first occurance of option -n specifies the property by number as 105. The sec‐
ond occurance specifies the property version as 1. This is merely an example of how to specify the propery version. At
the time of writing, property 105 is still version 0.
# plcset -n 105 -n 1 hfid "Intergalactic Software Pirates"
SEE ALSO
plc(1), getpib(1), modpib(1), plcset(1), setpib(1)
CREDITS
Charles Maier <cmaier@qca.qualcomm.com>
open-plc-utils-0.0.3 Mar 2014 plcset(1)