Hints and Kinks on BPQ on Rpi

Installing linbpq on Raspberry Pi

BPQ Download Links
(incl source)

Support Forum for BPQ software

BPQ SYSOP Configuration notes

N9MPO's BPQ to FBB forwarding instructions

AG6QO Notes on BPQ Raspberry Pi Installation

Unproto QSO using BPQ

KA2DEW's Notes Installing and Using TermTCP

Rpi Security

Restoring From Backup to Fresh Distro

AG6QO BPQ Connect Info

144.37 - AG6QO-1 for NTS and BBS traffic
144.37 - AG6QO-2 for BPQ Chat
144.37 - AG6QO-10 for WinLink Gateway
3.59040 (dial),USB - AG6QO-1 for NTS and BBS traffic
7.10150 (dial),USB - AG6QO-1 for NTS and BBS traffic
14.10640 (dial),LSB - AG6QO-1 for NTS and BBS traffic
3.58500 (dial),USB - AG6QO for WinLink Gateway
7.10200 (dial),USB - AG6QO for WinLink Gateway
14.10950 (dial),USB - AG6QO for WinLink Gateway

NOTE: 2m users will find wide area access is available via the 3000 ft. Mt. Berryessa Peak Node/Digi, BERR37.

AG6QO's Raspberry Pi BPQ Node / BBS Project

Having started back into digital ham radio a few years back after reactivating the hobby, I started up an FBB BBS running on a Raspberry Pi after briefly considering BPQ. I chose FBB due to its longevity and the ready-made distro available from F6BVP.

From there, I added separate PACTOR capability, using AirMail for NTSD work, and RMS Express for WinLink.

I then set out using and promoting the use of my multi-mode digital station for routine and emergency traffic. I rekindled my old NTS habit and began acting as Digital Relay Station in that system.

Recently, PADC, Chuck, W5KAV suggested I reconsider BPQ due to its ability to tie all those capabilities into one package. And so, here I go again. Another RPi project, with the goal of doing just that.

October 5, 2014
- Joe, AG6QO

More Notes and Tips

Tutorial on AG6QO BPQ BBS

BPQ SYSOP Configuration notes

BARK Presentation on Radio Mail

Digital Modes Presentation

SCS P4Dragon Baud Rate

John, G8BPQ, had to generate a special build ( of pilinbpq for communicating with the SCS P4dragon, since it uses a special data rate to communicate with the modem. (Many thanks John!)

That version can be found here:
(NOTE: THIS is an old link to a development version which is not maintained. See link at top of page. 2nd down from left for a link to the current versions.)

This allows the Pi to talk to the SCS Dragon. But there are still issues with rig control.

November 6, 2014
- Joe, AG6QO

SCS P4Dragon Radio Control

After several go-arounds analysing logs and straces, John and I couldn't figure out why the rig control statements were not working when using the Dragons rig control port.

He showed me that i could add "DEBUG" to the statement to get additional detail in the syslog.


Finally I resorted to using a separate serial port to do radio control, and now my Pi BPQ is forwarding out PACTOR messages just fine, and is properly scanning the configured PACTOR frequencies.

/dev/ttyUSB1 9600 KENWOOD TS480

November 11, 2014
- Joe, AG6QO

Post Script

I believe the reason BPQ was not controlling the rig through the Dragon port, is that the Dragon requires the prefix "TRX" when in command mode sending Rig Control Commands. I need to follow up with G8BPQ on this.

JNOS Forwarding

Well, more correctly, Telnet, Linux and Binary Compression

Initial attempts to get BPQ to forward with one of my FBB forwarding partners who runs JNOS failed.

But i learned through N9PMO and G8BPQ that a special NEEDLF directive is required to be placed in the connect line in the forwarding script. As follows:

C a6ham.secretdomain.org xxxx NEEDLF AG6QO 4fAn(P4]$W$rD!

This must be placed in the connect command line between the port number and login name/callsign.

And, if you are using B1 protocol with binary compression, you must inform BPQ of that fact (why, i'm not sure because it knows this from the forwarding configuration), by placing a period immediately prior to your login callsign.

C a6ham.secretdomain.org xxxx NEEDLF .AG6QO 4fAn(P4]$W$rD!

November 12, 2014
- Joe

See John's Telnet Server page: http://www.cantab.net/users/john.wiseman/Documents/TelnetServer.htm.

It says, " the optional NEEDLF will cause a Line Feed to be sent after user and password, and is needed by some Linux systems". And, "If you are connecting to an FBB BBS and you want to use compressed forwarding, you must preceed the Uder [user] with a dor [dot], eg .g8bpq. This will tell FBB to use a transparect TCP session instead of a Telnet session. It is not needed for other systems. "

But I found the "dot" to be necessary with JNOS systems as well, who use binary compression.

April 24, 2016
- Joe

RMS Gateway, Etc.

Well I now have the BPQ system running 24/7.

I've added the CHAT application, and CMS application, so you can now call AG6QO-2 for chat and AG6QO-10 for the WinLink Gateway.

In this process, I've added some AXUDP/IP neighbor nodes to make the chat more useful. I've also added a neighbor node in my home state, PA.

November 22, 2014
- Joe

Chatter on the Ports

In scanning the BPQ32 Yahoo Group and other forums, I was initially puzzled by folks complaining about how much chatter BPQ throws on the ports. Particularly the VHF packet ports.

Then I experienced it myself.

Apparently, there is a KEEPALIVE feature which attempts to maintain connections with neighbor nodes (I don't pretend to fully understand this, yet.). It was literally sending transmissions out both my VHF user ports every 4 seconds!

I found that I could prevent this by placing the statement:

in the port definition in my BPQ32.cfg file.

Another thing that caused a lot of extra noise (from my station as well as my neighbor nodes) was the announcement of all my internet neighbor nodes over the busy local VHF channel. This was prevented by shutting down my node announcements on that busy channel only by :


There are other ways to get the word out that my local node is available, without flooding all my neighbors with long lists of internet nodes accessible through my node!

November 28, 2014
- Joe

BPQ Hierarchical Address

Do NOT use UR1CALL@.#NND.ND.USA.NOAM as your hierarchical address on BPQ !!!

For the first time in my BBS experience, it is NOT appropriate to use UR1CALL in the HA!

Use ONLY the geographical info:

December 14, 2014
- Joe, AG6QO

Upgrade to BPQ-

Earlier this week, I upgraded from to

For the most part, it went well, but there were two strange behaviors observed:
- On an INCOMING PACTOR connection, it did not connect right away, and during the modem's cycling, the rig QSY'd to a different band.
- After the upgrade ran over-night, my morning "Housekeeping" message did not appear in my POP client as it always had. When I investigated, I found that there was a message "TO" .USA.NO1634_AG6QO ! This seems like a concatenation of part of my HA, and the MID. When I looked at the Configuration screen, the "Sysop" callsign had been corrupted with the same string.

I had not intentionally modified the configuration during the upgrade, so I must assume that this corruption took place programmatically. I wonder what else may have been corrupted.

I am on the lookout for any further anomalies. I'm on the edge of a decision to down-grade until some patches come out.

December 27, 2014
- Joe, AG6QO

Upgrade to BPQ-

I've been running BPQ- for a couple of months now and I'm quite happy with it.

Also just installed piTermTCP and gave it a try. This program not only allows you to monitor your AX25 traffic, but all ports, much like the linux ax25 stack's "listen" or "monitor". This is a very handy tool for monitoring overall channel conditions.

It had a few problems and maybe there is a newer version out. Haven't checked in a while. Due to my home set up I downloaded the Windows version and I'm using that instead.

The Windows version seems to be a bit more "mature" (clean). Works fine. I'll be using it to check into our regional UNPROTO net from time to time.

March 8, 2015
- Joe, AG6QO

Auto-start of linbpq

I've been manually starting linbpq since I made the switch from FBB.

Auto-start requires two fundamental steps.
- Make all connected device references independent of boot-time assignment. In other words, serial devices referenced in bpq32.cfg have to have device names that don't change when linux restarts. If you are using usb devices, the assignment of their "names" (i.e. ttyUSB0), depends on factors you cannot predict. So the usb device which one time gets assigned to ttyUSB0, may next time be assigned to ttyUSB2.

- Create init.d scripts to auto-start linbpq.

In order to do the first step, there were some challenges. Particularly because I am using three usb-serial ports. Two of these are on a single usb device, with two endpoints.
I used udev to execute some rules to create "static" symbolic links for these devices/ports. But finding the appropriate attributes and rule sets was trial-error-research-repeat. After about two day's of messing around, I found sufficient information to make it all work with my hardware configuration.

Specifically, the configuration was one two-port usb-RS232 device and a usb-serial interface to my SCS Dragon Pactor Modem.

In the end, my /etc/udev/rules.d/ file looks like this, and it works:

SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{serial}=="DRWxxxxx", ACTION=="add", MODE="0777", GROUP="dialout", SYMLINK+="ttySCSdragon"
ACTION!="add", GOTO="modem_rules_end"
SUBSYSTEM!="tty" GOTO="modem_rules_end"

ATTRS{idVendor}=="9710", GOTO="type1_rules_begin"

ATTRS{port_number}=="0", SYMLINK+="ttyKPC3"
ATTRS{port_number}=="1", SYMLINK+="ttyTS480"


The reason for so much complexity is the fact that udev has some very limiting rules about using only ONE parent usb-device's attributes in the rule.
If you run into similar problems with multiple-port usb devices, try something like the above. I found the clues for this (and example rules) here.

Once the symlinks are working, you can edit bpq32.cfg to use them instead of the kernel-assigned ttyUSBx names.

May 9, 2015
- Joe, AG6QO

Auto-start of linbpq - part 2

For the second part of enabling auto-start of linbpq...

I've used John's instructions as found here.

Running LinBPQ automatically

You can have LinBPQ start automatially when the OS is loaded, and restart if it fails. I suggest running it in a Linux Virtual Console - the examples use tty2, but you can change to suit you requirements The mechanism uses the init process, but the details depend on the disribution.

Create a script to run linbpq
Before doing this for the first time, see update note at the bottom of this entry.

cd /home/pi/linbpq
sudo -u pi mv linbpq.new linbpq
sudo -u pi ./linbpq

Set runbpq ax executable:

chmod a+x /home/pi/linbpq/runbpq

For Rasbian Weezie

Add the following lines to /etc/inittab

##Start LinBPQ on bootup and respawn it should it crash
BPQ:2345:respawn:/home/pi/linbpq/runbpq >/dev/tty2

Remove (or comment out) the line

2:23:respawn:/sbin/getty 38400 tty2

For Rasbian Jessie
Change runbpq to:

cd /home/pi/linbpq
sudo -u pi mv linbpq.new linbpq
sudo -u pi ./linbpq >/dev/tty2

Add user pi to group tty

Create file /etc/systemd/system/linbpq.service containing:


ExecStart=/bin/bash /home/pi/linbpq/runbpq


Run command:
sudo systemctl enable linbpq.service

May 10, 2015
- Joe, AG6QO

UPDATE - April 22, 2017
The above instructions list /home/pi/linbpq as the installation point. This will work just fine, and the instructions are left as-is to accomodate those who have already gone that route.
However, it is more conventional to install it at /opt/linbpq, which is my newer recommendation.
I suggest that new installations use this installation point. Simply replace /home/pi/linbpq in the above instructions with /opt/linbpq.

Ultra-portable Packet Station

Kenwood produces this beautiful little HT known as the TH-D72, which is a dual band 5 W transceiver, with built-in GPS and TNC. This makes it not only a nice mobile APRS unit, but a travelling packet station.

Having been the owner of one of these and an iPad, it was only natural that I'd want to pair them for a super-portable packet station.

No dice.

The only drivers available for the transceiver, were MS Windows drivers. A query to Kenwood tech support made it clear that there would be no iOS drivers forthcoming.

Not having the personal bandwidth to write my own drivers (and lacking some of the technical information to do so), it was not possible to get the iPad to talk to the TH-D72 TNC over its usb port.

Recently, I ordered an upgrade to my MS Windows laptop, and Dell solved this problem for me by offering a MS Windows based Venue 8 Pro tablet at an amazingly low price.

Installing puTTY, Outpost, and even Paclink and Thunderbird on this little 16 GB device turns it into the ultra-portable packet station I needed for remote access to the BBS and radio mail.

Oh! And, yes. It loads and runs RMS Express just fine.

July 4, 2015
- Joe, AG6QO

Ultra-portable Packet Station - Reprise

Discovered that the Tablet/HT setup is rather prone to EMI via the USB cable.

When using the HT with its rubber duckie antenna in close proximity to the USB cable/tablet, frequent crashes of various applications and the "disappearance" of the virtual COM port made it nearly unusable.

However, several loops of the cable through a ferrite sleeve seems to have solved the problem, and we're back in business.

Too bad I wasted a bunch of people's time trying to demo it at today's BARK meeting.

Sorry guys. It'll be better next time.

Interesting thing is I never ran into this when using the HT from my office computer. But both the tablet and my new Dell Infinion laptop seem to be much more susceptible to USB EMI. I'm speculating it's due to the USB 3.0 chips in the new devices.

July 11, 2015
- Joe, AG6QO

SCS Modem commands from BPQ

I learned from John via email that it is possible to send "commands" to the SCS Dragon when connected from within BPQ.

Undocumented feature: preceding the command with "#" will send it to the SCS modem as a command.
Useful information:
att p - p is the port number of the ptc
#pska 440
Pactor} Ok
#fska 410
Pactor} Ok

October 15, 2015
- Joe, AG6QO

Upgrade BPQ for WinLink Secure Login

Upgraded to pilinbpq version in order to pick up John's latest updates for WinLink secure password CMS login. Seems to work just fine. I can now enable secure login without causing CMS connect failures.

The software can be downloaded from

(NOTE: These links are not maintained, they point to an old development version for reference. See the link at the top left of this page to go to BPQ's current downloads.)

These need a new set of HTML pages for the Web management system


October 16, 2015
- Joe, AG6QO

Pi2 versus Pi3

I've had some hams ask me whether to use a Pi2 or a Pi3 for their BPQ node. I've told them, as with most things, "it depends".
While its true that the additional computing power can come in handy for some things, it comes with a price.

That price isn't just the moderate increase in money you'll pay for the board, but in power-consumption.

So, if you're looking at a remote system, or an off-grid system, you might look carefully at this factor.

The subject is covered in several of the online Raspberry Pi forums, including here:

The typical BPQ system doesn't require much compute power, so you wouldn't make the switch to Pi 3 for the quad core power. But, if you want to pile on other functions,(which I do even on the Pi 2), it might make sense to go to the Pi 3.

Either board makes a great portable, low-power platform for a BPQ node.

March 11, 2017
- Joe, AG6QO