ptrkrysik / gr-gsm

Gnuradio blocks and tools for receiving GSM transmissions
Other
1.34k stars 430 forks source link

Add LimeSDR support #393

Open ptrkrysik opened 6 years ago

ptrkrysik commented 6 years ago

Test applications on LimeSDR and add needed changes. References: #350, #338

9600 commented 6 years ago

Just to comment that, if possible, it would be better to take a more direct route and not go via gr-osmosdr -> UHD -> SoapySDR -> Lime Suite. E.g. gr-osmosdr -> SoapySDR -> Lime Suite would at least cut one abstraction out. Although I'm not sure if perhaps you need features provided by UHD?

ptrkrysik commented 6 years ago

Currently only grgsm_trx app (which is in ptrkrysik/trx branch) needs features provided by UHD.

Regarding the advice - I wouldn't try to use UHD to support LimeSDR if I it's not necessary.

9600 commented 6 years ago

There is work under way to directly integrate OsmoTRX via LMS API and remove all these intermediary layers. Longer term I think we (Myriad-RF/Lime) may look at also creating some gr-limesdr blocks or similar that integrate with LMS API, since all these abstractions are great for plug and play with simpler things, but do also hide a lot of functionality from more advanced applications and provide more hiding places for issues.

ptrkrysik commented 6 years ago

It would be great to have some source/sink blocks that provide similar functionality to gr-uhd blocks. I was thinking of adding stream tags support in gr-osmosdr (at least for SoapySDR). But even if I find time for this I can't promise all functionalities that can be found in gr-uhd will be implemented.

9600 commented 6 years ago

Just to note that we do now have blocks which integrate direct via LMS API.

https://github.com/myriadrf/gr-limesdr

I have enquired with a colleague to see whether more work will be needed for these to support grgsm_trx.

ptrkrysik commented 6 years ago

@9600, for sure support for stream tags is missing. We are using them to:

We are also developing hopping that is based on UHD timed commands that are controlled with 'tx_command' tags that have 'freq' and 'time' fields.