ccsh23 / SoapySDR_TXRX_Burst_Tester

0 stars 1 forks source link

SOAPY_SDR_END_BURST is a flag, not used as a return code #1

Open guruofquality opened 6 years ago

guruofquality commented 6 years ago

https://github.com/ccsh23/SoapySDR_TXRX_Burst_Tester/blob/910a53b187eb822ccdb773a8c9e13184a1f787ce/SoapySDR_TXRX_Burst_Tester/classes/sdr/SDR_Device_Wrapper.cpp#L388

Also, you can simplify this switch with the function: SoapySDR::errToStr(code) :-)

guruofquality commented 6 years ago

To add to this, if you were looking for the EOB ACK indication

1) LimeSDR has no support for this message. So you might be waiting for full timeout on readStreamSTatus, perhaps subsequent packets are late because of this. I changed the code to use a zero timeout and noticed very different behaviour and no Ls printed for late packet

2) EOB ack indication on systems that support it are actually presented as a good return code (0) on readStreamStatus and with the flag SOAPY_SDR_END_BURST set. In other words it not considered an error condition so there is a message presented by the flags and time.

Everything else is a return error code, so I understand this is probably a bit funny. But stream status is usually the most hardware specific. Its just sort of there for async reporting... if you can use it.