pcrd – PCR1000 on Linux


PCR ScannerThe Icom PCR-1000 is a computer based radio scanner that tunes from 10Khz though to 1.3Ghz in all modes (AM/CW/FM/WFM/SSB). Finding linux support for these scanners seem to be getting harder and harder – and with recent changes to gcc, some have broken.

In a quest to make this information available again to people who run PCR-1000 scanners, I’ve pieced it all together here and made pcrd compile with the latest gcc versions and released it as v0.12.

The source for pcrd v0.12 is here.

Compiling pcrd is straight forward. You can use the make command and include your distro, for example “make linux”.

Once everything has compiled, you should have a working pcrd binary. You can bring up the help screen by running “./pcrd -h”. You should get the following output.
$ ./pcrd -h
Usage is ./pcrd [-i] [-s ] [-v ] [-d ] [-C port]
[-A 0|1] [-N 0|1] [-S 0|1] [-I ]
-b = Daemon Mode (Background) - I ran out of letters!
-C = Use alternate socket port nnnnn
-X = eXit (only in Daemon Mode)
-D <0-9> = Set program debugging level
-R = Suppress radio status reporting while looping
-C = Use this port number for socket Communications
-l = Loop sending command to radio every 5 Seconds
-i = Initialize radio
-s = Hex range from 00 to FF
-v = Hex range from 00 to FF
-O = Radio OFF
-d = serial port. Default /dev/cua0
-A <0|1> = Automatic Gain Control
-N <0|1> = Noise Blanker
-S <0|1> = RF Attenuator

-I <00 - FF> = IF Shift 80 is Center
Freq = 0.050 -> 1300
Modes = lsb,usb,am,cw,nfm,wfm
filter = 3,6,15,50,230
./pcrd 101.700 wfm 230
./pcrd 137.500 am 50
./pcrd looks for /dev/pcr1000 before using default port for radio connection
Socket communications are assigned to port 5151
This is ./pcrd Version 0.12

This should be about all you need to tune your PCR-1000 through linux. I use mine via a PHP interface and stream the output to an icecast server. This means I can tune and listen to my scanner from anywhere on the web. It shouldn’t be too hard for anyone else to do this.

  5 Responses to “pcrd – PCR1000 on Linux”

  1. […] For a while now I’ve been hanging on to a working version of pcrd – the linux control program for Icom PCR-1000 scanners. This version will compile with the latest gcc based distributions and work on all known Linux distros. You can find it here. It seems to work well here – the only issue I encounter is sometimes getting the unit to turn on – however after that, it tunes fine for as long as it’s turned on. […]

  2. […] weekend I came across this post by Steve Haigh. His updated version of pcrd compiled fine on my ubuntu machine (though I did […]

  3. […] since Dxtuners closed earlier this year, so it was a prime candidate for re-sale. I had been using Steve’s PCRD for remote control which is fine, but I was looking for something better for use in the shack (and […]

  4. Well Steve, it works a treat for me and thank you for your work on this. I have pcrd running on a raspberry pi with a basic arch install and wifi dongle. I ssh into it from my PC. Plan is to design a GUI with some GNU radio filters and eye candy 😀

    The only issue I have though, and it may in fact be a fault with my PCR1000, is that the IF shift on USB/LSB is not centered on startup. Of course, sending -I 80 when I first call sideband modes corrects this but It sounds to me like it starts up at #00. Anyway, it may even be an oversight in the design because i’m pretty sure I saw this when I ran it with HRD also.

    Cheers again Steve..

  5. Thank you muchly sir!

    Mentioning of a GUI.
    There was a Linux program for the pcr-100* named “QtPcr” It was the bee’s knee’s to use with little toys and extra’s even windows users had no access to.
    Here’s a link to show.

    Sadly the QT toolkit stopped making some of the buttons and what-not so needed updating.
    Most of the website is gone but the site is around and downloads are accessible.

    If anyone can get this going….. ? 🙁

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>