tarpn_logo
 home    builders  

buildersTNC-PI ➜ TNC-PI General Info

TNC-PI General Info

The easiest, and nearly the cheapest, solution for a packet radio TNC, and most popular in our group, is a card made for the Raspberry PI called TNC-PI.

TNC-PI is a variation on the TNC-X made since 2004 by Coastal Chipworks. Firmware for the TNC-X open source and is written by John W2FS. TNC-X uses USB to connect to a host computer. The TNC-PI is specifically designed to communicate to the Raspberry PI via its expansion header. The TNC-X firmware from W2FS was modified by John, G8BPQ, to support the Raspberry PI's I2C bus, allowing multiple TNC-PI to be attached with a single ribbon, to the same Raspberry PI.

3_port_node_on_white_i6_07191croppedx1200
The TNC-PI is sold as a kit by Coastal Chipworks. Buy them from our TNC-PI Kit Ordering and Assembly page. They cost $43 plus shipping.

Key features of TNC-PI

The DE-9 connector at the bottom of the photo is used to connect to the radio. This connector has the same pin-out as the Kantronics KPC-3. Lower in this web page there is an oblique (3d) image of the connector showing the pin-out.

The TNC-PI talks to the computer via the 2 x 5 header and ribbon cable shown in the upper right. Other variants of the TNC-PI have 2x13 or 2x20 connectors. For these boards, only the 10 pins closest to the top of the pictures (2 rows of 5) are used in communications with the computer.

The red and yellow LEDs are TX and DCD. TX shows when the TNC-PI asserts PTT causing the radio to transmit, and DCD shows when the TNC is hearing both modem tones from the receiver.

R7 is the TXLEVEL (transmit audio level) control. Adjusting R7 TXLEVEL affects the audio level generated by the TNC into the transmitter. R7's setting is only critical after a new radio is attached to the TNC. See TNC+radio adjust and test for details.

R6 TXDELAY adjusts how long the TNC must wait after asserting PTT (TX) before the radio is ready for data.

On the right side middle of the board are a slide switch and a button. The button is a PTT switch and while the button is held, forces the radio into transmit for testing purposes. The slide switch causes the received audio to be copied to pin 7 of the 2x5 header. This may be used by a monitor-card installed between the TNC-PIs and the Raspberry PI. Only one TNC-PI may have its switch thrown to copy. The default COPY-OFF condition is slide towards the button.

masked tnc-pi 2.3 board

TNC-PI models

The original design of the TNC-PI was a stackable card that fit over the top of the Raspberry PI. Most purchasers of the TNC-PI buy one unit and use it in this way, usually for APRS. Our application, where we purchase several for the same system, is uncommon but not unique. In our application, where there is likely to be more than one TNC-PI, the stacking of the TNC-PIs is not desirable.

There are 3 models of the board but at least 8 versions. The most obvious difference between the models is the interface header which connects between the TNC-PI and the Raspberry PI, or connects multiple TNC-PI with a Raspberry PI. The header versions are 10-pin, 26-pin, 40-pin. Other differences:

All three models may be assembled with the 10 pin header for ribbon cable connection.

Multiple versions of TNC-PI

Below I describe the 3 TNC-PI circuit boards which are in current production. For more details, see Out Of Production TNC-PI.
V1.2 Apr2015
V1.2b TNC-PI
  • JP7 (top middle) must be shorted to provide power to the board
  • 2x13 Header
  • R6 provides TxDelay control for this TNC but this control is covered if boards are stacked or if ribbon cable is used.
  • NOTE: screw holes have insufficient keep-outs. Use insulated spacers.
V2.0 Feb2015
v2.2 TNC-PI
  • JP7 removed
  • 2x20 Header
  • R6 provides TxDelay control for this TNC but this control is covered if boards are stacked or if ribbon cable is used.
TARPN v2.3 Dec2015
tarpnv2_1_tnc_pi_bare_board_i6_07104x800
  • JP7, ICSP jumper/connector positions have been removed.
  • 2x5 Header
  • R6 is moved to a new location to be clear of the ribbon cable
  • Adds PTT button and Audio copy-to-ribbon switch
  • Improved silk-screen labels
  • Center mounting hole removed
  • Thanks to John W2FS for doing these modifications for us.

Using the TNC-PI in a stacked configuration

The TNC-PI was intended to be stacked on top of a Raspberry PI. The 26 and 40 pin versions have pass-thru connectors enabling multi-level stacking but only if the header is installed with a small gap between the header below the board and the PCB (else the spacer hardware is too long and there isn't enough room for the Raspberry PI USB connectors). However, the board is difficult to operate and inspect in a multi-port node when stacked.

Method #1: Point LEDs and pots to the right

The good news with this is
  • the big header is exposed on top of the top TNC and now a non-TNC board can be part of the stack in case some accessory presents itself to the project. So far we don't have such an accessory but who knows?
  • The assembled unit is relatively small.
The bad news with this is
  • Soldering the through-connector is difficult
  • The through-connector needs to be spaced manually to get the stacking spacing right else the USB connector shorts the bottom board and the screw spacers are too high.
  • The boards are not rigidly mounted. They tend to flop around a bit, or if screws are used, are mechanically stressed. This doesn't portend a long life.
  • The boards are not individually accessible and the stack must be disassembled, leading to even more stress, to swap out or observe one of the middle cards.
  • The boards must be modified by hand, in ways the parts were not designed for, in order to attain even this level of accessibility.
  • During assembly the two LEDs and potentiometer R7 are made to face sideways to the PC card so they are accessible and visible during operation.
2015_i6_04443x300
If the boards are not assembled with the LED and R7 potentiometers modded to go out the side, you can't see the PTT and/or DCD lights, and you can't adjust the TXLEVEL without disassembling the stack (with the Raspberry PI powered down).

Method #2: Use IDCs and ribbon cable

During assembly, the 2x13 or 2x20 pass-thru header is left out and instead we substitute a 2x5 top-mounted header.
2x5 header 2x5 header
Ribbon cables made using insulation displacement connectors (IDC) and 10-conductor wire are used to connect the TNCs and Raspberry PI. 2x5-position IDC ribbon cables for a 4-port node cost about $6 to make and the only tools needed are a vice and diagonal cutters.

  • All adjustments are available, the LEDs are very visible, and the versatility of placement of the TNC is very handy.
  • The 2x5 connector is much easier to solder than the 2x13 pass-thru header.
  • Solid mounting to nylon spacers is very nice.
  • TNC-in-the-middle is removable without crashing the Raspberry Pi.
  • The TNCs may be mounted such that the relationship between a TNC and its radio is visibly obvious.
Ribbon cables appear to be ok even up to 5 feet or more but this may depend on the RF environment. I would keep them as short as convenient and consider this a source of problem if RF related issues develop.

Note that if you using the 10 pin ribbon cable and 2x5 connectors, you will have to clip pins 11 and 12 on the Raspberry PI. If you are using the TARPN TNC-PI in your setup, you'll also need to clip pin 7. Modify the Raspberry PI as shown to clear the ribbon connector and remove the chance of shorting TNC-PI receive audio to the Raspberry PI. The pins you are removing are general purpose I/O pins which aren't needed for this project.

2015_i6_05079_ribbon_cable

Don't panic about wrecking the future usability of the Raspberry PI. It is a $40 computer which gets out-dated after only a year and costs about the same as a TNC.
If you choose to use a ribbon cable as described, the TNC models can be a mix of different models.

Sold as a Kit:

It takes a little over an hour to assemble a TNC-PI for the first time. Less time with experience.

Ordering and Assembly Instructions:

I made a web page with assembly instructions. I have also included a shortcut for ordering the boards and visual assembly instructions.
TNC-PI Ordering and Assembly

IDC connectors are available from ShowMeCables for 38 cents each or from SparkFun for 50 cents a piece.

Ribbon cable is available from SparkFun in a 3 foot length for 95 cents.

If you are in the Raleigh area, I have a cable, connectors, and
crimping skillz to spare for packet radio node projects.
--KA2DEW

Connector wiring

Additional Notes:

The TNC-PI has two potentiometers, R6 and R7. R6 is an input to the A-to-D converter and can be used to set TXDELAY. R7 adjusts the transmit audio level. R6 in the stackable variants of the TNC-PI was in a location blocked by stacked boards or blocked by the ribbon cable. It was deleted in the V2.1 TARPN version.

The Coastal Chipworks assembly instructions and web page for the stackable TNC-PI versions is here: TNC-X/TNC-PI

Schematic for the 26-pin version of the TNC-PI is here: tnc_pi_26pin_schematic.pdf

Schematic for the 10-pin TARPN TNC-PI v2.3 is here: schematic.jpg

© Tadd Torborg, 2014↝2017 -- all rights reserved