Dear ath9k developers,

I am currently working with Atheros CSI Extraction Tool [1] to get a true
phase of each subcarrier.

- Background

[2], [3] and many other papers claim that phase information from extracted
CSI contains two components: true phase and unwanted phase offset due to
subcarrier and time delay.
i.e., measured_phase = true_phase + time_delay * subcarrier_index +
phase_offset_due_to_txrx_mismatch
This equation can be visualized as below:

http://i.imgur.com/rk9Hh1M.png

(Please note that this figure is based on CSI tool for Intel 5300 NIC.)

It contains unwanted linear phase offset and constant phase offset. Since
the true phase is relatively small, it seems that phase is monotonically
increasing or decreasing in macro view due to the unwanted phase offsets.
We cannot see a tiny true phase currently.

To remove phase offset due to subcarrier, the mentioned papers are
attempting to remove it with linear fitting ax + b,
where a = slope of the figure, b = average of measured phase, and x =
subcarrier index.

After removing unwanted phase offset components, the true phase is
estimated.
This estimated true phase seems steady and consistent across a time
duration shorter than < 100 - 1000 ms:

http://i.imgur.com/AO89vYV.png

Note that Y-axis scale is reduece from [-50, 10] to [5, -3]

- My question

I want to extract and manipulate CSI phase WITH ATH9K NIC.

After extracting CSI from my ath9k NIC (AR9580 @ 2.4 GHz) with Atheros CSI
extraction tool,
I've tried various fitting methods to eliminate unwanted components and
stacked results from nearly 100 packets:

http://i.imgur.com/5r9eYwO.png

>From the result, in short, removing only constant offset across subcarrier
seems to be effective. But I'm not sure.
And sometimes, some phase measurement show large dispalcement along y-axis
even they are captured within very short duration.

Hence the question is,
Is ath9k reports CSI with those unwanted linear phase offset removed?
If it is not, should I look into Atheros CSI tool? As I look into it, it
just captures CSI from the kernel and does not modify it.
Or, Is CSI of Atheros different form that of Intel? I don't think so...

The final goal of extracting true phase from CSI of ath9k is to determine
angle of arrival (AoA) of signal.

Regards,
Jeon.

[1]: http://pdcc.ntu.edu.sg/wands/Atheros/ "Atheros CSI Extraction Tool"
[2] K. Qian, C. Wu, Z. Yang, Y. Liu, and Z. Zhou, “PADS: Passive detection
of moving targets with dynamic speed using PHY layer information,” in 2014
20th IEEE International Conference on Parallel and Distributed Systems
(ICPADS), 2014, pp. 1–8.
[3] M. Kotaru, K. Joshi, D. Bharadia, and S. Katti, “SpotFi: Decimeter
Level Localization Using WiFi,” SIGCOMM Comput. Commun. Rev., vol. 45, no.
4, pp. 269–282, Aug. 2015.
[4] http://dhalperi.github.io/linux-80211n-csitool/ "Linux 802.11n CSI
Tool"
_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to