I want to set up a 23.5 mile link (using high-gain dish antennas) using units with atheros 802.11ac cards.
it should be as much as the driver allows
The maximum allowed value is
I traced the code path for distance from LUCI down to the ath9 and 10k HALS.
The limit is set by the maximum value of field AR_TIME_OUT_ACK for ath9k, WAVE1_PCU_ACK_CTS_TIMEOUT_MAX for ath10k(-ct) in hardware register 0x8014, AR_TIME_OUT for ath9k, WAVE1_PCU_ACK_CTS_TIMEOUT for ath10k.
For both the value is masked by 0x3FFF, so max is decimal 16,383.
The timeout is how long the hardware CPU takes to downcount the value in this register field.
This depends on the harware clock rate, 44 MHz for ath9k, 88 for ath10k, so uSeconds is 372 for ath9k, 186 for ath10k.
I googled for the complete data packet - ACK cycle:
assume downcoount begins at end of packet. Times are uS:
transit = distance / 300
SIFS ath9k=10, ath10k=16
ACK return transit = distance / 300
- signal exttension ath9k=6, ath10k=0
- 14 bytes payload = 14*8/?6Mbps=18
data packet marked acknowledged
This would give maximum distances ath9k=47,700, ath10k=23,850 Meters.
But, I don't know if this is correct, especially whether the ACK payload is at a fixed low rate (6Mbps), or at the rate of the original packet.
This is theoretical, I was hoping smoeone would know the actual maximum, maybe determined empirically.