[ath9k-devel] Hack ath9k driver for wifi time of flight measurement
schnitzbauer at teco.edu <[email protected]>
| Newsgroups | org.ath9k.lists.ath9k-devel |
|---|---|
| Message-ID | <[email protected]> |
Hello Everett, I'm currently heading towards the same experiment setup for another usecase. I use two tl-wn722n with ath9k_htc attached to a raspberry pi. I talked to Mathy Vanhoef (Mathy.Vanhoef at cs.kuleuven.be) and he confirmed what i already thought while checking the transceiver block diagram and Adrian Chadd wrote in the freebsd spectral wiki page. You can either get spectral information of demodulate the frame for beeing processed through the protocol stack. He recommends either one of the following setups, which intuitively come to mind: 1. Detect the start of packets based on the increased signal strength that can be seen in the spectral scan samples. 2. Use two devices as receiver. One decodes the frames, the other captures spectral scan. Synchronize the captures based on the MAC timestamps produced by both chips. In my eyes a hybrid solution, doing a measurement start with a frame, synchronizing on that and then performing the actual measurement is the way to go. Starting the measurement from within the firmware on the chip is necessary in my eyes for reliable synchronization due to the unpredictability and delays if events are processed on linux processor. You may know this paper: dl.acm.org/ft_gateway.cfm?id=2000029 . Domenico Giustiniano did a busy loop within the driver code to solve the problem with unpredictable scheduling. He is currently working on a broadcom platform with a custom firmware There is a tx99 mode http://www.spinics.net/lists/linux-wireless/msg113353.html, which may be the TX operation i would prefere. Having the tx99 mode in ath9k_htc, too would be helpful. Greetings, V. Schnitzbauer Zitat von ?? <[email protected]>: > Hi All, > > > I am pretty new to ath9k driver. But I read a recent paper by MIT > that the channel state information (CSI) of wifi can > be used for precision positioning. They used Intel 5300 wifi module > which has CSI tool support. Some of the > ath9k devices, such as ar9462, ar9380 etc are also supported by an > open source CSI tool. So I want to use them > to reproduce MIT's method. > > > I have already built a wifi CSI test system with two computers using > ath9k driver. They can get the CSI readings > out fine (carrier phase). But I need to be able to control the band > (2.4G, 5G) and channel of the wifi. Preferably loop > through 2.4 and 5G bands, and every channel of them. For each > channel, I need to read CSI for both computer > while one is transmitting and other is listening then reverse the > transmitting and listening. What is the > easiest thing to do to? > > > The ath9k CSI tool can be found here: > > > http://pdcc.ntu.edu.sg/wands/Atheros/ > > > MIT's cool method for accurate wifi positioning can be found here: > > > http://people.csail.mit.edu/deepak/Slides/NSDI2016_Chronos.pdf > > > Thanks in advance and Best regards, > > > Everett