Google Summer of Code (GSoC)¶
GSoC is a Google-sponsored event to get students involved in Open Source projects (Website)
List of ideas¶
Please post project ideas here. Make sure to include a description of the project, ideally including prerequisites and an expected outcome. For an idea how this could look like, check out the KDE idea list.
Projects are sorted by category. If you feel your project idea does not match an existing category, create a new one. If you're posting an idea, consider of you can mentor this project, and put your name down.
Some of these projects require access to one or more USRPs plus daughterboards (or other radio measurement equipment, such as oscilloscopes). If you apply as a student, make sure you have access to these devices. We cannot provide USRPs for everyone.
GNU Radio Development¶
Integration of GNU Radio into Eclipse.¶
Details: Create a development environment for GNU Radio based on Eclipse (see also: Call20120119). The goal is to make the entry point into GNU Radio easier for beginners. The Eclipse extension could help in the actual coding process (e.g. code completion, knowledge of GNU Radio modules etc.) but also provide graphical tools (possibly a GRC integration).
Or: GNU Radio-fying the DRM software radio DREAM.
Details: DREAM is an Open Source implementation of DRM (Digital Radio Mondiale), a digital replacement for short- and medium-wave broadcast. This could be ported to become a true GNU Radio flow graph.
Knowledge prerequisite: Signal processing, some C++
Mentor: Jens Elsner (CEL, KIT)
Extending the GNUradio version of DREAM to DRM+¶
Extending the GNUradio version of DREAM to DRM+ (Extension of DRM to higher frequencies which is just through the ITU standardisation and could be interesting for community radio, see: http://drm.org/news_item/_ITU_endorses_DRM%252B_ open ETSI standard: http://www.drm.org/uploads/files/es_201980v030101p.pdf)
Details: Build a vector-network analyzer app (qtgui based) that can show PSD, constellations, maybe other representations of the signal. Demodulate some basic modulation schemes (BPSK, QPSK, GMSK, QAM, etc.).
Scanner application for LTE¶
Details: Similarly to previous projects to receive GSM signals, this GNU Radio-based tool would be able to receive and interpret signals in an LTE network. Possible applications include analysis of LTE coverage.
Details: Channel sounding describes the process of measuring a multipath propagation channel and obtain information about excess delay, Doppler spread and fading properties. The final product should make use of USRPs for channel sounding (the high timing constraints require use of the FPGA) and provide a complete measurement tool which can be used to gather statistics about mobile communication channels.
Knowledge prerequisite: Digital signal processing basics, FPGA basics
Access to USRPs required.
(Digital) Signal Processing Components¶
Extend and improve the filter design components¶
Details: Extend and improve the filter design components. In particular, add a feature to guesstimate the number of filter taps for the Parks-McClellan method. A firdes-GUI might also be nice.
Knowledge prerequisite: Digital signal processing, some C++, prior use of digital filters
Adding a flexible OFDM Mod/Demod. Pilot/Preamble sync, Modulation and OFDM Mod. in different functions.¶
Generic compressive sensing framework¶
Details: By correlating the incoming signal with pseudo-random sequences, it may become possible to obtain the entire 100 MHz spectrum at once via Ethernet, albeit in a different base than the usual regular sampling time base. One proven application for this is Compressed Spectral Estimation. This project includes developing an FPGA image to correlate with pseudo-random sequences.
Knowledge prerequisite: Some FPGA experience, basic digital signal processing
Improve performance and extend capabilities of Qt-based GUI blocks.¶
USRP/Hardware related projects¶
AGC loop for the USRP.¶
Details: Make an AGC loop for the USRP (i.e., in hardware with direct, low-latency control over analog gain stages).
Access to USRPs required.