ARK is, in collaboration with the Department of Electronic Systems at NTNU, organizing a workshop in GNU Radio programming. We are planning to hold this workshop on March 4, and possibly hold the same course on March 3 if we get enough/too many participants.

Update: Signups now closed.

Our goal for the workshop is to give a hands-on introduction to beginners in GNU Radio, where the main focus in the practical exercise is to work in a program called GNU Radio companion. This application provides a graphical interface for joining the various signal processing blocks together. We will also give a brief introduction to how to write custom GNU Radio blocks from scratch, and if time allows, also cope with some basic practical exercises in this.

GNU Radio companion, showing a couple of signal processing blocks operating on a file stream.

The workshop will be open to both members of ARK and students at NTNU. For course plan and details for signing up, see at the bottom of this post.

GNU Radio and general motivation for the course

GNU Radio is an open source framework for handling and signal processing of data streams to and from SDRs (software-defined radios). SDR programming allows for a lot of versatility in the implementation of the radio, since all signal processing, coding and visualization happens in the software on the computer. With cheaper technology and more powerful computers, SDRs has become increasingly more relevant also in a ham radio context. Using GNU Radio against the RTL-SDR, based on a cheap USB TV tuner, has for example been a popular basis for many hobby projects during the recent years.

For the 1-10 GHz project, we will be using an SDR radio mounted directly on the parabolic dish, in order to reduce cable loss. Our uses and requirements in this project dictate that we mostly will have to implement a major bulk of the controlling software ourselves. Using an open source toolkit like GNU Radio will make us be able to (a) take advantage of signal processing blocks other people have developed (b) release our own processing blocks for easy adaption by the wider community (c) more easily integrate or further develop other SDR software which builds on top of GNU Radio blocks. It is therefore imperative that members of ARK gain the necessary GNU Radio savvyness to develop and cope with (what might be) a rapidly changing system after all hardware has been put in place, and develop the system further in the future.

It is also interesting to widen the horizons of the general student mass. SDRs are used in a lot of radio courses at NTNU, but are almost always controlled using LabView-based software. Since LabView is what the students learn, it is what they will be using in the industry, what the professors and scientific staff will be using, and what, ultimately, the next generation of students will be learning. We want to expose the students to alternatives, and combat the subtle university-enabled vendor-lock-in by larger companies like National Instruments and MathWorks. This course will therefore be open also to other students at NTNU.

An USRP N210 SDR. This particular radio is operated over TCP/IP using an ethernet cable, while the radio to be used in the workshop is controlled using USB3.

In the course, we will be working against USRP (Universal Software Radio Peripheral) B210s, a type of SDRs that are used at the labs of the Department of Electronic Systems. This is also incidentally the type of SDR we will be using in the 1-10 GHz project. We will be working directly from Linux installations on USB sticks with GNU Radio installed.

Course plan and sign up information

We have 10 SDR battlestations available in the lab, and we are therefore limited to approximately 10 participants per day. Initially, the workshop is offered on Sunday the 4th of March. If all the slots for the Sunday workshop are filled, another session will be opened on Saturday the 3rd.

The workshop is held at NTNU Gløshaugen room C430. If you need help getting to the workshop, call Øyvind on +47 916 00 670.

Preliminary course plan:

  • 10:00 – 10:15 Welcome to the course, agenda, etc.
  • 10:15 – 11:00 Presentation: Introduction to SDR and the USRP platform, hardware focused
  • 11:00 – 11:15 Break
  • 11:15 – 12:00 Presentation: Set up and programming in GNU Radio
  • 12:00 – 13:00 Lunch
  • 13:00 – 13:15 Presentation of the practical exercise
  • 13:15 – 15:00 Hands-on at the USRP-lab
  • 15:00 – 15:15 Break
  • 15:15 – 16:00 Presentation: Where can I find more information to continue with this, and how do I create my own GNU Radio block.

Sign up for the workshop at this link within 2018-02-23. If there is enough interest, the poll will be expanded with a Saturday option.

Update: Signups now closed.