10 Latest QSO's Are:
Aviation Operating Modes SDR Slow Scan TV My Logbook Awards My Station Weather My Projects Miscellaneous
N8MDP Contact Me
Tweets by n8mdp
What is Quisk?
Quisk is a Linux based SDR software written a number of years ago. I used to use this software a number of years ago to get a feel for using Linux liek Ubunto to run an SDR. There was a lot of learning to use this including the installation of the appropriate drivers. Allow me to walk you through how I installed a Softrock Ensemble SDR in Ubuntu and how I got Quisk running. It was not as easy as I thought.
To get me feet wet into the world of SDR (even though I already owned a Flexradio 3000),, I built the Tony Parks Softrock
Ensemble II Software Defined Radio. My first installation was on a Windows XP
system using the HDSDR Software. I later progressed to use the SDR-Radio server
software to allow users on the internet to access my tuner. This software was
relatively bullet proof and the installation was pretty simple. I was up and
running in no time. One of my goals at that time was to create a web applet
for my website so anyone could control the SDR and include the one feature that I was very impressed with, the waterfall
At the time, I was searching for a good applet that I can embed in my
website or could use with a software application or even on a tablet that was simple to install. I am not a professional programmer but I am
not afraid to dive into coding. From what I read back then, there was
a lot of activity in the Linux world for the development of SDR applications,
including servers and client software. I read quite a bit of the
work by John Melton, G0ORX, not only
with Linux applications but also his attempt to program an SDR application
using the Raspberry Pi Single board computer. That has come. a long way with newer programs like GQRX
One of the first steps that I believe that must be accomplished is to establish basic control of the Softrock. My research found that the first step in order to achieve frequency control and for Ubuntu to recognize the Softrock plugged into a USB port is to download a software program called USBSOFTROCK and to create the proper permissions.
Click on any image to expand.
Once the Synaptic Package Manager is open, the quickest way to find the dependencies is to do a Quick Search as shown below:
Note in the picture I performed a search on 'libncurses5-dev'. Once you have found the file, select and mark the package for installation. You can then hit the 'Apply' button to start the installation. The system will then download the package and begin the installation.
Perform the same step for 'libusb-dev'. It is possible when you do the search, you may get multiple packages to select from such as what is shown in the image below. I selected the actual 'libusb-dev' option, not the 'libusb-1.0.0-dev' option.
This exercise shows you how to use the Synaptic Package Manager. There are other package manager tools availabe depending on your Linux OS. To be honest, the simplest ways is to use the 'sudo apt-get install' commands in a terminal window. I'll talk more about 'sudo' shortly. So at a terminal command line, you can run:
sudo apt-get install libncurses5-dev libusb-dev
and get the same results. Your system may ask you for a password before the install takes place.
With the usbsoftrock-1.0.2.tar.gz file selected, I hit the Extract button. You will have the chose to create a new file folder if you wish. I chose not to do this and extracted the file in my SDR folder. Once the process is completed, you will see a standard file folder created called 'usbsoftrock-1.0.2'. If you have gotten this far, then so far so good! Feel free to explore the contents of the file folder. What you will not find is any kind of executable file that you can immediately run. The next step is to 'make' the application.
Open the README file in the usbsoftrock-1.0.2 file folder. As you read through the file, you will notice a section on 'Prerequisites'. We have already installed the 'libusb' and 'ncurses' libraries and dependencies. This is why we did this ahead of downloading the usbsoftrock-1.0.2.tar.gz file. However, you will see an additional prerequisite called 'gcc'. 'gcc' is the GNU C compiler. To verify that you have this installed, open the Synaptic Package Manager and perform a quick search for 'gcc'. Hopefully, you will get the screen that I am showing below. If the software is installed, the square to the left of the package name should be shaded green. This means the package is already installed and you don't have to do anything else. If the box is not shaded green, select this package and install it the same way you installed the two previous libraries. Close Synaptic when you are done.
The procedure to create the application is as follows:
At first glance, if you are a newbie, what the heck does this mean and how do I do it. The procedure is quite simple as I will explain (I learned by doing!!).
You will need to open a Terminal window. The Terminal application is located in the Applications menu -> Accessories -> Terminal. I found that the fastest way to open the Terminal application is the shortcut: Ctrl + Alt + T. Pretty simple and quick. Open the Terminal application. You should see a screen like this:
In order to create the application, we have to change to the file folder directory for the SDR file folder. In your Terminal window, type: cd SDR/usbsoftrock-1.0.2 . The result should look like the screen below:
If you type 'dir' at the prompt, the Terminal application will display all of the files in the SDR folder as shown below:
Now that you are in the SDR file folder, it is time to perform the above procedure.
Step 1: At the prompt, type: ./configure
Hopefully, you should not get any errors. I didn't!
Step 2: At the prompt, type: make
Again, if you don't get any errors, so far so good.
Step 3: At the prompt, type: make install
If you don't get any errors, congratulations. Unfortunately, I got an error as show in screen below:
sudo allows a permitted user to execute a command as the superuser or another user, as specified in the sudoers file. The real and effective uid and gid are set to match those of the target user as specified in the passwd file (the group vector is also initialized when the target user is not root). By default, sudo requires that users authenticate themselves with a password (NOTE: by default this is the user's password, not the root password). Once a user has been authenticated, a timestamp is updated and the user may then use sudo without a password for a short period of time (5 minutes unless overridden in sudo'ers).
So let's use the sudo command as follows. At the Terminal prompt, type: sudo make install. If all goes well and there are now no error messages or anything further related to 'Permission denied', you should get the following in your Terminal screen:
You can verify that the executable file was created by going back to your main screen, open your Home folder from the desktop, select your 'file system', select the 'usr' folder, then the 'local' folder, then the 'bin' folder. You should see an executable file called 'usbsoftrock'. If you see this like I show below, you were successful to create the application.
The simplest way is to use the 'nano' editor or something similar. I used 'nano' and started the process by typing at the command prompt: sudo nano 99-softrock.rules. This will launch the nano editor where you can now type in the following line:
Once the computer is rebooted, we are now ready to try to communicate with the Softrock Ensemble. Plug in the power and the USB cable to your Softrock.
To prove to myself that I did have connection and the usbsoftrock software was communicating to the hardware, I unplugged the USB cable from the Softrock. Then I typed usbsoftrock status again at the terminal prompt. I immediately began to see message that the software could not open the USB device 'DG8SAQ-I2X'. I reinstalled the USB cable, typed usbsoftrock status, hit enter, and indeed could see that the software was communicating with the hardware.
This completes this first section.
Testing the Softrock Ensemble. Time to see if it really is working
Now that you know that you can communicate with the Softrock, it might be a good idea to see if it is really working and you can pick up signals. Before we attempt this, I would like to provide some background information on using the usbsoftrock software in more detail.
Using usbsoftrock to change the frequency of your radio directly is very easy. Simply issue the command usbsoftrock set freq [frequency], where frequency is in MHz. For example, to set the center frequency to 7.030 MHz so that you can copy PSK31 at 7.035 MHz, you would type:
usbsoftrock set freq 7.030
The Softrock Ensemble uses a Si570 Oscillator. The Si570 is described by its manufacturer, Silicon Labs, as an "ANY-RATE I2C PROGRAMMABLE XO/VCXO." What this means in normal amateur radio language is that the Si570 is a frequency synthesizer, complete on one very small (7mm x 5mm) integrated circuit chip. (That's the any-rate, programmable part of the name.) The XO/VCXO part means that the synthesizer is crystal controlled (XO = crystal oscillator) and that one variant of the chip accepts an analog input voltage that will shift the programmed frequency (voltage controlled crystal oscillator. That version is not used in the kit.) The final perhaps unfamiliar term in the part description is "I2C" which refers to the method by which frequency commands and other data is communicated between the rest of the circuit and the Si570. I2C is a specific serial communications protocol using separate clock and data ports and for the purpose of this review, it isn't necessary to delve further into the specifics of I2C. For our amateur radio activities, the Si570 is used as the local oscillator in a superheterodyne receiver, or it can be the local oscillator in a direct conversion quadrature receiver such as the Softrock.
A detailed datasheet for the Si570 can be downloaded at https://www.silabs.com/products/clocksoscillators/xo/Pages/default.aspx by selecting the Si570/571 in the "Resources" tab. I've extracted the summary description and block diagram below.
Note that while Si570 oscillators are accurate, they are not necessarily precise without some footwork. The reference in a Si570 is a crystal vibrator with a nominal frequency of 114.285 MHz, and all of its output frequencies are computed from this frequency. The actual crystal can vary by many kHz from this nominal frequency, however; my SoftRock Si570 oscillates at 114.211833MHz, a deviation of more than 150kHz! In order to achieve precision, controlling software must use this crystal frequency in its configuration calculations. You can retrieve the frequency at which your Si570's crystal oscillates with the command usbsoftrock calibrate. You can then provide it back to usbsoftrock with the -x argument. To achieve a more precise tuning, the above 7.030MHz example for my SoftRock would be:
usbsoftrock -x 114.211833 set freq 7.030
You may need this crystal frequency for configuring other applications, as well.
Here is a list of options and commands for the usbsoftrock
./usbsoftrock [OPTION] COMMAND
OPTION is one or more of:
COMMAND is one of:
Original DG8SAQ Firmware
Turn on softrock, plug in usb-i2c interface. Type:
Or if you have a different startup freq than 56.32. Type:
usbsoftrock -s 40.000 calibrate
It will return something like: fXTALL = 114.182074
Then take the value from that and use the following:
usbsoftrock -x 114.182074 getfreq
usbsoftrock -x 114.182074 setfreq 14.040
By default the program will calculate the Si570 register values locally when setting the frequency. If you specify option -a (advanced firmware) then it will use the set frequency by value command and let the interface calculate the registers. This enables features such as automatic BPF selection and smooth tuning in Fred PE0FKO's firmware.
Additional Support with v15.10:
Now that we have this behind us, let's test the Softrock to tune in a 40 Meter signal. Since we have not yet loaded a true Softrock SDR application program like Quisk, SDR-Shell, or QtRadio, I am going to use a program called HDSDR running on my Windows 7 System. I will use usbsoftrock to control the Softrock Ensemble. I will also take the Softrock audio output and input that into the audio input on my Windows 7 computer. The only thing that matters is the I and Q signals from the Softrock. HDSDR will take the audio input from the Softrock and do its thing!
For my test, I am setting the local oscillator frequency on the softrock to 7.160MHz as follows:
usbsoftrock set freq 7.160
Below is a screen shot of the HDSDR software. Since I do not have control over the Softrock, I manually changed the LO frequency to 7.160 so the spectrum bar would show the same frequency.
The author of Quisk, James Ahlstrom, made some updates not too long ago to improve the installation and configureation of Quisk. It was not very easy in the past but he did a nice job on simplifying the installation and configuration.
To install QUISK, download it from http://pypi.python.org (search for quisk). From what I can tell, the latest version of Quisk is 4.1.78. Then read the documentation and the help.html file for further instructions. Quisk can be installed with distutils, easy_install, or you can just use the tarball. Just unpacking the tarball is best if you plan to add files or modify Quisk. The list of recent changes is in CHANGELOG.txt.
The latest verions of Quisk allows you to configure the Softrock right in the application. Definitely a step up from the older versions. I'm not going to go through the entire configuration but here is a screen shot of how my Softrock Hardware tab Sound tabs looked.
Click on any image to expand
In my case, the Xtall Freq is 114.258768.
It's also important that you make sure you are using the right sound system. I'm not a big fan of internal sound systems. I have a Dell Optiplex and an Acer Laptop that don't have a normal Line In Jack, just a Mic In and Speaker Out. Not good for the Softrock as you need Stereo inputs line a Line In jack. So I used a USB Sound Card.
But in order for the USB Sound Card to be recognized both by Ubuntu and Quisk is that I had to tell the Alsa Mixer what sound card I was using. So from a Terminal window, I typed: alsamixer and hit enter. The following screen was displayed:
Once selected, I made my settings including changing the PCM Capt setting to Line.
Once that was all completed, and making sure all of my settings in Quisk were correct, I ran the application. I was successful to control the Softrock and heard sound coming from my speakers attached to the USB Sound Card.
Here are some other screen shots of Quisk. The usual graph and waterfall display are available. Quisk was designed without menus and with lots of buttons. Hopefully Quisk looks like a radio and it is obvious how to use it. The red/yellow/blue bars at the bottom of the graph are the band plan. They mark the CW/SSB parts of the band, and show the ARRL additions. The yellow is the data part of the CW segment. The band plan and colors are in the configuration file quisk_conf.py so you can change it.
FT8 on 20 meters
I hope this beginners guide will be helpful to you.
WebSDR OpenWebRX HDSDR SDR Space SDR# GQRX Quisk RemoteHams Global Tuners
CQ CQ CQ
If you have a question or a comment. please do not hesitate to ask here.