A list of TNCs that are known to work with HamBSD's kiss(4) driver are maintained in the manual page. Most, if not all, TNCs that implement the KISS protocol over a serial interface should be supported. This includes those with RS-232 interfaces, USB-to-serial interfaces, or using a pseudo-terminal (pty(4)).
To configure a TNC to be used as an AX.25 network
interface on boot, create a hostname.if(5)
file. For the first interface on the system this should be named
lladdr MYCALL up !ldattach -s 1200 kiss cua00Replace MYCALL with your callsign. This also assumes the TNC's serial port (not on-air baud rate) operates at 1200 baud and is connected to the first serial port. For USB-to-serial interfaces, the first interface will be cuaU0.
A chat(8) script may be used to initialise a TNC that requires configuration before it enters KISS mode. The following example works for the Kenwood TM-D700E:
cmd:--cmd: 'kiss on' cmd: 'mon off' cmd: restart
This script can be stored as
/etc/kiss.chat and run automatically
by adding the following to the relevant hostname.if(5)
file before calling ldattach:
!stty -f /dev/cuaXX 9600 !chat -t 5 -f /etc/kiss.chat <>/dev/cuaXX >&0
(This is not wrong, but rkissd(8) is the preferred way to do this now. Need to update this answer.)
There is currently no reliable method for this, as a broken TCP connection will not be reconnected.
If the station will be attended as this is acceptable, first install
net/socat from ports
You can then use socat to bridge a TCP connection to a pty. Assuming the KISS TCP server is at 192.0.2.8 on port 8001:
socat tcp:192.0.2.8:8001 pty &
You can now proceed using the new pseudo-terminal as the serial port. You may wish to increase socat's verbosity to have it print the pty in use to avoid trial-and-error.