Product SiteDocumentation Site


Raspberry Pi-JNOS

Installing a personal PBBS

John McDonough

American Radio Relay League Michigan Section

Legal Notice

Copyright© 2013, John J. McDonough, WB8RCR
The text of and illustrations in this document are licensed by the Michigan Section of the American Radio Relay League under a Creative Commons Attribution--Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at The original authors of this document designate the Michigan Section of the American Radio Relay League as the "Attribution Party" for purposes of CC-BY-SA. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
The Michigan Section, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
The ARRL Diamond and logo, the ARES logo and the ARPSC logo are registered trademarks of the American Radio Relay League in the United States and other countries.
All other trademarks are the property of their respective owners.
The introduction of the TNC-Pi, an inexpensive TNC for the Raspberry Pi, opens the possibility of a low-cost Packet BBS including a mail server. This document describes how to install such a device.

1. Introduction
1.1. Quickstart
1.2. Background
1.3. The Raspberry Pi
1.4. The TNC-Pi
1.5. The opportunity
2. Prerequisites
2.1. Radio IP Address
2.2. LAN IP Addresses
2.3. Hardware
2.4. Other Information
3. Building the SD card
4. Configuring JNOS
5. Using email to send and receive messages
6. Using the Packet BBS
6.1. Using the CONVerse bridge
7. Connecting to Linux using PuTTY
8. Controlling JNOS from the command line
9. Controlling JNOS from the GUI
A. The Cliff Notes Version
B. Field Definitions
C. ax25-apps
D. Revision History

1. Introduction

1.1. Quickstart

If you are impatient, and reasonably computer literate, you may wish to turn directly to Appendix A, The Cliff Notes Version.

1.2. Background

Michigan's standard for packet radio uses the Internet Protocol (IP) carried over AX.25 packet. This allows for somewhat automatic routing of packet messages. In contrast, basic AX.25 packet requires that the originator of a packet describe the path the packet must take through various digipeaters. There have been various other attempts to remedy this problem (KNet, Rose, NetROM) but none are based on widely accepted standards like IP and are limited in their ability to manage complex routes due to constraints within the AX.25 protocol.
A side benefit of IP routing of packets is that, in principle, it permits the use of standard, Internet tools for packet radio. To foster this, Michigan has chosen JNOS as it's standard for the state's packet infrastructure.
JNOS supports a rich set of common protocols, including
  • Telnet - a standard protocol for keyboard connection to a computer.
  • POP3 - the protocol for retrieving messages from a mail server.
  • SMTP - the protocol for delivering messages to a mail server.
  • FTP - a protocol for transferring files.
  • http - a protocol for viewing rich content.
  • finger - a protocol for getting information about a person (although within JNOS it is used more commonly to get information about JNOS itself).
Unfortunately, Windows does not support a rich range of transport protocols, and the only third-party alternative is no longer supported and does not work with recent versions of Windows. This leaves the Windows user with the alternative of having a separate JNOS box on his LAN, requiring a dedicated computer and considerable complexity of setup. As a result, most ARES programs have taken to using AX.25 only applications such as Outpost which lack the benefits of IP.
The benefits of being able to actually use the range of Internet-based applications cannot be understated. A Windows XP user with AGW/IP installed can:
  • Send and receive packet messages using his normal email client, no matter what email client he happens to prefer.
  • View packet content using his favorite web browser where such content is available. Several counties, for example, provide weather radar over radio so SKYWARN spotters can view radar from their vehicle during an activation.
  • Transfer files over the radio using whatever FTP client the user happens to prefer. This includes not only text files but also images, or whatever other files the user wishes to transfer.
  • Use any Telnet client such as PuTTY to use the local BBS over the radio and join in JNOS's CONVerse bridge, which provides a radio "chat room", extremely useful during activations.
Unfortunately, in addition to being unsupported, AGW/IP is relatively complex to set up, so again, it is rarely used.

1.3. The Raspberry Pi

Over the past few years, a number of small computers based on the ARM processor have been appearing. As most smartphones and television set-top boxes use the ARM processor, this processor has become quite inexpensive due to the very large volumes. In addition, the processor requires very little power, so large, expensive power supplies common to personal computers are not required.
More recently, a group in England set about to develop a very inexpensive ARM based PC to provide an accessible platform for children to learn programming. There are two models, the "Model A" and "Model B". The more powerful and more expensive Model B has become wildly popular.
Raspberry Pi
Raspberry Pi Model B
Figure 1. Raspberry Pi

Since Windows is an Intel-only operating system, it does not run on the Raspberry Pi. However, a number of popular Linux and Android distributions are available.
As a very inexpensive ($35) PC, the Raspberry Pi is quite limited in peripherals, however, it does have a number of GPIO (General Purpose I/O) pins to allow for experimentation. The peripheral set of the Raspberry Pi consists of:
  • An HDMI port for a 1080p flat screen
  • A video port for a composite monitor
  • Two USB ports
  • An Ethernet port
  • Audio out
  • Eight GPIO Pins
  • A serial port
  • A SPI port
  • An I2C bus
The Raspberry Pi's persistent storage is provided by an SD card slot. The Operating system must be provided on the SD card, although hard drives may be attached via USB. For most applications, sufficiently large SD cards are available that other storage is rarely needed. In the case of JNOS, a rather small 4Gb SD card is more than adequate.

1.4. The TNC-Pi

For some time now, the preferred TNC for JNOS has been the TNC-X from Coastal Chipworks. This is a very inexpensive, KISS-only TNC. Since the TNC is KISS-only, it avoids all the complex setup of more capable TNCs. The only thing it knows how to do is just what we want it to do, which makes it ideal for JNOS.
Recently, Coastal Chipworks introduced a version of the TNC-X tailored to the Raspberry Pi. The TNC connects to the GPIO pins of the Raspberry Pi and is the same size as the Pi. The TNC-Pi extends the GPIO pins so that a second TNC-Pi may be stacked on the first, or the GPIO pins may be used for other purposes, such as a GPS. At $40, the TNC-Pi is slightly cheaper than the TNC-X. While the TNC-X is available as either a kit or assembled, the TNC-Pi is available only as a kit.
TNC-Pi mounted on a Raspberry Pi
Figure 2. TNC-Pi mounted on a Raspberry Pi

The TNC-Pi includes a DB-9 connector for connection to the radio. Alternatively, PCB pads are provided for the radio connection. The DB-9 is on the same end of the board as the Raspberry Pi's Ethernet and USB connectors.

1.5. The opportunity

The combination presents the possibility of having a complete JNOS system for less than the cost of a traditional TNC. As a small, low power device, it can be far less intrusive than a traditional JNOS computer. Furthermore, it is inexpensive enough that it can be treated as another accessory, rather than the full-blown computer which it really is.
Pi/TNC packaged for the shelf
Packaged Raspberry Pi/TNC-Pi
Figure 3. Pi/TNC packaged for the shelf

Having a fixed configuration also means that it is possible to greatly simplify the setup of JNOS. Over the past few years there has been an emphasis on setting up JNOS based HamGates. A HamGate is somewhat more complex than an ordinary packet station, in that it is responsible for routing packet traffic to other stations. This routing can occur over multiple RF links as well as over the Internet. In addition, the HamGate sysop may wish to provide BBS content, files, web pages, news groups and all nature of other goodies to make the HamGate more attractive.
However, the average amateur probably does not have a lot of interest in being the sysop of a Packet BBS. If we assume that the major concern is sending and receiving packet messages as easily as possible, and that we have a known configuration, then we can greatly simplify the setup. We can further simplify the setup if we assume the station of interest is in Michigan and will use Michigan conventions. If we further add a graphical user interface tool for the setup, then packet messaging should be accessible to every amateur. That is what this paper is about.