-
Notifications
You must be signed in to change notification settings - Fork 62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
payload len: 1924 #22
Comments
Hi there, Actually, our tool will calculate the CSI for all the valid 11n packet from the sender with our tool installed. So, it is OK for you to receive some packet with different payload length. The packet may not be transmitted by the sendData. It could be some control packet or whatever packet from the sender. Our matlab should be fine to deal with packets with different length. Why it will destroy the log.dat? Yaxiong |
Hi Yaxiong, the problem is that the payloads with len 1924 don not contain any csi data. It means csi is empty, for example when there is a csi, it looks like this csi: 3x2x114. When payload len 1924 occurs, the csi looks like this csi: [ ]. Accordingly, the matlab plots nothing. One more problem. We use a box in which we put our antennas (3x3) and we close the box. in the next step we send 50 packets 10 times and we write log.dat for every 50 packets. Why are they always different, when even nothing is between antennas? Unforchantly, we can not wait, because we have also a deadline for our thesis. |
Then what's the CSI_len when you receive the packet with payload length
1924? The tool will record all packets including both correctly decoded and
corrupted packets. And corrupted packets will come with *NO *CSI data (CSI
matrix will be empty) and the CSI_len will be 0.
I don't know what do you mean by a box? A metal box or what? I don't quite
get it.
…On Mon, Mar 13, 2017 at 3:28 PM EuclidGH ***@***.***> wrote:
Hi Yaxiong,
the problem is that the payloads with len 1924 don not contain any csi
data. It means csi is empty, for example when there is a csi, it looks like
this csi: 3x2x114. When payload len 1924 occurs, the csi looks like this
csi: [ ]. Accordingly, the matlab plots nothing.
One more problem. We use a box in which we put our antennas (3x3) and we
close the box. in the next step we send 50 packets 10 times and we write
log.dat for every 50 packets. Why are they always different, when even
nothing is between antennas?
Unforchantly, we can not wait, because we have also a deadline for our
thesis.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#22 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AF-RQz3sATx5NInXW0QE5TYkLafPAydKks5rlPAhgaJpZM4MaLyh>
.
|
Hi there, So, here is an example of the recv_CSI terminal output: I sent 50 packets from send_Data. As you can see, only 46 packets hase been received and all are with 1924. The matlab says Error using read_log_file (line 53) Wrong endian format. So, Why it happens and why I do not receive all 50 packets? you can find ten experiments here For all experiments, I used 50 packets. Please check and give some comments, please. About the box, we use a metal box, but in the next step, we want to replace it with an alu box. Thank you very much and waiting for your reply. |
I checked your data. I think the problem may be caused by the data rate. You can check the data is very high 0x94 which means it will use 3stream to transmit the data. Can you try to lower the data rate to 1 stream, redo the experiment and give me output? |
Furthermore, you can check the terminal output. When the data rate is 0x8e, it works fine. However when the data rate changed to 0x94, it goes wrong. It may be my fault. There could be some bugs when processing the data with 3 streams. I am not sure at this moment. But I think it will work if you lower the data rate which is the fast way to fix it at this moment. |
Hi there, how can I lower the data rate from myself? Since the packets have been sent, during processing will be defined the data rate. I have no influence. What about the packages updates and upgrades? Please tell me, how can I lower the data rate and I will send you experiments again. Thank you. |
Hi there, I debugged read_log_file.m and found some strangers. Next, I printed sendbuf in the sendData.c to see, what exactly will be sent to the receiver. Also, I printed the data_buf in the csi_fun.c. So, the sendbuf is built like this For example, when we measure using 10 packets and nothing change during measuring, we have actually to get always the same results, if a packet has not been lost. But the results are always different because of bytes from above. In addition, you told me that I should lower the data rate. How can I do it, if I do not have any control over the rate, or I do? So, the debugging has been done when the payload len was 1040. Since we got len 1924, we stoped and tried to get 1040 again while sending many packets. But, it without any succes. We do not know, how we can restart or may be clean the system from 1924 len. Please check my report and give me some comments with explanations. I know, this is too much, but I need your help. Also, please let me know about changing of rate. After it, I will send you the experiments again. And in addition, since the problem with payload len 1924 Bytes has been occurred again, even the restart of the whole system (PC and Laptop) does not help to come back to the 1040 payload len. |
Hi, there, Because I use a different Linux system, so it will be difficult for me to tell you how to lower the data rate in Ubuntu or OpenWRT. So I write a program myself to control the data rate, the antenna number, bandwidth and so on. I can add more if you need it. But to add one functionality and test it takes a long time. Currently, I succeed in controlling the rate, antenna number and bandwidth. I will integrate it into our CSI tool soon. And I will write a tutorial for it. Sorry for the delay. |
It could be better if you will add you or show us how you exactly control the rate. thanks |
如何调整速率,您解决了吗@EuclidGH |
@EuclidGH I would like to ask if you have found the way to control the data rate. I think @xieyaxiongfly has not added this functionality, I can see still packets are being sent with different data rates. |
@muhmaz3 I'm sorry, it was more than two years ago. So fa I can remember, we could not control the rate and we just implement a function which could detect and filter only the needed rates out. However, it is not excluded that we really could find a solution. The Project has been given to other PhD students. Sorry. |
@EuclidGH Thanks for the quick response. I have found a way to control it from Luci web interface at the moment. At higher data rates, I was able to reproduce the error that you have mentioned in your original post. |
@muhmaz3 Great! If you could somehow share your way to control it, I would like to take a look in. Thank you. |
I am currently using TL-WDR 4300 as AP and transmitter. After flashing OpenWrt with CSI tool provided by @xieyaxiongfly. One can SSH to the router. This will return supported MCS rate indexes. The command below will set ht-mcs-bit rate index. These indexes are given in Appendix 1 of the this document. |
Payload len 1924 is actually a bug in the csi extraction module of CSI Kernel Driver. It is not the payload, but a part of CSI buffer that is split into 2 and is not handled properly inside csi extraction driver in Linux kernel. Total transmission is actually 1924 + 641 = 2565 bytes. This error occurs if you are receiving the largest possible payload: 114x3x3. Please see csi_len0.patch on how to receive 3x3x114 payload successfully |
Hi all,
why I get payloads with len 1924? How can I avoid them?
They destroy the whole log.dat. And I also get other payloads with different len, even when the recv_csi is started, but nothing has been sent to it from send_Data.
Why it happens?
Please help me to find a solution.
Best wishes
The text was updated successfully, but these errors were encountered: