amprate(1)
π amprate π
okay bestie, let's talk about amprate π¦ It's the Qualcomm Atheros Open Powerline Toolkit at its most iconic, so buckle up β¨
β¨ NAME β¨
amprate is the Qualcomm Atheros AR7x00 PHY Rate Monitor, and it is giving main character energy π
π SYNOPSIS π
amprate [options] [device] [device] [...]
πΈ DESCRIPTION πΈ
okay so the Atheros PHY Rate Utility pokes at one or more devices and tells you the average transmit and receive PHY rates between a device and each neighboring network device π₯ The output is column-based, so it's perfect for dumping into a spreadsheet or feeding into a simple program π
This program is part of the Qualcomm Atheros Powerline Toolkit π§ Check out the plc man page for the overview and install instructions, bestie π«Ά
π COMMENTS π
tea time π΅ This program is basically identical to the legacy program int6k, except options -t and -T use version 1 of the Qualcomm Atheros VS_NW_INFO vendor-specific message. Older firmware versions might not recognize this message version π
β¨ OPTIONS β¨
-cβ shows the coded PHY rates π Coded rates are already the default, so this one is technically redundant, but it's kept around for backwards compatibility π This option and-uare mutually exclusive, so don't stan both at once π-d secondsβ how long the traffic lasts for each connection, in seconds β±οΈ Directional traffic gets sent between each pair of powerline devices for that long. The total time to generate traffic between all devices is roughlyn!times this value, so don't get carried away π The minimum is 1 second and the maximum is 60 seconds.-eβ redirects stderr messages to stdout π Normally status and error messages go to stderr while the main output goes to stdout. This option sends everything to stdout for when that's what you want π«Ά-i interfaceβ picks the host Ethernet interface π All requests go out this interface, and only responses received on it get recognized. The default iseth1, since most people useeth0as their main network connection π But if the environment stringPLCis defined, it takes priority over that default. And this option beats both of them π-nβ reads the average transmit and receive PHY rate for each device usingVS_NW_INFOand prints it to stdout π Each output line shows the Ethernet interface, source address, destination address, and either the transmit or receive PHY rate.-o millisecondsβ read timeout in milliseconds β° Values can go from0throughUINT_MAX. It's the max time allowed for a response. The default is shown in brackets on the program menu π-rβ reads the device's hardware and software revision info usingVS_SW_VERand prints it to stdout π οΈ-Rβ resets the device usingVS_RS_DEVπ-tβ generates powerline traffic between the local device and each remote device on each powerline network connected to the host π It does not generate traffic between remote device pairs π This one is especially useful when remote powerline devices aren't hooked up to Ethernet devices that can send traffic back to the host π«Ά-Tβ generates powerline traffic between all devices on each powerline network connected to the host π It's similar to-t, but it takes way longer because traffic gets generated systematically between every pair of powerline devices. Complete traffic path coverage isn't always needed π€·
heads up π The time to complete -T grows factorially as you add network devices, so this one can take a seriously long time.
-uβ displays the un-coded PHY rates π Coded rates are shown by default. This option and-care mutually exclusive.-qβ enters quiet mode π€« Progress messages get suppressed.-vβ enters verbose mode π’ Every Ethernet frame the program sends or receives gets displayed on stdout.-xβ exits on the first error with a non-zero exit code πͺ This lets shell scripts detect failed or incomplete operations and respond accordingly π§-?,--helpβ prints the program help summary on stdout β This option takes precedence over other options on the command line.-!,--versionβ prints the program version info on stdout π·οΈ It also takes precedence over other options on the command line. Use it when sending screen dumps to Atheros Technical Support so they know exactly which version of the Linux Toolkit you're using π
π¦ ARGUMENTS π¦
deviceβ the MAC address of some powerline device π You can specify more than one. If you do, operations run on each device in turn. The default islocal. See DEVICES for info about symbolic device addresses.
π§ DEVICES π§
Powerline devices use Ethernet Media Access Control (MAC) addresses π’ A MAC address is a 48-bit value entered as 12 hexadecimal digits, in upper, lower, or mixed case. Octets can be separated with colons for clarity. These are all valid and equivalent π―:
00b05200000100:b0:52:00:00:0100b052:000001
The following MAC addresses are special and can be entered by name instead of number β¨
allβ same asbroadcast.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 don't. 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 more info π€
π¬ EXAMPLES π¬
Example one! This shows the average TX and RX PHY rates from each of two devices. One is a local device connected to interface eth2, and the other is a remote device at the far end of the powerline. They're the only two devices on this powerline network, so notice the reciprocal rates shown π
# amprate -ni eth2 00:B0:52:00:00:AA 00:B0:52:00:00:BB
eth2 00:B0:52:00:00:AA 00:B0:52:00:00:BB TX 163 mbps
eth2 00:B0:52:00:00:AA 00:B0:52:00:00:BB RX 176 mbps
eth2 00:B0:52:00:00:BB 00:B0:52:00:00:AA TX 176 mbps
eth2 00:B0:52:00:00:BB 00:B0:52:00:00:AA RX 163 mbps
Example two! This one generates powerline traffic between the local device and each remote device, because -t is present π Then it displays the PHY rate read from the local device.
# amprate -tni eth2
eth2 00:B0:52:00:00:AA 00:B0:52:00:00:BB TX 163 mbps
eth2 00:B0:52:00:00:AA 00:B0:52:00:00:BB RX 176 mbps
π DISCLAIMER π
heads up π«£ The Atheros HomePlug AV Vendor Specific Management Message Entry structure and content is proprietary to Qualcomm Atheros, Ocala FL USA. That means public info 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.
π SEE ALSO π
plc(1), amprule(1), ampstat(1), amptone(1)
π«Ά CREDITS π«Ά
- Nathaniel Houghton
- Charles Maier
ily bestie π this little guide came from open-plc-utils-0.0.3, November 2013, and we're keeping it iconic forever ππ π
π¦ where this page comes from
- alpine 3.24: open-plc-utils-doc 0_git20250712-r1 Β· BSD-3-Clause-Clear
- debian bookworm: plc-utils-extra 0.0.6+git20230504.1ba7d5a0-1 Β· BSD-3
- debian trixie: plc-utils-extra 0.0.6+git20250517.7fb8ac5-1 Β· BSD-3
- ubuntu noble: plc-utils-extra 0.0.6+git20230504.1ba7d5a0-1 Β· BSD-3
- ubuntu questing: plc-utils-extra 0.0.6+git20250517.7fb8ac5-1
- ubuntu resolute: plc-utils-extra 0.0.6+git20250712.46c3506-1 Β· BSD-3
- ubuntu stonking: plc-utils-extra 0.0.6+git20250712.46c3506-1 Β· BSD-3
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms