Elecraft P3 1 Side of Pile Up

Elecraft P3 - Commands for 1 side of pileup view

I have recently taken delivery of an Elecraft P3-Panadapter - sort of a Wideband view of the band.

It is very nice - but for breaking pile-ups - or handling one, I need it to do something slighly different.

By default the P3 display +/- n Khz from you VFO-A frequency.

Pileup Problems

P5/7Oxxxx is active (Yemeni in North Korea !! You have more chance than finding droppings from a Rocking-Horse) ... the DX Cluster says "On 14.025 - up 2"

So you swing the VFO-A to 14.025 - push the function button on the Pan adapter to a 2 Khz Resolution - and guess what !!! You see P5/T0xxx in the middle of the P3 Display - and you see no obvious signs of the thousands of calls being made.

Why ??

  • the P3 was set to a narrow 2Khz Span
  • The P3 however centers on the VFO-A
    • Thats 14.025 +/- 1 Khz
    • 14.024 to 14.026
    • the DX is listening around 14.027 (+2 remember)
  • The Split it 2 Khz ... you see nothing

Increase Split Size

That will work - but you are now trying to see the lucky caller in this pile-up with a larger SCAN size in only half of the available display.... This is not optimal.


Using some nifty Macro's move the DX to the Left hand side of the P3 - whilst giving the P3 only the Positive Offset from the carrier frequency (i.e. only show 14.025 - 14.027)

Now before I show you this script - some thanks....

  • Dave - NK7Z he pointed out a certain path for development.

Dave: NK7Z has lots of interesting stuff on his web page - which is well worth a look - it is found at http://nk7z.net.

Alas this will not work as a single keypress (yet)

But it will work if you have 2 devices that are capable of communicating with the K3/P3

from serial import Serial
import time

#Note the Mac has 2 devices
#tty.* and a cu.*.
#So, what's the difference?
#Well, TTY devices are for calling into UNIX systems,
#whereas CU (Call-Up) devices are for calling out from them (eg, modems).
#We want to call-out from our Mac, so /dev/cu.* is the correct device to use.
#Note my Logger is using the TTY Interface

p3_plus_mode = [('#FXT0;#FXA0;','P3 reset Tracking Mode'),
                ('#SPN000022;', 'P3 2.2Khz mode'),
                ('UP4;', 'K3 VFO-A DOWN 1 Khz'),
                ('#FXT1;#FXA3;', 'P3 into sticky mode'),
                ('DN4;', 'K3 VFO-A UP 1 Khz')]

sp = Serial('/dev/cu.usbserial-A7004VW8', 38400, timeout=1)
for a in p3_plus_mode:
    cmd = a[0]
    what = a[1]
    print(str.format("Command {:30} ", what), end='')
    rv = sp.write(bytes(cmd, 'utf-8'))
    if int(rv) == len(cmd):