Somehow my LimeSDR Mini is behaving weird while receiving WiFi data from a packet-spammer. I have used Bastian’s gr-ieee802-11 for implementing WiFi Rx flowgraph. It receives data when frame size is 1500 Bytes however when I reduce the frame size, it stops receiving. So I was thinking that instead of working with GNURadio, I will start working with APIs so that nothing remains unknown (inside a black-box like in GNURadio).
Could anyone point me in right direction as to where to start from, how to access APIs for LimeSDR Mini and possibly if I can obtain API for WiFi Rx as well.
I don’t recall seeing documentation for the API.
There is one gotcha: start the LimeSDR’s receive channel first. And start the LimeSDR’s receive channel first when you want LimeSDR to transmit only.
I am trying to use WiFi OFDM API with LMS API. The data format received by LimeSDR mini is int_16 type however the data type used by OFDM API is double type in the range [-1,1]. Is there a converter inherent to Limesuite that can convert the data format as well as scale the data ? Or if not then whether doing this in software will hamper the data received by the LimeSDR Mini?
Basically I would like to know how sample (or streaming) data from a format the device understands can be converted to a format the user can deal with.
But I need in double format which has higher precision than float. And if I change from float to double, it affects the CRC received with transmit frame and one calculated at receiver resulting in rejection of frames.
I don’t see how changing from float to double could have any effect in this situation, considering we’re talking about raw data samples being sent and received from the device. As the device ADC/DAC hardware operates on 12bit integers, it doesn’t matter if the source or sink buffer is a float or double, in the end hardware still uses those values discretized into integers ranging [-2048:2047].
So when you’re sending or receiving data from the device, samples recalculation from/into float/double should make no difference as both have enough precision to have 1/4096 resolution.
Since I am using LimeSDR mini asr WiFi receiver, my sampling rate is set to 20MSamples/s. However, the sample rate achieved at the board using the APIs is only around ~ 10-12 MSamples/s. What could be possible reason behind this behaviour?
Clearly USB-3 port supports higher data transfer rate so is it that LimeSDR mini is unable to receive signal at higher data rate or the samples are getting lost before reaching the PC for processing?